随着控制平面的建立和运行,我们可以轻松地将worker节点获agent添加到集群中。我们只需要确保使用与server关联的相同token。
SSH进入其中一个worker节点并运行命令。
export K3S_TOKEN="secret_edgecluster_token" export K3S_URL=https://10.0.0.60:6443环境变量K3S_URL是提示安装程序将节点配置为连接到现有服务器的agent。
最后,运行与我们上一步相同的脚本。
curl -sfL https://get.k3s.io | sh -检查是否新节点已经添加到集群。
Congratulations!你已经成功安装了一个高可用K3s集群,并备份了一个外部的etcd数据库。
验证etcd数据库让我们确保k3s集群正在使用etcd数据库进行状态管理。
我们将在K3s集群内启动一个简单的NGINX Pod。
sudo kubectl run nginx --image nginx --port 80 sudo kubectl get podsPod规范和状态应该存储在etcd数据库中。让我们尝试通过etcdctl CLI来检索。安装jq工具来解析JSON输出。
由于输出是以base64编码的,我们将通过base64工具对其进行解码。
etcdctl --endpoints https://10.0.0.61:2379 \ --cert /etc/etcd/server.crt \ --cacert /etc/etcd/etcd-ca.crt \ --key /etc/etcd/server.key get /registry/pods/default/nginx \ --prefix=true -w json | jq -r .kvs[].value | base64 -d输出显示 pod 在 etcd 数据库中有一个相关的键和值。特殊字符没有正确显示,但它确实向我们展示了足够的关于pod的数据。