Kubernetes Federation V2搭建(持续更新)

1.安装Helm #为后续安装kubefed做准备

链接:https://pan.baidu.com/s/1QZSs_g1BkAhootM5cgxubQ 
提取码:1234 
tar -xf helm-v3.3.4-linux-amd64.tar.gz

mv linux-amd64/helm /usr/local/bin/helm

# helm version

version.BuildInfo{Version:"v3.3.4", GitCommit:"a61ce5633af99708171414353ed49547cf05013d", GitTreeState:"clean", GoVersion:"go1.14.9"}

命令补全

1

2

3

4

# vim ~/.bashrc

source <(helm completion bash)

# source ~/.bashrc

添加 helm repo:

helm repo add ali-stable    https://kubernetes.oss-cn-hangzhou.aliyuncs.com/charts  #阿里云

helm repo add kubefed-charts https://raw.githubusercontent.com/kubernetes-sigs/kubefed/master/charts  #kubefed

找到目前的版本:

[root@ai-k8s-master kubernetes]# helm search repo kubefed
NAME                      CHART VERSION    APP VERSION    DESCRIPTION       
kubefed-charts/kubefed    0.8.1                           KubeFed helm chart

安装kubefed:

helm --namespace kube-federation-system upgrade -i kubefed
 kubefed-charts/kubefed --version=0.8.1 --create-namespace

Release "kubefed" does not exist. Installing it now.
NAME: kubefed
LAST DEPLOYED: Wed Aug  5 16:03:46 2020
NAMESPACE: kube-federation-system
STATUS: deployed
REVISION: 1
TEST SUITE: None

安装kubefedctl

链接:https://pan.baidu.com/s/1D_bRlgNGqRe5Z2cGn1dQFw 
提取码:1234 
tar -xf  kubefedctl-0.1.0-rc6-linux-amd64.tgz

mv kubefedctl /usr/local/bin/

加入联邦集群

apiVersion: v1
clusters:
- cluster:
    certificate-authority: /root/.cluster1/ca.crt 
    server: https://ip:6443
  name: cluster1
- cluster:
    certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUN5RENDQWJDZ0F3SUJBZ0lCQURBTkJna3Foa2lHOXcwQkFRc0ZBREFWTVJNd0VRWURWUVFERXdwcmRXSmwKY201bGRHVnpNQjRYRFRJeE1EY3pNVEE1TWpFME9Gb1hEVE14TURjeU9UQTVNakUwT0Zvd0ZURVRNQkVHQTFVRQpBeE1LYTNWaVpYSnVaWFJsY3pDQ0FTSXdEUVlKS29aSWh2Y05BUUVCQlFBRGdnRVBBRENDQVFvQ2dnRUJBTUdHCk5wZ25KOWVCcUxNT01lQWY0a3V4QlozdWRjdE9HdnlXOCtmMUQ0ZVJ4OVIrbmtDK0VDNmNYYnh0cWQvcUJGbTQKL05zOE5RaEJWZ0t4N1o3L2puaGVRa3BhbS90dkp6M2lsL3dNdHJ0b2xhTGV4d2pkUGhSWmh4YXBqa0RPMlc3Swp0VytTenJCa1dhUEd0eFdld2QwQjVCczBYRmF6eHJYSVRYN01Ockd3SmVId2dNVkFvRmZkNC9Qd0cxYmtYRDF3CkdjUDVVWE03WWNETzRYQkVrR01LamhTSHRHclNHS3JqRU15VmJZMXRQWTFSeG5qWU9HYzJaQWVNK0hCZVdsSUIKdFpibExTa0FTY0JSUmgxQVJuRzFQSlNOZVZmaDlTMDBFM2E1bjhkbXVRYURDNEUzL0NqMVNObFFXMTEzWm5SKwpVSkNZYXcya29LTUJHZDYzaVdjQ0F3RUFBYU1qTUNFd0RnWURWUjBQQVFIL0JBUURBZ0trTUE4R0ExVWRFd0VCCi93UUZNQU1CQWY4d0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFCbFlGK1lEZHppN0xtSTlzVXI5ZG9WZU9TUzcKSzFBa1loWHp1anFHRlhKUHRLK2R2SXU1SGdwT0ZXdElDQnhOZUdCb1BHdmxsVTdDZ0gvSm9LY2JTcEVJMlpSMQpkQnJyajExSElWd0RTR0txdVJHYytPM0JIUTJGQWRoeFU5cmRrSTRoWGovWWdVY2U5eFFyN05saElQcEU5ZU5ICnRvRVh2WHlCQ1V3VmdpaXFzZ1BQSnBuZzNJakJnMEwwNUJNaTB1RXBoQzZEUzFmbE95RVV6R0x6dXNSUkFhcFAKcW13MHF3K2Q3QXNBMHBsd2xLL0RWRTl4MFFNMHRqTWhRVnpqL1F2czVpQW1DemdEdnFCRWlrdEZOeVRxYTZ5VgpUVFpSUUpMdVJmU2g1Y09UOURGNTh5eGJudUdQZlFUbkhySFRyL1RQbmtxSVAvbDNVb05sSmVybmI4VT0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
    server: https://ip:6443
  name: kubernetes
contexts:
- context:
    cluster: kubernetes
    user: kubernetes-admin
  name: cluster1 #这里将context信息自定义
current-context: cluster1 #当前使用的context
kind: Config
preferences: {}
users:
- name: cluster1
  user:
    client-certificate: /root/.cluster1/client.crt 
    client-key: /root/.cluster1/client.key
- name: kubernetes-admin
  user:
    client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUM4akNDQWRxZ0F3SUJBZ0lJRkEvNTZuN3ZWYzR3RFFZSktvWklodmNOQVFFTEJRQXdGVEVUTUJFR0ExVUUKQXhNS2EzVmlaWEp1WlhSbGN6QWVGdzB5TVRBM016RXdPVEl4TkRoYUZ3MHlNakEzTXpFd09USXhOVEJhTURReApGekFWQmdOVkJBb1REbk41YzNSbGJUcHRZWE4wWlhKek1Sa3dGd1lEVlFRREV4QnJkV0psY201bGRHVnpMV0ZrCmJXbHVNSUlCSWpBTkJna3Foa2lHOXcwQkFRRUZBQU9DQVE4QU1JSUJDZ0tDQVFFQXNSb0VOcWpLUy8rNVJBNjYKZzZLQ3p6SGRSaTVjNHBQeFBVZE9uT004RVJkWXI1bkYxRkRpajNBaTdnUXc3bllFbHlSWTJsYWc5TTVGWlQ2TwpwcXBvaTdEajBzWFVMNHlZdU5Tc0dhelgzdjJINHlZT3Q0QjRqb1p1cVVoYVRVSFJhTDNjZDMwdEFlMVVZKzllCkJJZWp3WlF6MVRyUUhxU0llSVNmUXN0RXJFYjRiOFhtZFFOR3Z2VkloNWJtMlU5VmE2aFhYc1pNa2ZpZnVYeVIKZGlUMms1cGc0R2lhZnFYTForTUkzbTN3ZzVQbFBsakVKSzZNb2I0ekJxdEZURWxWRGwzRTczakNLR0YwNjUwSAplWGk3TzllYitIL1lIeTRTNDNCc2tjS3VmdlF4d1FjS3lkaTUyM3ZJNGRDV2JSUi9lSlBvSkQzVWxTM29rcWJBCjFsWWtLd0lEQVFBQm95Y3dKVEFPQmdOVkhROEJBZjhFQkFNQ0JhQXdFd1lEVlIwbEJBd3dDZ1lJS3dZQkJRVUgKQXdJd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFLb010WXYzZkJTOWFkR2U3RzBKQ25HY3h5RG5nZ0FwRjZKNQo5SHlEdmlqRXFPN0ZHbkxMdWVGQlZFcVg5VlBuUlRBSlI3OHBFUzNJUVJSTVE2bkdta3dMbDVNOXB4SlFVOGk4CkdCcWl3QTFjd1F1bzd0SEVhVU9HYXYvSyt1Q2RIdzBOektaSkhvUXljREpVZ2tYZWtVR00zcGlGSUE4Mm1EdlMKeHh2QU5YcmFCQXZsY292TUh6cmY5dFEwVk1BYURScGtkYzBpUTRKM3R1blk5WjMxRlFDOGk2ekQ0TWRneUI0UAo5TFkrMkVrLzVWZXRmZW9qTlRtV1A2NXkxaUNFclhQUFVwMW5DNUhZS3IxVGxiMmJnYkp2T1p6VlpEcDNmUXBECjVxaGl4TzEwdi82dkxKZmtrSitOSUdiNVZKVDkxeHJSdTl5RTZrMDF2ejZJZkpiMWZWbz0KLS0tLS1FTkQgQ0VSVElGSUNBVEUtLS0tLQo=
    client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcFFJQkFBS0NBUUVBc1JvRU5xaktTLys1UkE2Nmc2S0N6ekhkUmk1YzRwUHhQVWRPbk9NOEVSZFlyNW5GCjFGRGlqM0FpN2dRdzduWUVseVJZMmxhZzlNNUZaVDZPcHFwb2k3RGowc1hVTDR5WXVOU3NHYXpYM3YySDR5WU8KdDRCNGpvWnVxVWhhVFVIUmFMM2NkMzB0QWUxVVkrOWVCSWVqd1pRejFUclFIcVNJZUlTZlFzdEVyRWI0YjhYbQpkUU5HdnZWSWg1Ym0yVTlWYTZoWFhzWk1rZmlmdVh5UmRpVDJrNXBnNEdpYWZxWExaK01JM20zd2c1UGxQbGpFCkpLNk1vYjR6QnF0RlRFbFZEbDNFNzNqQ0tHRjA2NTBIZVhpN085ZWIrSC9ZSHk0UzQzQnNrY0t1ZnZReHdRY0sKeWRpNTIzdkk0ZENXYlJSL2VKUG9KRDNVbFMzb2txYkExbFlrS3dJREFRQUJBb0lCQVFDWW9ITkJKL1l2eVJOQgpNL0JKd2FRNkxCOG1mSTVRTm0rUkFBTWY4ald5QlF6SlNSelUvV0JEZmNDY244QUx3bW55VjhDN2FpME16VGZCCktVaUhHaFUvVGhNSmNyU0t4Z0JZU2ZDSHNBM2FmMlM4dmUrdzlXYndiYXF3K1VuWml2K041Ukk3YUFXQnc2Y1cKK1JOdGsvZnN2R3h2TjJCbENDY1V0amNLdVdOVmsrVUhIVU9SN3NsdkdzS3JDQ3BiUHRqQmtaaHQrYWNzT3hXSQpETVYyVzJuUDV4cDl1N3JhbXNlOFZDYnlGdGdhRkl4N1FUSTNNY1hYOTIrMXVwMGRIRDFlMXlqYW5hV1E2RG5OCmVsZ1RNWkQ3Z01tdnlTdFh0cUNZTFNYNFZ1WEZXdEkxdjBQUVpSK0ZvRXpNcXh4c0pqc0JxMDMyV3pJMUVqZ3EKbmJnSVk1NEJBb0dCQU56UXRUUkRYVDRFYVkvSS9TaWJOUXgwcFdLR1RiRkxyTEUySWZHL2ZjcnBPLy91K3BwUwpZMzlxd1JEVDd4RUZ1c3B2bGZHS2pGMWJOQlduRWoyYk1IU0cvVnFvQzhHbGI5SE5GVlptQlRvK20yRGpyUlJnCkoyL1FLd25YcTg3UU8zK0xpTnlvWEJFcG83aTFDeGdySWJ2WWlNRDFobm5SWVJWek15TzBuRUNaQW9HQkFNMVMKTHF2all6REZIV2lub241b2p2UWM5encxWElSNTYrZlRzblZZem5udjZaS0drK1B1OC9hWlhMSS9UUlBHZFA3agpTNGxqM3B1NUlxb21aM3d5eTVnc3h1emh1TGFlY0lBMTc0UlhickxURjZnVUF6c2N0dVlFanpoK290a3NMamdDCkVaS1RBOFEwUE8zaTFpSENsc1pZWFMwZko3bENRZEJob3dmYTl4RmpBb0dCQU5EOUszTlNpbzVteUs0UWNTSWMKZTRIVmFLNHVKSnczM2pNKzQ3T1ZKRzZHZm9ZRlhlUHZORUprL0dONzRwayt6Z0pJeUNaNmxjekp4Q3IySERwNApoY3pUOGpmNk1sNU53TjVWZHV0MTFWN0I0SGM4SlJUU3lLQjM2alAvanBsSDFmZ3FUUmRpdFBoOWEzb214MkJSCmVqVDZoTHZ6NVJtb2hIVXp1ZVFDVFp5SkFvR0JBSXZiSEFGbnJTd09TSjc5K1BpRC9rUVg2dXl2S0dyd3BabFAKSVRNL243MTloeXVRMGZJajFUZzNkT1hScW8zNjA3eS9WTGVzT0hqNFhiMXExWGpMSE5WMlFyWWVkdlNsN2RuWApZMlJSTGcxUExzRUZpTUhlS0ZONzdaYTg0KzVzWXJzeDVZaGk3ZURhK0ZuTjlyQWVYUmVVSHp2YUNmUHVSdWhMCmFZS3pTeklqQW9HQUpZWGRaMStHYTJwQkYxd1hPbzZQMlhTSFZmVDN0RVNKZkk4SVcrekg3UUtkMkp4bWFuaDAKdTVLVGxrUlMyU2tlM1hJZHRHVWJlZ2RIMmZBWHFUcXFTM3pBUHI3ZmlPNVd1WGd4QVlMY2VDWDlzcGQvOEZtSwpVU0hudXhrV29SN1pwWCt1U1ZKS3d0U3FwdGFrZjN6Y3FsdGJaOFphQ0g2aUhnU1NRYXZvVkVrPQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=

可通过命令快速添加 #相关文件参数从/root/.kube/config获取

# 创建文件夹
mkdir -p /root/.cluster1/
## 添加cluster
kubectl config set-cluster cluster1 --server=https://ip:6443 --certificate-authority=/root/.cluster1/ca.crt
## 添加user
kubectl config set-credentials cluster1 --client-certificate=/root/.cluster1/client.crt --client-key=/root/.cluster1/client.key
## 添加context
kubectl config set-context cluster1 --cluster cluster1 --user=cluster1

加入集群

kubefedctl join <集群名称> --cluster-context <要接入集群的 context 名称> --host-cluster-context <HOST 集群的 context>
kubefedctl join cluster1 --cluster-context cluster1 \
    --host-cluster-context cluster1 --v=2 #这里把一个主集群加入到自身

如果命令添加context join失败,执行

kubectl config delete-context cluster1

然后手动修改/etc/kubernetes/admin.conf相关参数

获取集群的连接信息

  1. kubectl config get-contexts

 查看加入集群信息

[root@ai-k8s-master kubernetes]# kubectl -n kube-federation-system get kubefedclusters
NAME       AGE   READY
cluster1   39m   True

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

医者运维

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值