- 时区问题:虚拟机和物理机时间不一致导致证书不可用,镜像拉取不下来
解决方法:
在集群中每一台机器上执行同步
bash
timedatectl set-timezone Asia/Shanghai
然后查看:
bash
timedatectl
date
2.Helm 安装 kube-prometheus-stack 时下载 Chart 失败
解决方法:
下载 kube-prometheus-stack Chart(可离线下载后上传 GitHub)
bash
helm pull prometheus-community/kube-prometheus-stack --version 57.2.0
将 .tgz 文件上传到你的 k8s master 节点
bash
scp kube-prometheus-stack-57.2.0.tgz root@k8s-node1:/root/
本地安装,不再访问 GitHub
bash
helm install prometheus-stack ./kube-prometheus-stack-57.2.0.tgz \
--namespace monitoring \
--create-namespace \
--set grafana.service.type=NodePort \
--set prometheus.service.type=NodePort \
--set alertmanager.service.type=NodePort
3.Ansible:安装和使用非内置内容集合(collections)
Ansible 2.9 以后,把模块、插件、角色、Playbook 统一封装到 Collection。
如何安装
在线安装
bash
ansible-galaxy collection install ...
使用 requirements.yml 批量管理
bash
collections:
- name: ansible.posix
- name: community.general
version: "7.5.1"
bash
ansible-galaxy collection install -r requirements.yml
4.Argo CD:理解 CICD 原理与 GitOps 流程
CI/CD 原理
-
CI:持续集成(构建、测试、打包,例如 GitHub Actions / Jenkins)
-
CD:持续交付/部署(部署到环境)
传统方式 → CI 服务器推送部署
GitOps → 配置即代码,Git 仓库为单一真相源,Kubernetes 自动同步
Argo CD 是 Kubernetes 的 GitOps 持续部署(CD)系统:
-
以 Git 作为唯一配置源
-
监视 Git → 自动部署到 K8s
-
自动同步、自动回滚
-
可视化展示集群状态
Argo CD GitOps 流程理解
-
开发者提交代码 → 推送到 Git
-
Git 仓库更新 YAML/Helm 配置
-
Argo CD 发现 Git 与集群状态不一致
-
Argo CD 自动同步到集群(或手动同步)
-
Argo CD 监控应用状态并提供回滚能力
Argo CD的优势
-
Git 作为单一真相源
-
声明式、可审计(Git Log 就是变更记录)
-
自动修复偏差(Self-healing)
-
适合多环境(dev/prod 分支即环境)
Helm在云原生软件安装中的优缺点
helm是k8s的包管理器,类似 Linux 的 yum/apt,用 Charts 打包、安装、升级应用。
优点:
1.统一管理大量 YAML(模板化)
2.易安装、易升级、易回滚
3.生态成熟(大量稳定 charts)
4.支持 values.yaml 参数化
helm缺点:
1.增加抽象层,调试困难
2.增加抽象层,调试困难
- 大型 chart 比较复杂(如 Prometheus Stack)