k8s的配置管理

一、配置管理分为两种:

  1. 加密配置:用来保存密码和token密钥对以及其它敏感的k8s资源。

2.应用配置:我们需要定制化的给应用进行配置,我们需要把定制好的配置文件同步到pod当中的容器。

二、加密配置

1.secret三种类型:1和2分为一类

查看加密的配置

1》service-account-token:k8s集群自建的,用来访问APIserver的secret,pod默认使用这种secret和APIserver进行通信,默认自动挂载到pod/run/secrets/kubenets.io/serviceaccount这个目录下

2》Opaque:用户自定义密码、密钥等等,默认类型就是opaque,语法为generic

3》kubenets.io/dockerconfigjson:配置docker私有仓库的验证信息

4》TLS:用来存储TLS或者SSL证书的私钥

三.Opaque实验

1.创建secret,先创建目录

指定文件创建:

创建secret类型为Opaque(第一种方式),生产中都用命令行指定文件的方式创建很少使用yml文件的方式实现

2.创建secret类型为Opaque(第二种方式):使用yaml文件实现

获取加密的方式

  1. 如何将secret挂载到pod当中

将secret2里面的加密文件传到pod/etc/secrets目录下

4.将secret作为环境变量传到pod当中:env给容器定义环境变量的语段,也就是给pod当中的容器定义环境变量

定义两个环境变量,名称分别叫user1、password1,user1及password1的值由secret2中的username和password文件给的,所以user=username,password1=password

查看的两种方式

5..kubenets.io/dockerconfigjson:配置docker私有仓库的验证信息实验

首先创建私有仓库加密的secret

指定私有仓库的IP 三台同步vim /lib/systemd/system/docker.service

vim secret.yml

imagePullsecrets:指定docker私有仓库的加密的secret配置

四、configmap:语法和secret一样,但是configmap保存的不是加密信息,主要就是用于保存应用的配置信息;configmap的挂载目录,权限只是只读权限。

1.创建方式:命令行及yml文件两种

命令行方式:指定文件即可

yml文件方式创建:当出现数字时要引号引起来

vim cm.yml

查看当前所有的configmap配置

  1. 在pod类里面用configmap做pod的环境变量

vim con1-test.yml

3. 通过configmap的方式将nginx.conf内容传到应用容器当中

1》首先创建nginx.conf

2》创建configmap,名称叫nginx-con --from-file指定文件就是/opt/configmap/nginx.conf

3》vim con1.yaml

node1节点查看

进入pod

configmap的热更新

更改端口及路径

再次进入pod查看

进行滚动更新

查看node2节点并且进入html11内往index.html内插入文件666

在主节点访问pod查看插入内容

4》configmap的挂载点目录,权限只是只读模式

相关推荐
虎头金猫5 天前
4K 视频总卡在公网带宽?用 N1 + OpenList 把网盘播放链路重新理顺
运维·服务器·网络·python·容器·beautifulsoup·pandas
分布式存储与RustFS5 天前
MinIO 官方 Docker 镜像被移除:依赖它的项目该怎么办
docker·云原生·devops·对象存储·minio·分布式存储
codeejun5 天前
每日一Go·MySQL-5、锁机制全解析
云原生·golang
赵文宇(温玉)5 天前
CoreDNS的hosts插件的缺行配置导致k8s集群异常
容器·kubernetes·rancher
guo_wen_qiang5 天前
上传本地镜像到harbor中
docker·容器·持续部署
张洛闻Eren5 天前
k8s云原生【第十课】:水平 Pod 自动扩缩容
运维·数据库·云原生·kubernetes·github
忆~遂愿5 天前
本地片库怎么在外面打开?Plex + cpolar 搭一套可远程访问的私人影音库
docker·容器
Thneonl5 天前
你的 Pod 为什么 Pending:调度器两阶段
后端·kubernetes
不吃香菜kkk、5 天前
CI/CD(GitOps)学习与部署手册
运维·云原生·容器·kubernetes·云计算·jenkins·argocd
ChaITSimpleLove5 天前
云原生性能对决:JDK21虚拟线程+GraalVM vs .NET10/11 技术栈深度对比
微服务·云原生·serverless·graalvm native·native aot·runtime async·.net11/java21