秘密のオブジェクトKubernetesの使用

秘密は、アクセスに必要なデータを暗号化することができ、情報の秘密へのアクセスを経由して、その後、ボリュームポッドをEtcdする店は、データ変更、ポッドの秘密は、特に、ファイルが変更されますマウントするたびに保存しますアカウントのパスワードを格納するために使用されます

まず、オブジェクトの秘密を作成します

1.ファイルを作成します。

2つのファイルとされているusername.txt PASSWORD.TXT

echo "chenqionghe" > ./username.txt
echo "111111" > ./password.txt

作ります

kubectl create secret generic user --from-file=./username.txt
kubectl create secret generic pass --from-file=./password.txt

2. YAMLを作成します。

注:値は、base64トランスコーディングでなければなりません

apiVersion: v1
kind: Secret
metadata:
  name: mysecret
type: Opaque
data:
  user:  Y2hlbnFpb25naGUK
  pass: MTExMTExCg==

作ります

kubectl apply -f mysecret.yaml

第二に、秘密のオブジェクトを取得します

root@VM-0-8-ubuntu:/home/ubuntu/project-volume# kubectl get secrets
NAME TYPE DATA AGE
default-token-gqfrx kubernetes.io/service-account-token 3 20d
mysecret Opaque 2 1m
pass Opaque 1 6m
user Opaque 1 6m

秘密のポッドの例を使用することにより、サード

投影されたボリュームはここで、種類を指定された基準は秘密であり、ユーザを渡し、マウントパス/投影ボリューム

apiVersion: v1
kind: Pod
metadata:
  name: test-projected-volume 
spec:
  containers:
  - name: test-secret-volume
    image: busybox
    args:
    - sleep
    - "86400"
    volumeMounts:
    - name: mysql-cred
      mountPath: "/projected-volume"
      readOnly: true
  volumes:
  - name: mysql-cred
    projected:
      sources:
      - secret:
          name: user
      - secret:
          name: pass

実行を作成します

kubectl apply -f test-projected-volume.yaml

ビューポッドが出て作成されています

root@VM-0-8-ubuntu:/home/ubuntu/project-volume# kubectl get pod
NAME READY STATUS RESTARTS AGE
test-projected-volume 1/1 Running 0 5m

再入力するポッド内のビューを、ファイルがすでに存在している見て、同じコンテンツと設定

root@VM-0-8-ubuntu:/home/ubuntu/project-volume# kubectl exec -it test-projected-volume -- /bin/sh
/ # ls /projected-volume/
password.txt username.txt
/ # cat /projected-volume/username.txt
chenqionghe

その後、我々は秘密のファイル名を修正し、(対応するベースがY3FoCg ==としてエンコード)CQHするように変更chenqionghe

kubectl edit secret user

以下のように変更があります

apiVersion: v1
data:
  username.txt: Y3FoCg==
kind: Secret
metadata:
  creationTimestamp: 2019-09-27T09:14:00Z
  name: user
  namespace: default
  resourceVersion: "2108808"
  selfLink: /api/v1/namespaces/default/secrets/user
  uid: 24566f8f-e107-11e9-8c22-f242c645cfec
type: Opaque

ポッドは、ファイルに再び取り付けられたビューが変更されました

root@VM-0-8-ubuntu:/home/ubuntu# kubectl exec -it test-projected-volume -- cat /projected-volume/username.txt
cqh

おすすめ

転載: www.cnblogs.com/chenqionghe/p/11601049.html