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

一. 简介

从文件创建

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:

相关推荐
xgysimida9 分钟前
一文搞懂supervisord是什么?
运维·运维开发
做运维的阿瑞11 分钟前
从传统Linux部署到容器化:实践对比与工程化指南
linux·运维·服务器
NiKo_W23 分钟前
Linux 进程通信——基于建造者模式的信号量
linux·设计模式·建造者模式·system v
阿巴~阿巴~26 分钟前
Centos 7/8 安装 Redis
linux·服务器·数据库·redis·centos
怀旧,31 分钟前
【Linux系统编程】2. Linux基本指令(上)
linux·运维·服务器
骥龙40 分钟前
1.2、网络安全攻防实验室搭建指南:VMware + Kali Linux + Win10 全流程
linux·安全·web安全
迎風吹頭髮1 小时前
Linux内核架构浅谈9-Linux内核的开源生态:开发者协作与版本迭代机制
linux·运维·架构
Wang's Blog1 小时前
Linux小课堂: 文件系统结构与核心命令解析
linux·运维·服务器
2301_787328491 小时前
24.集群及高可用-Keepalived
linux·运维·云原生
难以触及的高度1 小时前
Linux-CentOS 7 上安装 MySQL 8.0.43(保姆级教程)
linux·mysql·centos