文章目录
使用阿里云主机ECS,
四台主机信息如下:
server1 — 私网IP:10.0.0.2 ----公网IP: 47.108.54.185 ---- 搭建docker仓库harbor—nfs服务器
server2 — 私网IP:10.0.0.3 ----公网IP: 47.108.144.231 ---- k8s集群主节点
server3 — 私网IP:10.0.0.4 ----公网IP: 47.108.115.206 ---- k8s集群节点
server4 — 私网IP:10.0.0.5 ----公网IP: 47.108.28.42 ---- k8s集群节点
configmap
configmap简介
- ConfigMap用于保存配置数据,以键值形式储存
- ConfigMap资源提供向Pod注入配置数据的方法,若Pod内有服务,需要进行刷新
- 旨在让镜像和配置文件解藕,以便实现镜像的可移植性和可重复性
- 典型的使用场景:
– 填充环境变量的值
– 设置容器内的命令行参数
– 填充卷的配置文件
configmap的创建
使用字面值创建
使用文件创建
使用目录创建
使用yaml文件创建
configmap如何使用
通过环境变量的方式直接传递给pod
通过在pod的命令行下运行的方式
使用volume的方式挂载到pod内
configmap热更新
根据文章
https://blog.csdn.net/sqhren626232/article/details/101013390
,做出以下修改
secret
secret简介
-
Secret对象类型用来保存敏感信息,例如密码,Oauth令牌和ssh key
-
敏感信息放在Secret中比放在Pod中的定义或容器镜像中来说更加安全灵活
-
Pod可以用两种方式使用Secret:
– 作为volume中的文件挂载到pod中的一个或者多个容器里
– 当kubelet为pod拉取镜像时使用 -
Secret的类型:
Secret Account:Kubernets自动创建包含访问API凭据的Secret,并自动修改Pod以使用此类型的Secret
Opaque:使用base64编码储存信息,可以通过base64 --decode解码获得原始数据,因此安全性弱
kubernetrs.io/dockerconfigjson:用于储存docker registry的认证信息
secret的创建
命令行创建secret
使用yaml文件创建secret
secret的应用
将secret挂载到volume中
向指定路径映射secret密钥
kubernetes.io/dockerconfigjson用于存储docker registry的认证信息
先建立harbor项目
上传镜像
设置为私有仓库