curl方式:

Rancher在每个节点上部署代理以与节点通信。 此页面描述了可以传递给代理的选项,要使用这些选项,您需要采用创建自定义集群 ,并在docker run添加节点时将选项添加到生成的命令中。

常规选项

参数环境变量描述
—serverCATTLE_SERVERRancher配置的url地址
—tokenCATTLE_TOKEN在Rancher中注册节点所需的令牌,可以在https://<rancher_url>/v3/clusters/<Cluster-ID>/clusterregistrationtokens页面查询
—ca-checksumCATTLE_CA_CHECKSUMRancher配置的cacerts的SHA256校验和,可以在https://<rancher_url>/v3/clusters/<Cluster-ID>/clusterregistrationtokens页面查询
—node-nameCATTLE_NODE_NAME用于覆盖注册节点原有的主机名(默认取: hostname -s)
—labelCATTLE_NODE_LABEL向节点添加标签 (—label key=value)

浏览器:

https://172.16.10.67:18443/v3/clusters/c-kp9nl/clusterregistrationtokens

 cluster id:

[root@172 script]# rancher cluster 
WARN[0000] No context set; some commands will not work. Run `rancher login` again. 
CURRENT   ID        STATE     NAME      PROVIDER                    NODES     CPU       RAM       PODS
          c-kp9nl   active    jettech   Rancher Kubernetes Engine   1         0/0       0/0 GB    0/0

角色选项

参数环境变量描述
—all-rolesALL=true给节点指定所有角色 (etcd,controlplane,worker)
—etcdETCD=true指定etcd角色
—controlplaneCONTROL=true指定 controlplane 角色
—workerWORKER=true指定 worker 角色

IP地址选项

参数环境变量描述
—addressCATTLE_ADDRESS节点注册使用的IP地址
—internal-addressCATTLE_INTERNAL_ADDRESS专用网络上用于主机间通信的IP地址

动态IP地址选项

出于自动化目的,您不能在命令中具有特定的IP地址。为此,我们有动态IP地址选项。它们支持 —address 和 —internal-address

示例描述
接口名称—address eth0将从给定接口检索配置的第一个IP地址
ipify—address ipify将使用从https://api.ipify.org中检索的值
awslocal—address awslocal将使用从http://169.254.169.254/latest/meta-data/local-ipv4中检索的值
awspublic—address awspublic将使用从 http://169.254.169.254/latest/meta-data/public-ipv4 检索的值
doprivate—address doprivate将使用从 http://169.254.169.254/metadata/v1/interfaces/private/0/ipv4/address 检索的值
dopublic—address dopublic将使用从 http://169.254.169.254/metadata/v1/interfaces/public/0/ipv4/address 检索的值
azprivate—address azprivate将使用从http://169.254.169.254/metadata/instance/network/interface/0/ipv4/ipAddress/0/privateIpAddress?api-version=2017-08-01&format=text 检索的值
azpublic—address azpublic将使用从http://169.254.169.254/metadata/instance/network/interface/0/ipv4/ipAddress/0/publicIpAddress?api-version=2017-08-01&format=text 检索的值
gceinternal—address gceinternal将使用从 http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/ip 检索的值
gceexternal—address gceexternal将使用从http://metadata.google.internal/computeMetadata/v1/instance/network-interfaces/0/access-configs/0/external-ip 检索的值
packetlocal—address packetlocal将使用从 https://metadata.packet.net/2009-04-04/meta-data/local-ipv4 检索的值
packetpublic—address packetlocal将使用从 https://metadata.packet.net/2009-04-04/meta-data/public-ipv4 检索的值

命令方式:

在rancher上导入一个集群,得到yaml,修改这个yaml,去掉deploy部分,然后apply

执行kc get secret -n cattle-system可以得到2个secret,

其中cattle-credentials-XXX是agent访问rancher的凭证,里边的token配置到环境变CATTLE_TOKEN中

cattle-token-XXX是agent访问自己所在K8S的凭证,里边的ca和token放到./kubernetes下的ca.crt和token文件中

配置agent环境变量:

CATTLE_TOKEN=7dtfjd7x5b6zkfr8rz4rtz592dtrwbnpzdt87t9jzgbjrpnxf5fmpw;CATTLE_SERVER=https://127.0.0.1:8443;CATTLE_CLUSTER=true;KUBERNETES_SERVICE_HOST=172.17.18.12;KUBERNETES_SERVICE_PORT=6443

把K8S的config文件拷贝到默认用户下.kube目录下

然后就可以启动agent了


 

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐