使用base64生成kubernetes使用的secret yaml
发表于|更新于|容器
先申请证书, 证书申请下来后会有 证书 (一般都是 pem 后缀或者 crt 后缀) 和 私钥 (一般后缀是 key)
使用 base64 加工一下:
1 | base64 ./i.com_bundle.crt -w 0 |
-w 0 的意思是不换行, 默认是 76 个字符换行.
然后填到 Kubernetes 的 yaml 文件里面即可.
1 | apiVersion: v1 |
文章作者: 张理坤
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来源 杂烩饭!
相关推荐
2025-11-01
Kubernetes之master高可用方案
之前一直用使用的负载方案是搭建一台负载均衡器,可以是 haproxy 或 nginx 或 lvs,来将多个 master 节点的 6443 端口做个负载均衡,但是考虑到负载均衡也需要高可用,所以会引入类似 keepalived 的方案来解决问题。偶然看到了 kubeasz 这个开源项目,宣称解决了 master 高可用问题,部署了一遍发现并没有额外搭建负载均衡器,研究了一下,发现了另一种思路。 使用额外的负载均衡来做高可用这种就是比较容易想到的一种方案,比如 3 个 master 节点,前面有一台负载均衡(nginx、haproxy、lvs)等,但是负载均衡本身就是一个单点故障,所以一般来说还需要另一台负载均衡,通过 keepalived 来实现 VIP 的切换使用Keepalived来实现Nginx高可用 使用Nginx做负载均衡使用HAproxy做负载均衡使用LVS做负载均衡vim nginx.conf 在文件最后添加 然后 vim /etc/nginx/stream.conf 因为我们用 nginx 四层负载 ingress,需要监听 80 端口,与 nginx ...
2025-02-14
在Kubernetes中部署nacos 2.1.0
本次在 Kubernetes 上部署 nacos 2.1.0 版本, 部署 3 节点集群,不做数据持久化(nacos 的配置管理是存储 MySQL 数据库的,服务发现是需要本地存储的)新版本 nacos 部署参考: 在Kubernetes中部署nacos 2.3.2 MySQL 数据库准备创建数据库,配置好账号权限,执行如下 SQL 建表: 如果是迁移, 可以直接将 nacos 数据库整体迁移,免去建表步骤。 创建 Podnamespace 按照需求来修改 创建 Service 创建 ingress 规则 ingress 规则作用是让网页控制台域名转发到 8848 端口,如果不需要域名,可以在 service 上开 nodeport,用 ip+ 端口来访问。 检查部署情况部署完成后, 进入 nacos 的 pod, 3 节点的 nacos,这里应该是 3 行配置。 检查控制台 状态为 UP 集群正常。 检查集群状态日志 观察有没有 ERROR 类似的日志。 常用 API 接口获取配置文件 tenant 命名空间dataID 配置文件名group 分组,默认为 ...
2026-09-22
Kubernetes使用ingress反向代理外部IP
我们平常使用 k8s 的 service 都是自动发现增加 endpoint 的,但是有的时候集群外的服务我们又想用 k8s 的 ingress 来统一做入口,就会涉及到自定义 endpoint 创建 service 创建 endpoint 创建 Ingress
2025-02-14
在Kubernetes中部署nacos 2.3.2
其他版本参考文档 在Kubernetes中部署nacos 2.1.0 nacos 官方文档写的太敷衍了,很多东西都需要自己去找,比如容器运行的时候,必须的环境变量都没有写全,遇到的一些坑整理了出来。 新版的变化鉴权逻辑优化官方说明:https://nacos.io/zh-cn/docs/v2/guide/user/auth.html 2.2.2 版本之前的 Nacos 默认控制台,无论服务端是否开启鉴权,都会存在一个登录页;这导致很多用户被误导认为 Nacos 默认是存在鉴权的。在社区安全工程师的建议下,Nacos 自 2.2.2 版本开始,在未开启鉴权时,默认控制台将不需要登录即可访问,同时在控制台中给予提示,提醒用户当前集群未开启鉴权。 部分环境变量默认值删除nacos 新版(2.2.1 之后删除了默认值) 可以查看 /home/nacos/conf/application.properties 这个文件,如果有环境变量名不确认也可以到这个文件里查询: 比如: server.port=${NACOS_APPLICATION_PORT:8848} NACOS_APPLICA...
2026-09-22
Kubernetes同一个namespace共用镜像secret
配置一个全局的镜像拉取密钥, 后续拉镜像就不用每个 deployment 单独配置了。 在每个 namespace 下都有一个默认的 service account, 假设命名空间是 test 使用 kubectl get sa -n test 查看 查看 serviceaccount 信息 Image pull secrets 是此 namespace 下拉取镜像的秘钥 1.创建 secret 2.配置进 service account 至此在 test 下拉取镜像无需配置镜像拉取秘钥了
2026-09-22
Kubernetes 绑定Hosts的正确姿势
有的时候我们需要在容器里面绑定 hosts,比如我们用 logstash 需要消费 kafka 消息,但是 kafka 监听的地址是 hostname,这个时候就需要绑定 hosts(规范一点是做解析)在容器里面绑定 hosts 常见的方法一种是挂载主机的 hosts 文件,一种是修改容器的启动 CMD,每次启动修改 hosts,这两种方法都有个缺点,就是不受 kubelet 管理了,默认的 hosts 内容也会被覆盖掉在 k8s 环境下有更好的解决方案:那就是让 k8s 自己来管理 使用 hostAliases 来绑定 hosts 进入容器查看 hosts 文件 这个 hosts 包括两个部分,一部分是容器自带的 hosts,另一部分是我们自己添加的 在 docker 下绑定 hosts运行时候修改docker 可以通过 –add-host 参数来添加 hosts 信息到容器的/etc/hosts 文件中 构建时修改Dockerfile 中,可以在 CMD 命令下进行修改,在 RUN 里面修改会提示文件只读无法修改。 在 docker-c...
公告
此博客为我记录运维工作总结所用,供网友阅读参考,如有侵权,请通知我,我会核实后进行处理。
欢迎加博主微信,进微信运维技术交流群: