1.1. 15.2 使用Secret管理敏感数据

在应用启动过程中经常会有一些敏感信息需要存储,例如用户名和密码等,如果直接明文的方式保存会有安全风险。在Kubernetes中Secret这个资源对象类型用来保存敏感信息,例如密码、密钥、访问令牌、SSH Key等你认为需要保密的敏感信息。相对于将这些内容保存到容器镜像或者Pod的定义文件中,更加的灵活和安全。

1.1.1. 配置Pod使用Harbor镜像

1.docker login得到 docker密码文件

[root@linux-node1 ~]# docker login 192.168.56.11

2.对密码文件进行加密

[root@linux-node1 ~]# cat /root/.docker/config.json |base64

3.创建harbor使用的Secret YAML文件:

[root@linux-node1 ~]# vim harbor-secret.yaml 
apiVersion: v1
kind: Secret
metadata:
  name: harbor-secret
  namespace: default
data:
  .dockerconfigjson: 'ewoJImF1dGhzIjogewoJCSJyZWcuZ3JlYXRvcHMubmV0IjogewoJCQkiYXV0aCI6ICJZV1J0YVc0Nk1YRmhlbmh6ZHpJPSIKCQl9Cgl9Cn0='
type: kubernetes.io/dockerconfigjson

4.创建Secret

[root@jenkins k8s-deploy]# kubectl create -f reg-harbor.yaml 
secret "reg-harbor" created

5.创建pod并挂载资源

apiVersion: v1
kind: Pod
metadata:
  name: sectest
spec:
  containers:
  - name: sectest
    image: 123.207.154.16/base/redis:alpine
    ports:
    - containerPort: 6379
  imagePullSecrets:
    - name: harbor-secret
Copyright © 赵班长@新运维社区 2019 all right reserved,powered by Gitbook该文件修订时间: 2019-11-08 22:34:16

results matching ""

    No results matching ""