将k8s安装在六个节点上,六个点信息为:
节点名称 | IP地址 | Hostname | 安装内容 |
---|---|---|---|
harbor私有仓库 | 192.168.0.101 | yyee-centos-1 | harbor |
k8s管理节点1 | 192.168.0.102 | yyee-centos-2 |
etcd,kube-apiserver,kube-controller-manager,
kube-scheduler,CNI
|
k8s管理节点2 | 192.168.0.103 | yyee-centos-3 |
etcd,kube-apiserver,kube-controller-manager,
kube-scheduler, CNI
|
k8s工作节点1 | 192.168.0.104 | yyee-centos-4 |
etcd ,kubelet,docker,kube_proxy,caliop, CNI |
k8s工作节点2 | 192.168.0.105 | yyee-centos-5 |
kubelet,docker,kube_proxy,caliop, CNI |
k8s工作节点3 | 192.168.0.106 | yyee-centos-6 |
kubelet,docker,kube_proxy,caliop, CNI |
前期准备,创建kube-proxy证书。在前一篇 《二进制部署k8s集群(三):部署apiserver》已经创建kube-proxy证书。
需要用到两个证书文件(kube-proxy-client-key.pem, kube-proxy-client.pem),将这两个证书文件分别拷贝所有管理节点的【/opt/kubernetes/server/bin/certs】目录,以及拷贝到所有工作节点的 【//opt/kubernetes/node/bin/certs】目录。
准备kube-proxy证书 |
将【k8s管理节点1】上签 发的kubelet证书,kube-proxy证书,client证书,私钥证书ca.pem,拷贝到 所有k8s工作节点下的 【/opt/kubernetes/node/bin/certs】目录。
mkdir -p /opt/kubernetes/node/bin/certs cd /opt/kubernetes/node/bin/certs scp 192.168.0.102:/opt/certs/kubelet-key.pem ./ scp 192.168.0.102:/opt/certs/kubelet.pem ./ scp 192.168.0.102:/opt/certs/ca.pem ./ scp 192.168.0.102:/opt/certs/client-key.pem ./ scp 192.168.0.102:/opt/certs/client.pem ./ scp 192.168.0.102:/opt/certs/kube-proxy-client-key.pem ./ scp 192.168.0.102:/opt/certs/kube-proxy-client.pem ./
创建kube-proxy用户配置文件 |
切换到【k8s管理节点2】(192.168.0.103)主机,因为生成配置的时候用到localhost:8080,所以需要在管理节点上执行。
下面4个步骤,只需要在其中一个管理节点上完成,然后将kubelet.kubeconfig文件和k8s-node.yaml文件拷贝到各个工作节点。
进入kubernetes安装目录的conf文件夹。
cd /opt/kubernetes/server/conf/
注意,conf目录在【/opt/kubernetes/server】目录下面,而不是【/opt/kubernetes/server/bin】。
第1步【设置集群参数】
kubectl config set-cluster myk8s --certificate-authority=/opt/kubernetes/server/bin/certs/ca.pem --embed-certs=true --server=https://192.168.0.102:6443 \ --kubeconfig=kube-proxy.kubeconfig
Cluster "myk8s" set.
第2步【设置客户端认证参数】
kubectl config set-credentials k8s-proxy --client-certificate=/opt/kubernetes/server/bin/certs/kube-proxy-client.pem --client-key=/opt/kubernetes/server/bin/certs/kube-proxy-client-key.pem --embed-certs=true --kubeconfig=kube-proxy.kubeconfig
User "k8s-proxy" set.
第3步【设置上下文参数】
kubectl config set-context myk8s-context --cluster=myk8s --user=kube-proxy --kubeconfig=kube-proxy.kubeconfig
Context "myk8s-context" created.
第4步【切换上下文】
kubectl config use-context myk8s-context --kubeconfig=kube-proxy.kubeconfig
Switched to context "myk8s-context".
原文:https://www.cnblogs.com/yyee/p/13236530.html