Files
Deploy-Laboratory/ansible/env/.env.verify.example
2026-03-29 09:08:01 +08:00

129 lines
7.1 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# 验证矩阵 / 编排脚本用环境变量模板example
# ---------------------------------------------------------------------------
# 约定本文件只写“值”KEY=VALUE不写默认展开/命令替换等执行逻辑。
#
# 使用(必须在仓库根目录执行):
# cp ansible/env/.env.verify.example ansible/env/.env.verify
# set -a && source ansible/env/.env.verify && set +a
# ---------------------------------------------------------------------------
# =========================
# 1) 你只需要改这一段(值)
# =========================
# --- SSH ---
# K3S_SSH_KEY_DIR存放 ssh key 的目录
K3S_SSH_KEY_DIR=$HOME/.ssh
# K3S_SSH_KEY_PREFIXkey 前缀(脚本会按此前缀拼接具体节点 key
K3S_SSH_KEY_PREFIX=id_ed25519_k3s_
# SSH_USERssh 登录用户名
SSH_USER=jack
# TIMEOUT_SEC常用探测/连接超时时间(秒)
TIMEOUT_SEC=5
# --- Ansible控制端---
# ANSIBLE_INVENTORYinventory 路径(相对仓库根);一般无需改
ANSIBLE_INVENTORY=ansible/inventory.ini
# ANSIBLE_LOCAL_TMP可选控制端无法写 ~/.ansible 时设为仓库内路径,如 $PWD/.ansible-tmp见 docs/00-03
# --- 01-01 / 01-02集群、kubectl 与 data-dirk3s共用---
# docs/01-01控制面与 docs/01-02工作节点加入共用此二项K3S_SERVER_HOSTNAME = 控制面短主机名inventory 中 k3s_server01-02 手工 K3S_URL 指向该节点 6443K3S_DATA_DIR = 各节点一致的 k3s --data-dir与 group_vars k3s_data_dir 一致。verify/01-01 以节点 kubeconfig 为准playbook 不强制从 env 读此二项。
K3S_SERVER_HOSTNAME=ylc61
K3S_DATA_DIR=/storage
# --- 01-03 / 01-04 armv7docs/01-03、01-04docs/00-03 §10.E---
# 可选SKIP_ARMV7默认 1 时 verify/01-03、01-04 仅矩阵基线0 时须配 ARMV7_SSH 等并由 playbook lookup
SKIP_ARMV7=1
# 01-03SKIP_ARMV7=0 时需 ARMV7_SSHverify 调用 ansible/tools/armv7-docker-verify-install.sh先 docker info失败再 get.docker.com
# 01-04SKIP_ARMV7=0 时需 ARMV7_NFS_SSH或同机ARMV7_NFS_EXPORT_PATH、ARMV7_NFS_CLIENT_SUBNET 见 verify/01-04.yml
ARMV7_SSH=YOUR_ARMV7_SSH
ARMV7_NFS_SSH=YOUR_ARMV7_NFS_SSH
ARMV7_NFS_EXPORT_PATH=/sdcard
ARMV7_NFS_CLIENT_SUBNET=192.168.2.0/24
# --- 01-05docs/01-05节点初始化与 k3s 安装)---
# K3S_PREPARE_STORAGEdeploy-lab.sh k3s 是否在首段跑「准备数据盘」ansible/bin/deploy-lab.sh 读此变量)
# K3S_DO_PREPARE_STORAGE / K3S_DO_INSTALLverify/01-05.yml 从环境读取(与 ansible-playbook -e 等价)。真正分区还须 group_vars k3s_prepare_storage: true 且 k3s_data_disk_device=/dev/xxx
K3S_PREPARE_STORAGE=false
K3S_DO_PREPARE_STORAGE=false
K3S_DO_INSTALL=false
# k3s 安装脚本镜像/超时:在 ansible/group_vars/all.yml 设 k3s_install_mirror: cn、k3s_install_curl_max_time 等(非本 env 变量);或 ansible-playbook … -e k3s_install_mirror=cn
# --- deploy-lab.sh铺栈docs/00-03 / project-context---
# DEPLOY_VERIFY_TEARDOWNdeploy-lab 传入 playbook 的 VERIFY_TEARDOWN默认 0保留已部署资源
DEPLOY_VERIFY_TEARDOWN=0
# --- 01-06 集群外探测 SSHdocs/01-06、00-03---
# WORKSTATION_SSH在 **Linux 工作机**上执行集群外 curl 等的一行 ssh示例 ylc65见 docs/00-02可改为 user@<你的工作机主机名>。含空格必须加引号。(旧名 ONECLOUD_SSH 已弃用)
WORKSTATION_SSH="ssh -o BatchMode=yes jack@ylc65"
# --- 验证入口与 preflight02-xx / 04-xx 共用)---
# nginx_entry_base、nodejs_entry_baseHTTP 验证入口基址(按 ingress/负载均衡填写。nginx 矩阵02-0102-04为集群内临时 Pod 直连 nginx-mX.default.svc。
# VERIFY_TEARDOWNverify.sh 默认 1清理现场调试可设 0保留现场可能污染后续用例
VERIFY_TEARDOWN=1
# VERIFY_PREFLIGHT_CLUSTER默认 0离线/轻量 preflight设 1 时 preflight 在控制节点执行 kubectl get nodes见 docs/00-03
VERIFY_PREFLIGHT_CLUSTER=0
nginx_entry_base=http://192.168.2.61
nodejs_entry_base=http://192.168.2.61
# --- 03-08 k3s HA可选·预留---
# 可选SKIP_HA当前 verify playbook 未 lookup仅与 docs/03-08 及 HA 类备忘对齐
SKIP_HA=1
# --- 03-09 GitOps可选·预留---
# 可选SKIP_GITOPS当前 verify playbook 未 lookup仅与 docs/03-09 备忘对齐
SKIP_GITOPS=1
# --- CloudflareCF API / Zone---
# 03-02 / 03-03ACME DNS-01 需 CF_API_TOKENZONE_* 为手工/Token 校验辅助preflight 不强门禁verify.sh 注释)
# CF_API_TOKENCloudflare API Token敏感信息
CF_API_TOKEN=YOUR_CF_API_TOKEN
# ZONE_NAME / ZONE_IDCloudflare Zone 信息可选预留playbook 未 lookup
ZONE_NAME=jackadam.top
ZONE_ID=YOUR_ZONE_ID
# --- 03-02 / 03-03 ACME 与 Traefik ---
# 03-02 / 03-03ACME_EMAIL 为 Let's Encrypt 注册邮箱verify 必填。ACME_CA_STAGING=1 使用 staging CA。
# TRAEFIK_NAMESPACE预留playbook 中 Traefik 固定 kube-system未读此 env
ACME_EMAIL=you@example.com
ACME_CA_STAGING=0
TRAEFIK_NAMESPACE=kube-system
# TRAEFIK_DASHBOARD_VERIFY_URL03-03 验收 Dashboard HTTP 探针完整 URL可选未设则按 k3s_server_ip/dashboard/
# TRAEFIK_DASHBOARD_VERIFY_URL=http://192.168.2.61/dashboard/
# --- TLS 域名(预留)---
# VERIFY_TLS_HOSTS手工 openssl/curl 对照用03-02 TLS 矩阵域名为清单内嵌playbook 未读此变量
VERIFY_TLS_HOSTS=test01.jackadam.top,test02.jackadam.top,test03.jackadam.top,test04.jackadam.top
# --- 03-02nginx 矩阵 TLS 可选)---
# 03-02NGINX_MATRIX_TLS_ENABLE=true 时部署 TLS+HTTP nginx 矩阵(改 default与 deploy-lab.sh nginx-matrix-tls 一致)。
NGINX_MATRIX_TLS_ENABLE=false
# --- 03-04 Cloudflare Tunneldocs/03-04---
# HTTPS 探针需 CF_TUNNEL_TEST_URL 或 CF_TUNNEL_TEST_HOST二选一皆缺则 [GATE]。TUNNEL_TOKEN 与集群 kube-system Secret cloudflared-credentials 二选一。
TUNNEL_TOKEN=YOUR_TUNNEL_TOKEN
# CF_TUNNEL_TEST_URL=https://your-tunnel-host.example.com/
CF_TUNNEL_TEST_HOST=traefik.jackadam.top
# CF_TUNNEL_CURL_INSECURE=1 — 03-04 探针 curl 使用 -k排障用
# --- 03-05 ---
# 03-05LOCAL_PATH_APPLY_LAB_CONFIG=true 时注入 local-path lab ConfigMap 并 rollout restart provisioner。
LOCAL_PATH_APPLY_LAB_CONFIG=false
# --- NFSdocs/03-06---
# verify/03-06.ymlNFS_SERVER_IP + NFS_EXPORT_PATH 均非空才跑 PV/PVC + Job任一为空则 [GATE]。NFS_SERVER_HOST 仅与文档/运维备注对齐playbook 不读取。
NFS_SERVER_HOST=onecloud
NFS_SERVER_IP=onecloud
NFS_EXPORT_PATH=/export/k3s
# --- Longhorn预留---
# LONGHORN_NAMESPACE与 docs/03-07 叙述对齐;命名空间以 playbook/group_vars 为准,当前 verify 未 lookup 此键
LONGHORN_NAMESPACE=longhorn-system
# --- 04-07 / 04-12 NodeJS TLSdocs/04-12、00-03---
# 04-12NODEJS_TLS_ENTRY_BASE + NODEJS_TLS_HOST 时跑 tls-openssl-sni + HTTPS 断言;无 Secret 时可 CREATE_NODEJS_DEMO_TLS_SECRET=1 自签。
# NODEJS_TLS_ENTRY_BASE=https://192.168.2.61:443
# NODEJS_TLS_HOST=app.example.local
# CREATE_NODEJS_DEMO_TLS_SECRET=1
# NODEJS_TLS_CURL_INSECURE=1