Kubernetes 联邦(Kubefed)

创建多集群管理

集群1生成config配置文件

cd /data/svr/cfssl/tls/test/kubernetes
cfssl gencert -ca=./pem/kube-apiserver-ca.pem -ca-key=./pem/kube-apiserver-ca-key.pem -config=kube-apiserver-ca-config.json -profile=kubernetes admin-csr.json | cfssljson -bare ./pem/role_pem/admin
kubectl config set-cluster kubernetes  --server=https://kbsapisvr.nw.zhkt.com:6443   --certificate-authority=./pem/kube-apiserver-ca.pem   --embed-certs=true   --kubeconfig=./role_permissions/user/admin_config
kubectl config set-context default --cluster=kubernetes --user=cluster-admin --kubeconfig=./role_permissions/user/admin_config
kubectl config use-context default --kubeconfig=./role_permissions/user/admin_config
kubectl config set-credentials cluster-admin  --certificate-authority=./pem/kube-apiserver-ca.pem  --embed-certs=true  --client-key=./pem/role_pem/admin-key.pem  --client-certificate=./pem/role_pem/admin.pem  --kubeconfig=./role_permissions/user/admin_config

集群2生成config配置文件

cd /data/svr/cfssl/tls/test/kubernetes
cfssl gencert -ca=./pem/kube-apiserver-ca.pem -ca-key=./pem/kube-apiserver-ca-key.pem -config=kube-apiserver-ca-config.json -profile=kubernetes admin-csr.json | cfssljson -bare ./pem/role_pem/admin
kubectl config set-cluster 172.31.0.8  --server=https://172.31.0.8:6443   --certificate-authority=./pem/kube-apiserver-ca.pem   --embed-certs=true   --kubeconfig=./role_permissions/user/admin_config
kubectl config set-context cluster1 --cluster=172.31.0.8 --user=cluster-admin1 --kubeconfig=./role_permissions/user/admin_config
kubectl config use-context cluster1 --kubeconfig=./role_permissions/user/admin_config
kubectl config set-credentials cluster-admin1  --certificate-authority=./pem/kube-apiserver-ca.pem  --embed-certs=true  --client-key=./pem/role_pem/admin-key.pem  --client-certificate=./pem/role_pem/admin.pem  --kubeconfig=./role_permissions/user/admin_config

提取最终生成的文件/data/svr/cfssl-1.2/tls/test/kubernetes/role_permissions/user/admin_config里面的内容

config配置文件拼接

===========================

可以使用以下命令拼接

把两个集群的admin_config各写到1、2

#KUBECONFIG=admin_config.1:admin_config.2

#kubectl config view --flatten > /root/.kube/config

===========================

/root/.kube/config 最终修改为以下形式

apiVersion: v1
clusters:
- cluster:
    certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR2akNDQXFhZ0F3SUJBZ0lVYUozMGIrYXptWHo1ckpWRm9oZ1p4UTBveXVJd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1pURUxNQWtHQTFVRUJoTUNRMDR4RURBT0JnTlZCQWdUQjBKbGFXcHBibWN4RURBT0JnTlZCQWNUQjBKbAphV3BwYm1jeEREQUtCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUk13RVFZRFZRUURFd3ByCmRXSmxjbTVsZEdWek1CNFhEVEl4TURVeU1UQTNNekV3TUZvWERUSTJNRFV5TURBM016RXdNRm93WlRFTE1Ba0cKQTFVRUJoTUNRMDR4RURBT0JnTlZCQWdUQjBKbGFXcHBibWN4RURBT0JnTlZCQWNUQjBKbGFXcHBibWN4RERBSwpCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUk13RVFZRFZRUURFd3ByZFdKbGNtNWxkR1Z6Ck1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBM2ZlMHBady93cDlXTEkvaFE0SFgKcGJlclBCZnQ3bHVERnA5Y1hoUi8xQit1RzFlWXFIMDBUV0VKLzJoMi9ZcnM5SjQvbjNocXFZVjV6RG1lK2tlWAo4c3ppOW1OeFFmcjRnNXBxNCtkdzRoZW1hUjBWcXJNelJ3ZndlV0pZRDVXbmcxMHBMNGpjUE53ejdxVlBHSXZlCm5hTHpUSWI0U3duOEM3OWpzNzJ0KzV6UFBVTTlrQXI0TFpldW9RTGp2eGQxWnlUZTBwTXB6bVpkQ09HUVBsMFQKV1NNdWxLdVdzUi9Dd01lWUJFajZ4aVRuZ2J0LzhuM1VKdXhPTGZLQ3RYanhycHdIVWRYYlZ5YnQyQWxhM3R4cApsYXExVnJGVTJGSXJvajVQV0tvNVNGcmJFbk9VVHI3bzc3WEwvZGVTTTlmZE12bVpjL3FBdkpSMTMzUWI1bmRuCkZRSURBUUFCbzJZd1pEQU9CZ05WSFE4QkFmOEVCQU1DQVFZd0VnWURWUjBUQVFIL0JBZ3dCZ0VCL3dJQkFqQWQKQmdOVkhRNEVGZ1FVSlk0V013MmJOYzA4M0gyYk4wQ2p1Q01ZQVUwd0h3WURWUjBqQkJnd0ZvQVVKWTRXTXcyYgpOYzA4M0gyYk4wQ2p1Q01ZQVUwd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFMRURXNjNpWGRNWXZCNjl2Q0FGCjBSN01hMG1rbSs1VTlHeDhkZnZGMURXQ3NxQkg1VDRkSWJUUU52djZWVERtbjFNK0NoUWZZZXlZY00rSWtabEMKM1lPNWh2YzRENXdrV0E4WGtYYVFEWGFHNzBPbXFYMjVZS3NIcTZGeisxL2FtMHNzTnhGTWhNc25zeUFrbzZWZwpqWFdpTUt0amx6NUhwT28rRHNwbGdGbkV6TFE4VE9Xc05TQVRlVE9KalZ3ZWdnL2h4a3pVZkVSN04xemx0VXpNCk4xdVVRRm9Td25LWWozUnBJM2RMVHVhbkVkUEpFNmFqMTRxSWZvSXF6d2p6UGgraE9rTmU1SmpWZTF6YmhFZk4KajVFYm80RlZrVk9BRVpKWmdMNHJZQUw1NzVLb29wd2hEYnV3M3dRSXZDSkpCTVB6T1ZzR215eXpGSzNTdnhGawpsTUk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
    server: https://172.31.0.8:6443
  name: 172.31.0.8
- cluster:
    certificate-authority-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUR2akNDQXFhZ0F3SUJBZ0lVYU1iRllQcTlRNHVtbWxNQlFGc2hFQkFwRVlFd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1pURUxNQWtHQTFVRUJoTUNRMDR4RURBT0JnTlZCQWdUQjBKbGFXcHBibWN4RURBT0JnTlZCQWNUQjBKbAphV3BwYm1jeEREQUtCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUk13RVFZRFZRUURFd3ByCmRXSmxjbTVsZEdWek1CNFhEVEl5TURRd09EQTRNemN3TUZvWERUSTNNRFF3TnpBNE16Y3dNRm93WlRFTE1Ba0cKQTFVRUJoTUNRMDR4RURBT0JnTlZCQWdUQjBKbGFXcHBibWN4RURBT0JnTlZCQWNUQjBKbGFXcHBibWN4RERBSwpCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUk13RVFZRFZRUURFd3ByZFdKbGNtNWxkR1Z6Ck1JSUJJakFOQmdrcWhraUc5dzBCQVFFRkFBT0NBUThBTUlJQkNnS0NBUUVBeUQybTlWS2c4VUJUb2ovdXdkZ28KUmZmbjU1d0RNZmswQnljcGV3N1BEL0NiQyt3a3VkRTBjQzRnQ2RwS2dob2d0MWQza2FyWXJhenREbWJOVVVBKwpaODhVdDMrT252Rnh6b1VOZ0tMNS9ENFhPSTRFSVZPVzRKRlNSamJYR2h5OVhNeFBHK2xjelZmbCtsL0VIdnNqCjg1Q2tYWmg3UzFhY1ZpTDZMK1N1NVMrM3h4Z0RPc21ZMHZ6Z1hlNUNRblRHMit0VnBRUCs2YTlQWUV1TWp4WncKN0d6cWd2WjMzZWdyelJZVHRhRnJIdmF6TWluSys0bHdsMWR0bSt1N1o2ejF0TkNTbFJpV3BKVlppelIvdzlLZgpEcGdIc2hmUVo1b2xVbVpjWDRmTHRGQVF6M2lKUDByMERNSERiWVBQeERNV1NSOWoyMDVLcys4UzZId0dsYUMvCkR3SURBUUFCbzJZd1pEQU9CZ05WSFE4QkFmOEVCQU1DQVFZd0VnWURWUjBUQVFIL0JBZ3dCZ0VCL3dJQkFqQWQKQmdOVkhRNEVGZ1FVZEh1bm1KTnBoZU9NenBtMzJJSHNKdHduOGpnd0h3WURWUjBqQkJnd0ZvQVVkSHVubUpOcApoZU9NenBtMzJJSHNKdHduOGpnd0RRWUpLb1pJaHZjTkFRRUxCUUFEZ2dFQkFNRitMOGY3VWJzSzUxcG0rRjY0CnF4c2FqY0w1YWtPS2RocUJOSTFINk1rWHNzeVdvS1NhZERra1NXQXBOamVJam9rSDJtWFVsaWpQdmE3aGl5dXMKS1VnRVVkcHZrY2pRN010MStoZldNbXNvVXRORkpqaHArVHpSdVZKZUlBWElIM0kwUDVUQVBxNHh0MEVmZjVtLwpJUExWM3pqUU00SjdJYU1YUFZLV1hnUFozZCtqbHEvL2FZcTVaVmVCSEwzRFhzSy9FMVd0aFE3R1FQYlZlZ1N6CnUzeXRpbzdjRmw5N3N4MmlxOXhZRDNTemdjVi93WWNLeWtCSmNrUGVhMlU2aTR4cm5Rbmt6RS95OGNzU0UybXoKOFNiNnBxd2pjeUwyWUN1bnlXN1N5dzM0dm8yWXptbWgrdEtRVlQzSjBNanl2U1B4dndORjk0OTZzejV6RVRYagp0WFk9Ci0tLS0tRU5EIENFUlRJRklDQVRFLS0tLS0K
    server: https://kbsapisvr.nw.zhkt.com:6443
  name: kubernetes
contexts:
- context:
    cluster: 172.31.0.8
    user: cluster-admin1
  name: cluster1
- context:
    cluster: kubernetes
    user: cluster-admin
  name: default
current-context: default
kind: Config
preferences: {}
users:
- name: cluster-admin
  user:
    client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUQzVENDQXNXZ0F3SUJBZ0lVVThjeU9GZlNEbmdzazUvTWRVblZsdkU4L0ZVd0RRWUpLb1pJaHZjTkFRRUwKQlFBd1pURUxNQWtHQTFVRUJoTUNRMDR4RURBT0JnTlZCQWdUQjBKbGFXcHBibWN4RURBT0JnTlZCQWNUQjBKbAphV3BwYm1jeEREQUtCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUk13RVFZRFZRUURFd3ByCmRXSmxjbTVsZEdWek1CNFhEVEl5TURRd09EQTVOVGN3TUZvWERUTXlNRFF3TlRBNU5UY3dNRm93YXpFTE1Ba0cKQTFVRUJoTUNRMDR4RURBT0JnTlZCQWdUQjBKbGFVcHBibWN4RURBT0JnTlZCQWNUQjBKbGFVcHBibWN4RnpBVgpCZ05WQkFvVERuTjVjM1JsYlRwdFlYTjBaWEp6TVE4d0RRWURWUVFMRXdaVGVYTjBaVzB4RGpBTUJnTlZCQU1UCkJXRmtiV2x1TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUF2TkRPRW1GQnc0bG8KdUx5eXVwUDhHUE9kZVpPQ0x2L1NDNW9KU1I0bkxoTGJhTmtlYkpyY0FDMmxoWDNHK0VjbWdBOFVjUTZXbGlWcwo1VVV2QzNJTko2VjlpRmNPd1pLY0VocmhVL1JiSmFvSUNWWElvTHBvRFRScDJmVnIzb3VFQ1NGMlVrL2J5OTlEClBWYk1lc0RYdlp4c0VTSjc5VG9OSVAzOEFkeUthZUNlUzczaUx3UXJsamMxMFM3eUR0T1B5UUdxTnMrVXJlQVQKNGJXeW5aczBvY0VWVFY3TFAvbWlrZDZCSDNJdmJEZTRVVjBpNzN5U29yRXYybVZxbE5DaE0zUTFSdlE5d3I2NwpaTDdYcFdYYVpPbmFxWEV4WG8rZFZKUS8xY3o4emc0dVNlT1l4cXNXbEFhMW1QUVNVbzRhdTRndTN0ckN1ZHUxClBGeE9XZVdMU1FJREFRQUJvMzh3ZlRBT0JnTlZIUThCQWY4RUJBTUNCYUF3SFFZRFZSMGxCQll3RkFZSUt3WUIKQlFVSEF3RUdDQ3NHQVFVRkJ3TUNNQXdHQTFVZEV3RUIvd1FDTUFBd0hRWURWUjBPQkJZRUZEZ1VrdElRWkRIUApkdzZhUWRRMDVwWnh4eGFHTUI4R0ExVWRJd1FZTUJhQUZIUjdwNWlUYVlYampNNlp0OWlCN0NiY0ovSTRNQTBHCkNTcUdTSWIzRFFFQkN3VUFBNElCQVFCbzNDY0tlYXk1K2I3bG5QMTQ5V2FrQTVkQzB3ZjJ6c3lpU0g4K2NFSjAKRE5DbktNVkVSemUrTDBycVpjVXlnZzh2WjhUZzVlVFVBbEZ1TW1RODRlNHJhVmZhRHNJVFpsK0l0cW96QzJnZQpwT0xSQS9iQk1COFA0WXd6bnFsV1UrVVdLd0E4ZndkNGtBeTA1TGUwZU5WWW9vWC9LM1ErY0Fub2pBd1hLeTBRCkxvUFNvNHMyZEt2QUNvaEE1U1orVXhoeFU0SUpnZHZRM1MwVi9lRTRwSFVDMFpEbzZkZGNUNWYwelp5T2pvOUsKb1hpUkNRemJzalJCa1U2Z2JhcUc5TjVtRHpoWFFtVXlUTXJWaFE3eCtKbXVjWUh1UHJxRThQUmtjTWhWbWh0MQpITHgySWZBNFJ2djlpQTBQMHdiS0IyVGlxVXdvT25LQXNQekhaRGJnY2cyWAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
    client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFcEFJQkFBS0NBUUVBdk5ET0VtRkJ3NGxvdUx5eXVwUDhHUE9kZVpPQ0x2L1NDNW9KU1I0bkxoTGJhTmtlCmJKcmNBQzJsaFgzRytFY21nQThVY1E2V2xpVnM1VVV2QzNJTko2VjlpRmNPd1pLY0VocmhVL1JiSmFvSUNWWEkKb0xwb0RUUnAyZlZyM291RUNTRjJVay9ieTk5RFBWYk1lc0RYdlp4c0VTSjc5VG9OSVAzOEFkeUthZUNlUzczaQpMd1FybGpjMTBTN3lEdE9QeVFHcU5zK1VyZUFUNGJXeW5aczBvY0VWVFY3TFAvbWlrZDZCSDNJdmJEZTRVVjBpCjczeVNvckV2Mm1WcWxOQ2hNM1ExUnZROXdyNjdaTDdYcFdYYVpPbmFxWEV4WG8rZFZKUS8xY3o4emc0dVNlT1kKeHFzV2xBYTFtUFFTVW80YXU0Z3UzdHJDdWR1MVBGeE9XZVdMU1FJREFRQUJBb0lCQUdzeUJIeHMyT0JCWjhIUgo1NHFEcjVFZTVkMTdBR0xjZkF4NEpDTnR5Z0tmVkErZmpHVk9PZTZqKzUvZys1QkRITG1CVmpLbGZKcTducW8vCmIra0lsQzFaQi83YXBoY0J2RGVQS1RQM3U3T1RaOEtkQUMwNEJ4RFFHL1JSSUMrVmQ1MlRjTkJrWkQzSGdDNFgKMURrd3VJcitmbC92K3Y0TE9oN3I4eUcvYXBtV29hcyt1M0dtUjRKTGtubVFRYmdoTnZWV2k3aWtWMzlKaXJKQgpDZjJoQllOUld6UEZsOVY2dkpxeVdoR1UxZFNjQnoxbFNyUTczTHFpbkVaZ1NOWXQ0a3NBL2dTWjE5UmRQQ2E4CmVqOHhuNmFLbFZERS8yQXV2VVlkQlk4am1DOFh2N1F3RHhFZnAwRzhBeWVXY2VTZDZmbkJFa21tdm5BaythSHcKSzlod3AzRUNnWUVBMWNrNEl4eCtyVG9lbU5LQ09VUWtmTzUzYmZWSzNOcGxuTlFSaHpYblBVdGhJazJTeFdURQpxSGlLdnoyMTBScC9QTG9WaFNxSXR1bUdhZDA2VVQzcVNJV2pTazU1VG43eTlUaW92eDZJQWRvRW5JRGdoOW4xCklPNlphMElycFdHU25oNWs0KzVwa2RrWlB0WlJEQkUrYTBENUVhMWp4emxnTEpkK0JENW14QzBDZ1lFQTRobFkKY3FLVUxxVmtqQmF6OXdsS0VZSVlkQS9RVlQ3elN0V055dS9hVDA3bGpMd0wvR3czQVkrcnVhYzdjbkxDNitJcApvempPNDloOXg0dEVGSkZ3dkd6ZXFpLzFRajNJTk4xYzc5Rk9pcHRhRXN1cm1SbWNyejBrZDFGN0U4VkxzTWlYCktGOXF2SXFoelBZRnlHTEs4YmdKQ3JHVC9WeEJGOHg2ODQzb0NRMENnWUVBbkRycFNGZHBoNFFpbWdHMFlzOFcKYnlvQm94eVBzZWYwTy9DS1FxbzBxNGxybVpyZytGblVrVjFOMzhYa0djUm9XV09QbUhwbDRHMjE2YVZmR2NISwpkV2NiMXBDVWU3V3dMVjVUaXg5dnV4S3RMZ1hNajlyTEZWN29SUWJkU0lXT2xQaVhPQzZoZlpFT3J1b0YzbkMzCmtiK3doS2VXZEIvTTFhbDcwUFFkTzUwQ2dZQVNyWkZXOXdOU3p5cjlQNnJpVDR3azRpQnZCaGRwMDJkNTJTWjcKaTFEM21FYnlWMTZPSGNwMWdJN3BLVjJKMk4wdGEyT1JMbEk1RkZ0ZnJxdVRIMmkyeUMrazA0MXBTWDFPa0xMcQp4Tm0rTFpORlZqbjR6ZHJaeHkxS0Joc3F5UE8xeVB4ancyNG40VFA0b0tKZHFYdW1lRk9XNUpDYkw1SFpDM1ZrCnhXWlR5UUtCZ1FDZ2EzNWVCVjgvdUdyb21FNVRwNXJOM1RidXQ5SVQ2WFNGcHBrdkhBUzY0U0lmdzJMQ2ZDNHkKcEwvS1VyL3ZlRENrZG5ZTGYxeWlsOFBHblpZRXB5V0RXRmgxZ09LTG5TZ1Nxa1Q2bkVnOVd4WUdwTUFWOFZaaAp5UTFZREo3cjlzQVZhczY2U0gxclRiaWVkN0dnK1NGcnFMVk1mZ0NndC82L2VJUUtDMGxtUUE9PQotLS0tLUVORCBSU0EgUFJJVkFURSBLRVktLS0tLQo=
- name: cluster-admin1
  user:
    client-certificate-data: LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0tCk1JSUQzVENDQXNXZ0F3SUJBZ0lVS0I4NlNhUGFham9ERzJ6S2NqazVIenNlTHA4d0RRWUpLb1pJaHZjTkFRRUwKQlFBd1pURUxNQWtHQTFVRUJoTUNRMDR4RURBT0JnTlZCQWdUQjBKbGFXcHBibWN4RURBT0JnTlZCQWNUQjBKbAphV3BwYm1jeEREQUtCZ05WQkFvVEEyczRjekVQTUEwR0ExVUVDeE1HVTNsemRHVnRNUk13RVFZRFZRUURFd3ByCmRXSmxjbTVsZEdWek1CNFhEVEl5TURReE16QXlOVFl3TUZvWERUTXlNRFF4TURBeU5UWXdNRm93YXpFTE1Ba0cKQTFVRUJoTUNRMDR4RURBT0JnTlZCQWdUQjBKbGFVcHBibWN4RURBT0JnTlZCQWNUQjBKbGFVcHBibWN4RnpBVgpCZ05WQkFvVERuTjVjM1JsYlRwdFlYTjBaWEp6TVE4d0RRWURWUVFMRXdaVGVYTjBaVzB4RGpBTUJnTlZCQU1UCkJXRmtiV2x1TUlJQklqQU5CZ2txaGtpRzl3MEJBUUVGQUFPQ0FROEFNSUlCQ2dLQ0FRRUFyUzlWSUVidVVUdkoKZ1Q5V0RxbjVFN0Rsb205cTEyMHFUdFpWMUl5MUozN0NmTXVLUnhTb3Bxdk1pL1JYTld3QStINlhsbDdYN01sWAowcVYrZkY5Q1U4WlI1ZTdWRXNTL25EV0NOZXFmYlZUUDZEdTEwY2ZwRlZibVEzMDdHV0FOWUFHRk1lVEJ3ZXZwCjdHQVROYm81Ym1wR3hOcVM4VDVTamcxSkc5c0gyMktjWFhLc2JTODFGWE9DUGZDZTRNQXNRdWhpT05QZnM0U3AKaUxhbGxTTjRYUjNRTHc1ajVnVVl3RUk3V1puUWFyZks3eTVyelhBbFVpL1EzMWtOZndXSy9nWllkN2Z5UTVHcgozKzhLc25GSlJDY2lETUtJNDJvdXBiNS9LTEk2ZXlySWlpK01RQnp6NVg1aHpxTVl5RVdvaDBoRFB0MnRQZVdKClQyRFZmcWxtcVFJREFRQUJvMzh3ZlRBT0JnTlZIUThCQWY4RUJBTUNCYUF3SFFZRFZSMGxCQll3RkFZSUt3WUIKQlFVSEF3RUdDQ3NHQVFVRkJ3TUNNQXdHQTFVZEV3RUIvd1FDTUFBd0hRWURWUjBPQkJZRUZMaUlTNVlreVB1VAorK3JZcXR3ZXp4YzZLdkxtTUI4R0ExVWRJd1FZTUJhQUZDV09Gak1ObXpYTlBOeDltemRBbzdnakdBRk5NQTBHCkNTcUdTSWIzRFFFQkN3VUFBNElCQVFDY3VGTzMwMjFYTEJ2WGNyR3hhY1hRV0diUWVlbk1XYkljdFRrTW1JdVoKWGVrclhtSG9xNWd2Ri9DemlnUHNhbklnNzhpbUlTNjhxSkUvNXVEUm5MNVhySTNCaFg0SVFTbzRNR3YyQWhCSQpwWG1rU2pYek84b2EvQ1VvUE5wVmhUeFEwY0QyVllJTzYvVGFLeTZYVmlJZ0E1b2ZTbFdwZFRCRCtMRGpiUDc2CmUvemYxM2U4cUMvKy9yOGZ5YlQyalpVWkNYdzZKTDU5eGlXbGJ0SWZQblZlVlRrc1QzUVdMdk4vYXQ4c2dYbEYKSEZkdysvWVBkSkwyOTN2Y1NWOHVQSC9HVlpYUEhMVUIvRU5VN1BZV214cFhvZitwS0RMSGhSNGVSWHEwMUVvaApXcXZ4d0dJRXc2Q2VWSWZaaVVKOTFHUkVCb0dFVEV2ejRRZW5WRjdyWnRMcAotLS0tLUVORCBDRVJUSUZJQ0FURS0tLS0tCg==
    client-key-data: LS0tLS1CRUdJTiBSU0EgUFJJVkFURSBLRVktLS0tLQpNSUlFb2dJQkFBS0NBUUVBclM5VklFYnVVVHZKZ1Q5V0RxbjVFN0Rsb205cTEyMHFUdFpWMUl5MUozN0NmTXVLClJ4U29wcXZNaS9SWE5Xd0ErSDZYbGw3WDdNbFgwcVYrZkY5Q1U4WlI1ZTdWRXNTL25EV0NOZXFmYlZUUDZEdTEKMGNmcEZWYm1RMzA3R1dBTllBR0ZNZVRCd2V2cDdHQVROYm81Ym1wR3hOcVM4VDVTamcxSkc5c0gyMktjWFhLcwpiUzgxRlhPQ1BmQ2U0TUFzUXVoaU9OUGZzNFNwaUxhbGxTTjRYUjNRTHc1ajVnVVl3RUk3V1puUWFyZks3eTVyCnpYQWxVaS9RMzFrTmZ3V0svZ1pZZDdmeVE1R3IzKzhLc25GSlJDY2lETUtJNDJvdXBiNS9LTEk2ZXlySWlpK00KUUJ6ejVYNWh6cU1ZeUVXb2gwaERQdDJ0UGVXSlQyRFZmcWxtcVFJREFRQUJBb0lCQUFvZVN0WHc3dm1XQ2FiZwpnWEduNHFLUTRrbkVRclRGYndSZUozT2NxUFRleGhRdWZDeTgrMEdKcGhERFBOa2xMMFZWZUJ2VC9MK2IzK0t4Cndwc1hvYk50VWRtaVE1YXVJaGZKVklzNzR3YXJQdDV0cHFqVUNqMHg3NUFmMy9VU2xKVjRZVVRSL2JRTHlZWUMKOHZ4Zm5mMWlmaklBSnplckVYMjFMd0ZPb2IzaWcyN1NQdVR5MThGWnJLZkg2NDc0YnpjRVA2WkUvbzF3TklMaApQOWxCRkxoOGlMNlNjNWpDWE5vZGNwL0NWWHBmWG9OMm9uTTJTOEl3K0h4em5CYTNHaVArMVhsVWZsYnM5MU1CCnpxdC9jMmUzanVzU1FhakF2Z295QVBIS3h6TGd6YzZMSGcvQ0FVVThQSiszNHVoWEhURmZFRnljZnJveGpVQmoKT1UzcndJRUNnWUVBMWNvWHpuWUYyNDI4cW1KVThqQndnOXNrdGJrK1gvVW1vVnI0cmQra0xNT28wNkQ1NVVZMgpwU3MyUnMyRkIycHViYll6NFVIUElsQ29ieUYxS1JFc3BtZ0FvYXM1bWhwc0pkK0tFZ2M1MjU1TkxRcGw0WXNhClhiMUhGTFpFc0x3TWd6eDFrbm00RFlvb0d1MG0yUWR0NzNFeVAxNi9odXduRjFtU2ZRaHp5ZmtDZ1lFQXoyRG0KQkppMVh0MnFSZ0o3S0thdkhuSmRJcnhod3ozUXNuWDNCQXRIOER1MGEyWVY5RWZTNDk4OVAwZmpmcXlvUGxoawpZaXhmZmlCTlBKdHpxd3NFb0xmcnp2MlIwbnV5TFNZWCtPcDB6NFJibnBZYldld3MzUEpieTBWemJCV2g3NEJYCjJyRzdBdU9nZjdhWVdyKzBZdCtsY1p5SW9kUERzbnQ5bWZrZExqRUNnWUIzTE1ucWtJWWhacmgyTG94MTJhVFAKQy9sQngvcktXUWxveHlKN0lvRU5aeUNVb0ZiTmhUOXZBVkNuVldmRHc0TzlhdVV1dTVXdzVrK09hNU01Q2xiZQppSGxacGU1ZFJqOWxPV0JwUGxmMVlpQlpiRU53NEM4WmRDck1rL0prcHQ4K3hSUXhTK0xhd1ZvcjhHbEljRWpMClFrbWxZN2JXaW93Y0N4V0sxNHhjV1FLQmdHQlJhaVJDWlNMOW80Tkd6YnNReUE5RklOcnNVaC9qaXhZSVVrVnYKaytjUlkvZnAvMUpwTlpzZTZZeUZzRFQ2cmwzZW9pa3k0TnRzMTFMS0JNd3hudUdpNndSRm83LzJNY2hraEFmWgpwWTFvdFVFUUNQNFlBckpRWXJBanZyczV4TysvVlk2K3M5Umdzdi8rWi83bVFUc1hFdm1Vc2FVdi9SbmQzM1Z2ClRjMVJBb0dBQ3lzQldyWitiSzlDWDJnQTVMdG1KUFZhbzlLS01YeXN2UDhxWmdSV2krdFBIbjRkYnpMMzdzZE8KK0JKQ1FtNWNEYkRJc1FuTGtPQ1pvVUROcWcycFpYS2pBckdFWlBMS1BVZy9WbE8zVS9HN1gwTzhZT1JrOGZTOApSRWFIMnArRVJldCtzMnRDZGFZZHJWc1orNHh0cEkybTR4K1hER1c4ak1ma2tSWkVnMkk9Ci0tLS0tRU5EIFJTQSBQUklWQVRFIEtFWS0tLS0tCg==
kubectl config get-contexts

kubectl config get-contexts

安装kubefed,kubefedctl编辑

在默认群集操作

安装helm

yum install -y helm

installing the Chart

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

NAME URL kubefed-charts https://raw.githubusercontent.com/kubernetes-sigs/kubefed/master/charts

With the repo added, available charts and versions can be viewed.

#helm search repo kubefed
#helm --namespace kube-federation-system upgrade -i kubefed kubefed-charts/kubefed --version=0.9.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
在这里插入图片描述
在这里插入图片描述
Uninstalling the Chart
Delete all KubeFed FederatedTypeConfig:

#kubectl -n kube-federation-system delete FederatedTypeConfig --all

Then you can uninstall/delete the kubefed release:

#helm --namespace kube-federation-system uninstall kubefed

The command above removes all the Kubernetes components associated with the chart and deletes the release.

安装kubefedctl编辑
镜像地址:https://gh-proxy.du33169.workers.dev/https://github.com/kubernetes-sigs/kubefed/releases/download/v0.9.1/kubefedctl-0.9.1-linux-amd64.tgz

https://github.com/kubernetes-sigs/kubefed/releases/download/v0.9.1/kubefedctl-0.9.1-linux-amd64.tgz

tar -zxvf kubefedctl-0.9.1-linux-amd64.tgz
mv kubefedctl /bin/

oining Clusters 加入联邦集群编辑

#kubectl config get-contexts

CURRENT NAME CLUSTER AUTHINFO NAMESPACE

cluster1 172.31.0.8 cluster-admin1

  • default kubernetes cluster-admin
kubefedctl join default --cluster-context default \
    --host-cluster-context default --v=2
kubefedctl join cluster1 --cluster-context cluster1 \
    --host-cluster-context default --v=2

在这里插入图片描述
在这里插入图片描述
Unjoining clusters
You can unjoin clusters using kubefedctl tool as follows.

kubefedctl unjoin cluster2 --cluster-context cluster2 --host-cluster-context cluster1 --v=2

默认联邦开启的API type:

#kubectl api-resources|grep fede

federatedservicestatuses core.kubefed.io true FederatedServiceStatus
federatedtypeconfigs ftc core.kubefed.io true FederatedTypeConfig
federatedclusterroles types.kubefed.io false FederatedClusterRole
federatedconfigmaps fcm types.kubefed.io true FederatedConfigMap
federateddeployments fdeploy types.kubefed.io true FederatedDeployment
federatedingresses fing types.kubefed.io true FederatedIngress
federatedjobs types.kubefed.io true FederatedJob
federatednamespaces fns types.kubefed.io true FederatedNamespace
federatedreplicasets frs types.kubefed.io true FederatedReplicaSet
federatedsecrets types.kubefed.io true FederatedSecret
federatedserviceaccounts fsa types.kubefed.io true FederatedServiceAccount
federatedservices fsvc types.kubefed.io

#kubectl api-versions |grep fe

core.kubefed.io/v1alpha1
core.kubefed.io/v1beta1
scheduling.kubefed.io/v1alpha1
types.kubefed.io/v1beta1
启用非默认的kubefed API type,这个是V2版本的改进

kubefedctl enable customresourcedefinitions kubefedctl federate crd

The 可以是

the Kind (e.g. Deployment)
plural name (e.g. deployments)
group-qualified plural name (e.g deployment.apps), or
short name (e.g. deploy)
如:

#kubefedctl enable statefulsets

在这里插入图片描述

Deletion policy

All federated resources reconciled by the sync controller have a finalizer (kubefed.io/sync-controller) added to their metadata. This finalizer will prevent deletion of a federated resource until the sync controller has a chance to perform pre-deletion cleanup.

Pre-deletion cleanup of a federated resource includes removal of resources managed by the federated resource from member clusters.

To prevent removal of these managed resources, add kubefed.io/orphan: true as an annotation to the federated resource prior to deletion, as follows.

You can do it by

kubefedctl orphaning-deletion enable 作用:在删除时可以保留资源
You can also check the current orphaning-deletion status by:

kubefedctl orphaning-deletion status
And finally, if you want to return to the default deletion behavior, you can disable the orphaning-deletion by:

kubefedctl orphaning-deletion disable

servicecomb-cs 被保留下来
在这里插入图片描述
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值