下载 kOps 配置规范文件 ¶
kOps 使用在创建阶段生成的配置规范文件进行操作。它被上传到创建过程中传入的 amazon s3 存储桶中。
如果你在运行的集群上下载配置规范文件,该集群按你想要的方式配置,你只需将该配置规范文件传递给 create 命令,让 kOps 为你创建集群,kops create -f spec_file
以完全无人值守的方式。
假设你使用以下配置选项创建集群
export KOPS_STATE_STORE=s3://k8s-us-west
export CLOUD=aws
export ZONE="us-west-1a"
export MASTER_ZONES="us-west-1a"
export NAME=k8s.example.com
export K8S_VERSION=1.6.4
export NETWORKCIDR="10.240.0.0/16"
export MASTER_SIZE="m3.large"
export WORKER_SIZE="m4.large"
kops create cluster $NAME \
--cloud=$CLOUD \
--zones="$ZONE" \
--kubernetes-version=$K8S_VERSION \
--master-zones="$MASTER_ZONES" \
--node-count=3 \
--node-size="$WORKER_SIZE" \
--master-size="$MASTER_SIZE" \
--network-cidr=${NETWORKCIDR} \
--dns-zone=ZVO7KL181S5AP \
--ssh-public-key=$HOME/.ssh/lab_no_password.pub
kOps 命令 ¶
你可以简单地使用 kOps 命令 kops get --name $NAME -o yaml > a_fun_name_you_will_remember.yml
注意:要使上述命令正常工作,必须在你的环境中导出集群 NAME 和 KOPS_STATE_STORE。
有关如何使用和修改配置的更多信息,请参见 此处.
管理实例组 ¶
你也可以在单独的 YAML 文件中管理实例组。命令 kops get --name $NAME -o yaml > $NAME.yml
会导出整个集群。可以选择为集群使用一个 YAML 文件,为实例组使用单独的 YAML 文件。这允许你执行以下操作
if ! kops get cluster --name "$NAME"; then
kops create -f "kops/$CLUSTER/$REGION.yaml"
else
kops replace -f "kops/$CLUSTER/$REGION.yaml"
fi
for ig in kops/$CLUSTER/instancegroup/*; do
if ! kops get ig --name "$NAME" "$(basename "$ig")"; then
kops create -f "$ig"
else
kops replace -f "$ig"
fi
done