Kubernetes (十一) 存储——Secret配置管理

发布时间:2024年01月13日

一.? 简介? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

? ? ? ? ? ? ? ? ??从文件创建? ? ? ? ? ??

?echo?-n?'admin'?>?./username.txt

?echo?-n?'westos'?>?./password.txt

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

? ?? ? ?编写yaml文件创建? ? ? ? ? ??

? ? ? ????1.?创建编辑文件? ? ? ?? ? ? ? ? ? ? ? ? vim mysecret.yaml

?apiVersion: v1
kind: Secret
metadata:
? name: mysecret
type: Opaque
data:
? username: YWRtaW4= ? #这两必须是base64编码后的值
? password: d2VzdG9z? ? ? ? ? ?

? ? ? ? ?? 2.? 将secret挂载到Volume中? ? ? ?vim?pod1.yaml

apiVersion: v1
kind: Pod
metadata:
? name: mysecret? ? ? ? ? ??
spec:
? containers:
? - name: nginx
? ? image: nginx
? ? volumeMounts:
? ? - name: secrets
? ? ? mountPath: "/secret"? ? #创建的目录挂载点
? ? ? readOnly: true? ? ? ? ? ? ? #只读
? volumes:
? - name: secrets
? ? secret:
? ? ? secretName: mysecret

? ? 删除pod:?kubectl delete ?-f pod1.yaml

? ? ? ?向指定路径映射secret密钥? ? ? ??

? ? ? ? ? ? ? ? ? ? ? ? ?1.? ?创建编辑文件? ? ? ? ? vim pod2.yaml? ??

? ? ? ? ? ? ? ? ? ? ??? ? ? ? ?
apiVersion: v1
kind: Pod
metadata:
? name: mysecret
spec:
? containers:
? - name: nginx
? ? image: nginx
? ? volumeMounts:
? ? - name: secrets ? ? #定义的挂载名
? ? ? mountPath: "/secret"
? ? ? readOnly: true
? volumes:
? - name: secrets ? ? ? ?#卷挂载
? ? secret: ? ? ? ? ? ? ? ? #哪个secret名称
? ? ? secretName: mysecret ?#这个
? ? ? items: ? ? ? ? ? ? ? ? #因为secret有多组key
? ? ? - key: username ? ? ? ?#指定的这个key
? ? ? ? path: my-group/my-username #这里是相对路径需要把base路径(/secret)加上就是绝对路径

? ? 删除pod: kubectl?delete??-f?pod2.yaml? ? ? ? ?

? ? ?存储docker registry的认证信息? ??

? ? ? ? ? ? ? ? ??? 1.? ? 在私有仓库创建新项目(不公开)?? ? ? ?

? ? ? ? ? ?? ? ? ??? ? 2.? 创建编辑文件? ? ? ? ? ? ? ?vim?pod3.yaml

apiVersion: v1
kind: Pod
metadata:
? name: mypod
spec:
? containers:
? ? - name: game2048
? ? ? image: reg.westos.org/westos/game2048
? #imagePullSecrets:? ? ? ? ? ? ? ? ??#拉取的密钥
? #? ? - name: myregistrykey? ? ?? #这里先注释掉

? ? ? ? ? ? ?这里看到创建失败

? ?? ? ? ? ?? ? ? ?3.? 解决方案 创建secret密钥

kubectl?create?secret?docker-registry?myregistrykey?--docker-server=reg.westos.org?--docker-username=admin?--docker-password=westos?--docker-email=yakexi007@westos.org

? ? ? ? ? ? ? ? ? 4.? 因为不是Deploment控制器创建的 得删除刚才的pod

? ? ? ? ? ? ? ? ? ? ? ? kubectl delete pod --all

? ? ? ? ? ? ? ????5. 修改配置文件 去掉刚才得注释选项即可? ??vim?pod3.yaml

apiVersion: v1
kind: Pod
metadata:
? name: mypod
spec:
? containers:
? ? - name: game2048
? ? ? image: reg.westos.org/westos/game2048
? imagePullSecrets:
? ? - name: myregistrykey


? ? ? ? ?

? ? ? ? ? ? ? ?

? ? ? ? ? ??

文章来源:https://blog.csdn.net/BJZX_OL/article/details/135573191
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。