对齐文件规范
This commit is contained in:
@@ -2,6 +2,14 @@
|
||||
|
||||
> **定位**:02 系列尾部,整合 02-01~02-04 的综合一键部署。4 种组合(控制节点/工作节点 × Ingress/IngressRoute)均有具体 Deployment + Service + 路由,节点 IP 访问(如 `http://入口IP/demo-m1/`)。
|
||||
|
||||
|
||||
## TL;DR
|
||||
|
||||
- **自动化验收**:`./scripts/verify.sh run 02-05`
|
||||
- **关键前置**:按本文「前置条件」准备环境变量/Secret/入口 IP
|
||||
- **成功判据**:达到本文「预期」且 playbook 断言通过
|
||||
- **排障**:见本文「排障」
|
||||
|
||||
## 前置条件
|
||||
|
||||
- 已完成 `01-02-k3s-工作节点.md`(Traefik 与 LB 可用)
|
||||
@@ -23,7 +31,7 @@
|
||||
|
||||
## 完整配置(与 Ansible 共用)
|
||||
|
||||
配置位于 `ansible/files/02-05-nginx-matrix/`(4 个文件对应 M1~M4),文档与 Ansible 共用此目录:
|
||||
配置位于 `ansible/files/02-05/`(4 个文件对应 M1~M4),文档与 Ansible 共用此目录:
|
||||
|
||||
| 文件 | 场景 | 路径 | 节点 |
|
||||
|------|------|------|------|
|
||||
@@ -37,7 +45,7 @@
|
||||
## 部署
|
||||
|
||||
```bash
|
||||
kubectl apply -f ansible/files/02-05-nginx-matrix/ -R
|
||||
kubectl apply -f ansible/files/02-05/ -R
|
||||
kubectl get pod,svc,ing,ingressroute -n default -o wide
|
||||
```
|
||||
|
||||
@@ -110,7 +118,7 @@ Manifest 里四份写法一致,若只有 M1 仍显示默认页,多半是集
|
||||
|
||||
```bash
|
||||
# 在仓库根目录执行时:
|
||||
kubectl apply -f ansible/files/02-05-nginx-matrix/ -R
|
||||
kubectl apply -f ansible/files/02-05/ -R
|
||||
|
||||
# 若当前在 ansible/ 目录下,改用:
|
||||
kubectl apply -f files/02-05-nginx-matrix/ -R
|
||||
@@ -128,7 +136,7 @@ kubectl delete deployment nginx-m1 -n default
|
||||
kubectl apply -f files/02-05-nginx-matrix/01-control-ingress.yaml
|
||||
|
||||
# 若在仓库根目录:
|
||||
# kubectl apply -f ansible/files/02-05-nginx-matrix/01-control-ingress.yaml
|
||||
# kubectl apply -f ansible/files/02-05/01-control-ingress.yaml
|
||||
|
||||
# 3. 等 Pod Running 后验证
|
||||
kubectl get pod -n default -l app=nginx-m1
|
||||
@@ -142,19 +150,19 @@ kubectl exec -n default deployment/nginx-m1 -- cat /etc/nginx/conf.d/default.con
|
||||
|
||||
可使用 Ansible playbook 自动完成复制 manifests、apply、等待 Pod 就绪及 curl 验证:
|
||||
|
||||
- **Playbook**:`ansible/playbooks/nginx-matrix-deploy.yml`
|
||||
- **Manifests 位置**:`ansible/files/02-05-nginx-matrix/`(M1 control-plane / M2 M4 节点名 ylc61、ylc64,M3 worker;按实际修改 M2/M4 节点名)
|
||||
- **Playbook**:`ansible/playbooks/verify/02-05.yml`
|
||||
- **Manifests 位置**:`ansible/files/02-05/`(M1 control-plane / M2 M4 节点名 ylc61、ylc64,M3 worker;按实际修改 M2/M4 节点名)
|
||||
- **执行(在 ansible/ 目录下)**:
|
||||
|
||||
```bash
|
||||
cd ansible
|
||||
ansible-playbook -i inventory.ini playbooks/nginx-matrix-deploy.yml
|
||||
ansible-playbook -i inventory.ini playbooks/verify/02-05.yml
|
||||
```
|
||||
|
||||
若 manifests 目录未找到,可改为在仓库根目录执行:
|
||||
|
||||
```bash
|
||||
ansible-playbook -i ansible/inventory.ini ansible/playbooks/nginx-matrix-deploy.yml
|
||||
ansible-playbook -i ansible/inventory.ini ansible/playbooks/verify/02-05.yml
|
||||
```
|
||||
|
||||
Playbook 会:拷贝 manifests 到控制节点 → **先删除全部 nginx 矩阵 Deployment**(nginx-m1~m4,若存在)→ `kubectl apply` → `rollout restart` M1~M4 → 等待 Pod 就绪 → 输出 16 个目标(4 节点 × 4 路径)的 curl 矩阵。先删再 apply 可避免旧 ReplicaSet 导致任一 Mx 仍显示默认页。
|
||||
@@ -164,14 +172,14 @@ Playbook 会:拷贝 manifests 到控制节点 → **先删除全部 nginx 矩
|
||||
**手动 kubectl apply 的**:用同一目录删除
|
||||
|
||||
```bash
|
||||
kubectl delete -f ansible/files/02-05-nginx-matrix/ -R
|
||||
kubectl delete -f ansible/files/02-05/ -R
|
||||
```
|
||||
|
||||
**Ansible playbook 部署的**:在仓库根或 ansible 同级的机器上,用 manifests 删除(需配置 KUBECONFIG)
|
||||
|
||||
```bash
|
||||
export KUBECONFIG=/etc/rancher/k3s/k3s.yaml # 或从控制节点拷贝 kubeconfig
|
||||
kubectl delete -f ansible/files/02-05-nginx-matrix/ -R
|
||||
kubectl delete -f ansible/files/02-05/ -R
|
||||
```
|
||||
|
||||
若控制节点上 `/tmp/nginx-matrix/` 仍存在,也可在控制节点执行:
|
||||
@@ -200,3 +208,9 @@ kubectl delete configmap -n default nginx-m1-html nginx-m2-html nginx-m3-html ng
|
||||
- `02-01`~`02-04`:分篇说明(路径 /demo-m1~m4、nodeSelector 与本文一致)
|
||||
- `03-02-k3s-traefik-acme.md`
|
||||
- `06-01-k3s-networkpolicy-故障排查.md`
|
||||
|
||||
## 排障
|
||||
|
||||
- **先看 playbook 输出**:失败时先定位是 deploy/wait/http_check 哪一步。
|
||||
- **集群侧总览**:`kubectl get nodes -o wide`、`kubectl -n kube-system get pods -o wide`。
|
||||
- **事件与日志**:`kubectl -n <ns> describe ...`、`kubectl -n <ns> logs ... --tail=200`。
|
||||
|
||||
Reference in New Issue
Block a user