рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ: (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ?)
рдХреНрдпрд╛ рд╣реБрдЖ :
рдореИрдВрдиреЗ Ubuntu 16.04 рдкрд░ рдирд┐рдореНрди рдЪрд░рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рдпрд╛:
sudo apt-get update
sudo apt-get upgrade
sudo su
kubeadm reset
kubeadm init --token [redacted] --apiserver-advertise-address=192.168.13.1 --pod-network-cidr=10.244.0.0/16
exit
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
kubectl get nodes
рдРрд╕рд╛ рдХрд░рдиреЗ рдкрд░, рдореБрдЭреЗ рдкреНрд░рд╛рдкреНрдд рд╣реЛрддрд╛ рд╣реИ:
Unable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes")
рдореИрдВрдиреЗ kubectl
, kubeadm
рдФрд░ kubelet
рдХреЛ рдХрдИ рдмрд╛рд░ рдЕрдирдЗрдВрд╕реНрдЯреЙрд▓ рдХрд░рдиреЗ рдХреА рдХреЛрд╢рд┐рд╢ рдХреА рд╣реИ (рдпрд╣рд╛рдВ рддрдХ тАЛтАЛрдХрд┐ --purge
) рдФрд░ рдЗрд╕рд╕реЗ рдХреЛрдИ рдлрд░реНрдХ рдирд╣реАрдВ рдкрдбрд╝рддрд╛ рдХрд┐ рдореИрдВ рдХреНрдпрд╛ рдХрд░рддрд╛ рд╣реВрдВ, рдпрд╣ (kubeadm 1.7) ) рдПрдХ рдХрд╛рд░реНрдпрд╢реАрд▓ admin.conf
рдЙрддреНрдкрдиреНрди рдирд╣реАрдВ рдХрд░рддрд╛ рд╣реИред рд╣рд╛рд▓рд╛рдВрдХрд┐, рдореИрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд▓рд╛рддрд╛ рд╣реВрдВ:
curl --cacert /etc/kubernetes/pki/ca.crt --cert /etc/kubernetes/pki/apiserver-kubelet-client.crt --key /etc/kubernetes/pki/apiserver-kubelet-client.key https://192.168.13.1:6443
рдФрд░ рдкрд╛рдУ:
{
"paths": [
"/api",
"/api/v1",
"/apis",
"/apis/",
"/apis/apiextensions.k8s.io",
"/apis/apiextensions.k8s.io/v1beta1",
"/apis/apiregistration.k8s.io",
"/apis/apiregistration.k8s.io/v1beta1",
"/apis/apps",
"/apis/apps/v1beta1",
"/apis/authentication.k8s.io",
"/apis/authentication.k8s.io/v1",
"/apis/authentication.k8s.io/v1beta1",
"/apis/authorization.k8s.io",
"/apis/authorization.k8s.io/v1",
"/apis/authorization.k8s.io/v1beta1",
"/apis/autoscaling",
"/apis/autoscaling/v1",
"/apis/batch",
"/apis/batch/v1",
"/apis/certificates.k8s.io",
"/apis/certificates.k8s.io/v1beta1",
"/apis/extensions",
"/apis/extensions/v1beta1",
"/apis/networking.k8s.io",
"/apis/networking.k8s.io/v1",
"/apis/policy",
"/apis/policy/v1beta1",
"/apis/rbac.authorization.k8s.io",
"/apis/rbac.authorization.k8s.io/v1alpha1",
"/apis/rbac.authorization.k8s.io/v1beta1",
"/apis/settings.k8s.io",
"/apis/settings.k8s.io/v1alpha1",
"/apis/storage.k8s.io",
"/apis/storage.k8s.io/v1",
"/apis/storage.k8s.io/v1beta1",
"/healthz",
"/healthz/autoregister-completion",
"/healthz/ping",
"/healthz/poststarthook/apiservice-registration-controller",
"/healthz/poststarthook/apiservice-status-available-controller",
"/healthz/poststarthook/bootstrap-controller",
"/healthz/poststarthook/ca-registration",
"/healthz/poststarthook/extensions/third-party-resources",
"/healthz/poststarthook/generic-apiserver-start-informers",
"/healthz/poststarthook/kube-apiserver-autoregistration",
"/healthz/poststarthook/rbac/bootstrap-roles",
"/healthz/poststarthook/start-apiextensions-controllers",
"/healthz/poststarthook/start-apiextensions-informers",
"/healthz/poststarthook/start-kube-aggregator-informers",
"/healthz/poststarthook/start-kube-apiserver-informers",
"/logs",
"/metrics",
"/swagger-2.0.0.json",
"/swagger-2.0.0.pb-v1",
"/swagger-2.0.0.pb-v1.gz",
"/swagger.json",
"/swaggerapi",
"/ui",
"/ui/",
"/version"
]
}
рдЖрдкрдХреЛ рдХреНрдпрд╛ рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдереА :
рдорд╛рд╕реНрдЯрд░ рдХреЛ kubeadm init
рдорд╛рдзреНрдпрдо рд╕реЗ рдкреНрд░рд╛рд░рдВрдн рдХрд░рдиреЗ рдХреЗ рдмрд╛рдж, рдореБрдЭреЗ рдиреЗрдЯрд╡рд░реНрдХ рдкреНрд▓рдЧрдЗрди рд╕реНрдерд╛рдкрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП kubectl
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдиреЗ рдХреА рдЙрдореНрдореАрдж рдереА; рдЪреВрдВрдХрд┐ рдпрд╣ x509
,
рдкрд░реНрдпрд╛рд╡рд░рдг :
kubectl version
): 1.7uname -a
): рд▓рд┐рдирдХреНрд╕ рд░реЗрдбрд┐рдпрдо-рдирд┐рдпрдВрддреНрд░рдг 4.4.0-83-рдЬреЗрдиреЗрд░рд┐рдХ #106-рдЙрдмрдВрдЯреВ рдПрд╕рдПрдордкреА рд╕реЛрдо рдЬреВрди 26 17:54:43 рдпреВрдЯреАрд╕реА 2017 x86_64 x86_64 x86_64 рдЬреАрдПрдирдпреВ/рд▓рд┐рдирдХреНрд╕@carldanley рдЗрд╕ рдореБрджреНрджреЗ рдкрд░ рдХреЛрдИ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд▓реЗрдмрд▓ рдирд╣реАрдВ рд╣реИрдВред рдХреГрдкрдпрд╛ рдЗрд╕рдХреЗ рджреНрд╡рд╛рд░рд╛ рдПрдХ рд╣рд╕реНрддрд╛рдХреНрд╖рд░ рд▓реЗрдмрд▓ рдЬреЛрдбрд╝реЗрдВ :
(1) рдПрдХ рд╕рдВрдХреЗрдд рдХрд╛ рдЙрд▓реНрд▓реЗрдЦ рдХрд░рдирд╛: @kubernetes/sig-<team-name>-misc
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, @kubernetes/sig-api-machinery-*
рдПрдкреАрдЖрдИ рдорд╢реАрдирд░реА рдХреЗ рд▓рд┐рдП
(2) рд▓реЗрдмрд▓ рдХреЛ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ рдирд┐рд░реНрджрд┐рд╖реНрдЯ рдХрд░рдирд╛: /sig <label>
рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, /sig scalability
sig/scalability . рдХреЗ рд▓рд┐рдП
_рдиреЛрдЯ: рд╡рд┐рдзрд┐ (1) рдЯреАрдо рдХреЛ рдПрдХ рд╕реВрдЪрдирд╛ рдЯреНрд░рд┐рдЧрд░ рдХрд░реЗрдЧреАред рдЖрдк рдпрд╣рд╛рдВ рдЯреАрдо рд╕реВрдЪреА рдФрд░ рд▓реЗрдмрд▓ рд╕реВрдЪреА рдпрд╣рд╛рдВ рджреЗрдЦ рд╕рдХрддреЗ рд╣реИрдВ _
/рд╕рд┐рдЧ рдХреНрд▓рд╕реНрдЯрд░-рдЬреАрд╡рдирдЪрдХреНрд░
рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рдпрд╣ рдорджрдж рдХрд░рддрд╛ рд╣реИ, рд▓реЗрдХрд┐рди рдореЗрд░реЗ рдкрд╛рд╕ рд╡рд╣реА рдерд╛ рдФрд░ рдореБрдЭреЗ рдПрд╣рд╕рд╛рд╕ рд╣реБрдЖ рдХрд┐ рдореИрдВ рдкреБрд░рд╛рдиреЗ рд╕реЗрдЯрдЕрдк рдЧрд╛рдЗрдб рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░ рд░рд╣рд╛ рдерд╛, /etc/kubernetes/admin.conf
рдХреЛ ~/.kube/admin.conf
рдХреЙрдкреА рдХрд░ рд░рд╣рд╛ рдерд╛ рдФрд░ $KUBECONFIG=$HOME/.kube/admin.conf
ред рдореИрдВрдиреЗ рдкрд░реНрдпрд╛рд╡рд░рдг рдЪрд░ рдХреЛ рд╕рд╛рдлрд╝ рдХрд░ рджрд┐рдпрд╛ рдФрд░ kubectl
рдбрд┐рдлрд╝реЙрд▓реНрдЯ рд░реВрдк рд╕реЗ ~/.kube/config
рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╡рд╛рдкрд╕ рдЖ рдЧрдпрд╛ред
рдореИрдВ рдЗрд╕реЗ kubeadm v1.7 рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рднреА рджреЗрдЦ рд░рд╣рд╛ рд╣реВрдВ - рдпрд╣ рдиреЛрдбреНрд╕ рдХреЛ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд╢рд╛рдорд┐рд▓ рд╣реЛрдиреЗ рд╕реЗ рд░реЛрдХ рд░рд╣рд╛ рд╣реИ
рдореЗрд░реА рд╕реНрдерд╛рдкрдирд╛ рдХреЗ рд▓рд┐рдП рд╡рд╣реА рддреНрд░реБрдЯрд┐ред v1.6.5 рдФрд░ 1.6.7 рдХреЗ рд╕рд╛рде рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВ рдпрд╣ рдареАрдХ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рд╡рд╣реА рд╕рдорд╕реНрдпрд╛ рд╣реИред
.
( kubeadm init
рдареАрдХ рд▓рдЧрддрд╛ рд╣реИ)
ns2 ~ # kubeadm init
[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters.
[init] Using Kubernetes version: v1.7.3
[init] Using Authorization modes: [Node RBAC]
[preflight] Running pre-flight checks
[preflight] WARNING: docker version is greater than the most recently validated version. Docker version: 17.03.1-ce. Max validated version: 1.12
[preflight] WARNING: no supported init system detected, skipping checking for services
[preflight] WARNING: no supported init system detected, skipping checking for services
[preflight] WARNING: no supported init system detected, skipping checking for services
[preflight] WARNING: socat not found in system path
[preflight] No supported init system detected, won't ensure kubelet is running.
[certificates] Generated CA certificate and key.
[certificates] Generated API server certificate and key.
[certificates] API Server serving cert is signed for DNS names [ns2 kubernetes kubernetes.default kubernetes.default.svc kubernetes.default.svc.cluster.local] and IPs [10.96.0.1 ip_of_my_server]
[certificates] Generated API server kubelet client certificate and key.
[certificates] Generated service account token signing key and public key.
[certificates] Generated front-proxy CA certificate and key.
[certificates] Generated front-proxy client certificate and key.
[certificates] Valid certificates and keys now exist in "/etc/kubernetes/pki"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/controller-manager.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/scheduler.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/admin.conf"
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf"
[apiclient] Created API client, waiting for the control plane to become ready
[apiclient] All control plane components are healthy after 36.004283 seconds
[token] Using token: 62af23.9fba33a48799d425
[apiconfig] Created RBAC rules
[addons] Applied essential addon: kube-proxy
[addons] Applied essential addon: kube-dns
Your Kubernetes master has initialized successfully!
To start using your cluster, you need to run (as a regular user):
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
You should now deploy a pod network to the cluster.
Run "kubectl apply -f [podnetwork].yaml" with one of the options listed at:
http://kubernetes.io/docs/admin/addons/
You can now join any number of machines by running the following on each node
as root:
kubeadm join --token [some string] [ip_of_my_server]:6443
( kubeadm join
рднреА рдареАрдХ рд▓рдЧрддрд╛ рд╣реИ)
h1 ~ # kubeadm join --token [some string] [ip_of_my_server]:6443 --skip-preflight-checks
[kubeadm] WARNING: kubeadm is in beta, please do not use it for production clusters.
[preflight] Skipping pre-flight checks
[discovery] Trying to connect to API Server "192.168.0.254:6443"
[discovery] Created cluster-info discovery client, requesting info from "https://192.168.0.254:6443"
[discovery] Cluster info signature and contents are valid, will use API Server "https://192.168.0.254:6443"
[discovery] Successfully established connection with API Server "192.168.0.254:6443"
[bootstrap] Detected server version: v1.7.3
[bootstrap] The server supports the Certificates API (certificates.k8s.io/v1beta1)
[csr] Created API client to obtain unique certificate for this node, generating keys and certificate signing request
[csr] Received signed certificate from the API server, generating KubeConfig...
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf"
Node join complete:
* Certificate signing request sent to master and response
received.
* Kubelet informed of new secure connection details.
Run 'kubectl get nodes' on the master to see this machine join.
(рд▓реЗрдХрд┐рди kubectl get nodes
рд╡рд┐рдлрд▓ рд░рд╣рддрд╛ рд╣реИ)
byungnam2<strong i="17">@ns2</strong> ~ $ kubectl get nodes
Unable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes")
рдЖрдк рдХреА рдХреНрдпрд╛ рдЬрд╝рд░реВрд░рдд рд╣реИ $KUBECONFIG
рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ /etc/kubernetes/kubelet.conf
?
export KUBECONFIG=/etc/kubernetes/kubelet.conf
kubectl get nodes
@liggitt рдЬрдм рдореИрдВрдиреЗ $KUBECONFIG
рд╕реЗ /etc/kubernetes/kubelet.conf
, рддреЛ рдЕрдм рдпрд╣ рдореБрдЭреЗ рдЯрд╛рдЗрдордЖрдЙрдЯ рддреНрд░реБрдЯрд┐ рджреЗрддрд╛ рд╣реИред
ns2 ~ # ./kubernetes/kubernetes/server/bin/kubectl get nodes
Error from server (ServerTimeout): the server cannot complete the requested operation at this time, try again later (get nodes)
рдФрд░ рдЕрдм рдореИрдВ рдЪрд╛рд╣рддрд╛ рд╣реВрдВ рдХрд┐ $KUBECONFIG
рдХрд╣рд╛рдВ рд╕реЗ рдЖрдпрд╛ рдХреНрдпреЛрдВрдХрд┐ рдореЗрд░реЗ рджреНрд╡рд╛рд░рд╛ рд╕рдВрджрд░реНрднрд┐рдд рдореИрдиреБрдЕрд▓ рдореЗрдВ рдРрд╕рд╛ рдХреЛрдИ рдХрдерди рдирд╣реАрдВ рд╣реИред
рдиреЛрдб рдЬреЙрдЗрди рдХрдорд╛рдВрдб рдХреЗ рдЖрдЙрдЯрдкреБрдЯ рд╕реЗ:
[kubeconfig] Wrote KubeConfig file to disk: "/etc/kubernetes/kubelet.conf"
рдХреБрдмреЗрджрдо рдХреЗ рд╕рд╛рде рдЦреЗрд▓рддреЗ рд╕рдордп рдПрдХ рд╣реА рд╕рдорд╕реНрдпрд╛ рдХрд╛ рд╕рд╛рдордирд╛ рдХрд░рдирд╛ рдкрдбрд╝рд╛ред
рдХреБрдЫ рд╕рдордп рдХреЗ рд▓рд┐рдП kubeadm init
рдФрд░ kubeadm reset
рдХреЗ рдмрд╛рдж, рдХреНрдпреВрдмрд▓реЗрдЯ рдПрдкрд┐рд╕рд░реНрд╡рд░ рдХреЗ рд╕рд╛рде рд╕рдВрдЪрд╛рд░ рдХрд░рдиреЗ рдореЗрдВ рд╡рд┐рдлрд▓ рд╣реЛ рдЬрд╛рдПрдЧрд╛ рдХреНрдпреЛрдВрдХрд┐ certificate signed by unknown authority
(рдХреНрдпреВрдмрд▓реЗрдЯ рд▓реЙрдЧ рдореЗрдВ)ред рдФрд░ kubeadm init
рд╣рдореЗрд╢рд╛ рдХреЗ рд▓рд┐рдП рдмреНрд▓реЙрдХ рднреАред
рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ /run/kubernetes/
рдХреЛ рд╣рдЯрд╛рдиреЗ рдХреЗ рдмрд╛рдж, рд╕рднреА рдЪреАрдЬреЗрдВ рд╡рд╛рдкрд╕ рдЖ рдЬрд╛рддреА рд╣реИрдВред рд╣реЛ рд╕рдХрддрд╛ рд╣реИ рдХрд┐ kubeadm reset
рдЪрд▓рд╛рддреЗ рд╕рдордп рдкреНрд░рдорд╛рдгрдкрддреНрд░реЛрдВ рдХреА рд╕рдлрд╛рдИ рдореЗрдВ рд╕рдорд╕реНрдпрд╛ рд╣реЛ?
/рдХреНрд╖реЗрддреНрд░ рдХреБрдмреЗрджрдореЛ
рдореИрдВ рдХреБрдмреЗрджрдо 1.8 рдкрд░ рд╣реВрдВ рдФрд░ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рдЕрднреА рднреА рд╣реЛрддреА рд╣реИред
ubuntu@ip-172-31-9-157:~$ kubeadm version
kubeadm version: &version.Info{Major:"1", Minor:"8", GitVersion:"v1.8.0", GitCommit:"6e937839ac04a38cac63e6a7a306c5d035fe7b0a", GitTreeState:"clean", BuildDate:"2017-09-28T22:46:41Z", GoVersion:"go1.8.3", Compiler:"gc", Platform:"linux/amd64"}
ubuntu@ip-172-31-9-157:~$
ubuntu@ip-172-31-9-157:~$
ubuntu@ip-172-31-9-157:~$ kubectl get nodes
Unable to connect to the server: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes")
ubuntu@ip-172-31-9-157:~$
ubuntu@ip-172-31-9-157:~$
ubuntu@ip-172-31-9-157:~$
рдореИрдВрдиреЗ рдореИрдиреНрдпреБрдЕрд▓ рд░реВрдк рд╕реЗ /var/run/kubernetes
рдЪреЗрдХ рдХрд┐рдпрд╛ рд╣реИред рдЬрдм рдореИрдВ kubeadm reset
рджреМрдбрд╝рд╛ рддреЛ рдЗрд╕реЗ рд╕рд╛рдл рдХрд░ рджрд┐рдпрд╛ рдЧрдпрд╛ред рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдирд╣реАрдВ рд╣реИ рдХрд┐ рд╡рд╛рд╕реНрддрд╡рд┐рдХ рд╕рдорд╕реНрдпрд╛ рдХреНрдпрд╛ рд╣реИред
рдзреНрдпрд╛рди рджреЗрдВ: "рдЕрдкрдиреЗ рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдПрдХ рдирд┐рдпрдорд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ)"
[ рд░реВрдЯ@ рдорд╛рд╕реНрдЯрд░1 ~]# рдХреБрдмреЗрдХреНрдЯрд▓ рдХреЛ рдиреЛрдбреНрд╕ рдорд┐рд▓рддреЗ рд╣реИрдВ
рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде: x509: рдЕрдЬреНрдЮрд╛рдд рдкреНрд░рд╛рдзрд┐рдХрд╛рд░реА рджреНрд╡рд╛рд░рд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ (рд╕рдВрднрд╡рддрдГ "рдХреНрд░рд┐рдкреНрдЯреЛ/рдЖрд░рдПрд╕рдП: рд╕рддреНрдпрд╛рдкрди рддреНрд░реБрдЯрд┐" рдХреЗ рдХрд╛рд░рдг рдЙрдореНрдореАрджрд╡рд╛рд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдорд╛рдгрдкрддреНрд░ "рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕" рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп)
[ рд░реВрдЯ@рдорд╛рд╕реНрдЯрд░1 ~]# рд╕реБ - рд░реЗрдЧреБрд▓рд░_рдпреВрд╕рд░
[ Regular_user@master1 ~]$ mkdir -p $HOME/.kube
[ regular_user@master1 ~]$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[ regular_user@master1 ~]$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
[Regular_user @master1 ~]$ kubectl рдХреЛ рдиреЛрдбреНрд╕ рдорд┐рд▓рддреЗ рд╣реИрдВ
рдирд╛рдо рд╕реНрдерд┐рддрд┐ рднреВрдорд┐рдХрд╛рдПрдБ рдЖрдпреБ рд╕рдВрд╕реНрдХрд░рдг
Master1.virti.corp рдирд╣реАрдВ рддреИрдпрд╛рд░ рдорд╛рд╕реНрдЯрд░ 6m v1.8.1
Master2.virti.corp рддреИрдпрд╛рд░ рдирд╣реАрдВ
@ рдЬреЗрдлрдмреНрд░ 13 рдзрдиреНрдпрд╡рд╛рджред рдпрд╣ рдХрд╛рдо рдХрд░рддрд╛ рд╣реИред
рдХреГрдкрдпрд╛ рдЗрд╕ рд╕рдорд╛рдзрд╛рди рдХреЗ рд╕рд╛рде рдбреЙрдХреНрд╕ рдЕрдкрдбреЗрдЯ рдХрд░реЗрдВ
рдпрджрд┐ рдЖрдк kubeadm рд░реАрд╕реЗрдЯ рдХрд░рддреЗ рд╣реИрдВ рдФрд░ рдлрд┐рд░ kubeadm init рдлрд┐рд░ рд╕реЗ рдХрд░рддреЗ рд╣реИрдВ, рдФрд░ рдпрджрд┐ рдЖрдкрдиреЗ рдХрднреА рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рдЪрд▓рд╛рдпрд╛ рд╣реИ, рддреЛ рдЖрдкрдХреЛ рдирдИ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░реЗрд╢рди рдкреНрд░рд╛рдкреНрдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЗрд╕реЗ рдлрд┐рд░ рд╕реЗ (рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ) рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
рддрдм рдЖрдк рдЕрднреА рднреА рд░реВрдЯ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓ рд╕рдХрддреЗ рд╣реИрдВред
рдпрджрд┐ рдкрд╛рдпрд╛ рдЬрд╛рддрд╛ рд╣реИ рдХрд┐ рдпрджрд┐ рдЖрдк рдХрднреА рднреА "sudo kubeadm reset" рдЪрд▓рд╛рдиреЗ рдЬрд╛ рд░рд╣реЗ рд╣реИрдВ, рддреЛ рдЖрдкрдХреЛ рдХреИрд╢реНрдб dirs рдХреЛ рд╕рд╛рдлрд╝ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдЕрдкрдирд╛ .kube dir рдирд┐рдХрд╛рд▓рдирд╛ рд╣реЛрдЧрд╛ред
рдЙрд╕рдХреЗ рдмрд╛рдж рдЖрдк @petersonwsantos . рдХреЛ рдлреЙрд▓реЛ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ
рдУрд╣, KUBECONFIG рдХреЛ рд╕реЗрдЯ рдХрд░рдирд╛ рд╕реБрдирд┐рд╢реНрдЪрд┐рдд рдХрд░реЗрдВ рдЬреЛ рднреА рдЖрдк (рдкреБрдирдГ) рдЕрдкрдиреА рдХреЙрдиреНрдлрд╝рд┐рдЧ рдлрд╝рд╛рдЗрд▓ рдХреЛ рдирд╛рдо рджреЗрдВ рдЬреИрд╕реЗ $HOME/.kube/config
рдЯреИрдВрдХ рдлреНрд░реЗрдВрдб рдЗрдВрдЯ рдЯреНрд░реВред
рдирд┐рдореНрди рдкрдВрдХреНрддрд┐рдпреЛрдВ рдХреЗ рд░реВрдк рдореЗрдВ рдХреЙрдиреНрдлрд╝рд┐рдЧрд░ рдХрд░реЗрдВ, _$kubectl рдиреЛрдбреНрд╕_ рдХрд╛рд░реНрдп рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ:
_рд░реВрдЯ:~/k8s# рдХреИрдЯ 04-config.sh
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
sudo chmod 777 $HOME/.kube/config
рдирд┐рд░реНрдпрд╛рдд KUBECONFIG=/etc/kubernetes/kubelet.conf
рдирд┐рд░реНрдпрд╛рдд KUBECONFIG=/home/ubuntu/.kube/config
Kubectl рдиреЛрдбреНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
рдпрд╣ рд╕рдВрднрд╡ рд╣реИ рдХреНрдпреЛрдВрдХрд┐ рдЖрдкрдХреЗ рдкрд╛рд╕ рдПрдХ рдмрд╣реБ рдорд╛рд╕реНрдЯрд░ рд╕реЗрдЯрдЕрдк рд╣реИ рдФрд░ рдкреНрд░рддреНрдпреЗрдХ рдорд╛рд╕реНрдЯрд░ рдкрд░ /etc/kubernetes/pki/ca.*
рдЙрддреНрдкрдиреНрди рдХрд┐рдпрд╛ рд╣реИред рдЙрдиреНрд╣реЗрдВ рдкрд╣рд▓реЗ рдЧреБрд░реБ рд╕реЗ рджреВрд╕рд░реЗ рдЧреБрд░реБ рдореЗрдВ рдХреЙрдкреА рдХрд░рдиреЗ рдХреЗ рдмрдЬрд╛рдпред
рдореБрдЭреЗ рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕ рдкреНрд░рд▓реЗрдЦрди рдореЗрдВ рд╕рдорд╛рдзрд╛рди рдорд┐рд▓рд╛
рдкреНрд░рд▓реЗрдЦрди рдХрд╛ рдкрд╛рд▓рди рдХрд░рддреЗ рд╕рдордп рдЗрд╕ рдЖрджреЗрд╢ рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ .kube рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдмрдирд╛рдирд╛ рди рднреВрд▓реЗрдВ
mkdir -p $HOME/.kube
рдХреНрдпреЛрдВрдХрд┐ рдЬреИрд╕рд╛ рдХрд┐ рдЖрдкрдХреЛ рдЗрд╕ рдЖрджреЗрд╢ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ, рдпрд╣ .kube рдирд┐рд░реНрджреЗрд╢рд┐рдХрд╛ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░ рджреЗрдЧрд╛
mv $HOME/.kube $HOME/.kube.bak
https://kubernetes.io/docs/setup/inрдирд┐рд░реНрднрд░/troubleshooting-kubeadm/
рдЕрдиреНрдп рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЬрд┐рдирдХреЗ рдкрд╛рд╕ рдпрд╣ рд╕рдорд╕реНрдпрд╛ рд╣реЛ рд╕рдХрддреА рд╣реИ, рд╡реЗ /root/.kube рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рдмреИрдХрдЕрдк рд╕реНрдерд╛рди рдкрд░ рд▓реЗ рдЬрд╛рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ рдпрджрд┐ рдпрд╣ рдореМрдЬреВрдж рд╣реИ рдФрд░ рдкреБрдирдГ рдкреНрд░рдпрд╛рд╕ рдХрд░реЗрдВред рдПрдХ рдХреИрд╢реНрдб рд░реВрдЯ рд╕рдВрд╕реНрдХрд░рдг рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдирд╛ рдмрд╣реБрдд рд╕рдВрднрд╡ рд╣реИ рдЬреЛ рдЕрдм рдорд╛рдиреНрдп рдирд╣реАрдВ рд╣реИ, рдХреНрдпреЛрдВрдХрд┐ рдЖрдк рдХреБрдмреЗрджрдо рдХреЛ рд╕реВрдбреЛ рдХреЗ рд░реВрдк рдореЗрдВ рдЪрд▓рд╛рдПрдВрдЧреЗред
рдореЗрд░реА рд╕рдорд╕реНрдпрд╛ рдпрд╣ рдереА рдХрд┐ рдореЗрд░реЗ рдкрд╛рд╕ KubeEdge рдЧреЗрдЯрд┐рдВрдЧ рд╕реНрдЯрд╛рд░реНрдЯреЗрдб рдЧрд╛рдЗрдб рдХреЗ рджреМрд░рд╛рди рдмрдирд╛рдП рдЧрдП рдХрд╕реНрдЯрдо рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдереЗред рдПрд╕рдПрд╕рдПрд▓ рдФрд░ рдХреБрдмреАрдЬ рдХреЗ рд╕рд╛рде рдЦрд┐рд▓рд╡рд╛рдбрд╝ рдирд╣реАрдВ рдХрд░рдиреЗ рд╕реЗ рдпрд╣ рдХрд╛рдо рдХрд░ рдЧрдпрд╛ред
рдзреНрдпрд╛рди рджреЗрдВ: "рдЕрдкрдиреЗ рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдПрдХ рдирд┐рдпрдорд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ)"
[ рд░реВрдЯ@ рдорд╛рд╕реНрдЯрд░1 ~]# рдХреБрдмреЗрдХреНрдЯрд▓ рдХреЛ рдиреЛрдбреНрд╕ рдорд┐рд▓рддреЗ рд╣реИрдВ
рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде: x509: рдЕрдЬреНрдЮрд╛рдд рдкреНрд░рд╛рдзрд┐рдХрд╛рд░реА рджреНрд╡рд╛рд░рд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ (рд╕рдВрднрд╡рддрдГ "рдХреНрд░рд┐рдкреНрдЯреЛ/рдЖрд░рдПрд╕рдП: рд╕рддреНрдпрд╛рдкрди рддреНрд░реБрдЯрд┐" рдХреЗ рдХрд╛рд░рдг рдЙрдореНрдореАрджрд╡рд╛рд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдорд╛рдгрдкрддреНрд░ "рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕" рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп)[ рд░реВрдЯ@рдорд╛рд╕реНрдЯрд░1 ~]# рд╕реБ - рд░реЗрдЧреБрд▓рд░_рдпреВрд╕рд░
[ Regular_user@master1 ~]$ mkdir -p $HOME/.kube
[ regular_user@master1 ~]$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[ regular_user@master1 ~]$ sudo chown $(id -u):$(id -g) $HOME/.kube/config
рдпрд╣ рдХрд╛рдоред рд╕рд┐рд╡рд╛рдп рдЗрд╕рдХреЗ рдХрд┐ рдореБрдЭреЗ рдЕрдкрдирд╛ KUBECONFIG рдлрд┐рд░ рд╕реЗ рд╕реЗрдЯ рдХрд░рдирд╛ рдкрдбрд╝рд╛ рдХреНрдпреЛрдВрдХрд┐ рд╡рд╣ рдмрджрд▓ рдЧрдпрд╛ рдерд╛
рдирд┐рд░реНрдпрд╛рдд KUBECONFIG=$HOME/.kube/config
[Regular_user @master1 ~]$ kubectl рдХреЛ рдиреЛрдбреНрд╕ рдорд┐рд▓рддреЗ рд╣реИрдВ
рдирд╛рдо рд╕реНрдерд┐рддрд┐ рднреВрдорд┐рдХрд╛рдПрдБ рдЖрдпреБ рд╕рдВрд╕реНрдХрд░рдг
Master1.virti.corp рдирд╣реАрдВ рддреИрдпрд╛рд░ рдорд╛рд╕реНрдЯрд░ 6m v1.8.1
Master2.virti.corp рддреИрдпрд╛рд░ рдирд╣реАрдВ 4m v1.8.1
рдЖрдк рдХреА рдХреНрдпрд╛ рдЬрд╝рд░реВрд░рдд рд╣реИ
$KUBECONFIG
рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ/etc/kubernetes/kubelet.conf
?export KUBECONFIG=/etc/kubernetes/kubelet.conf kubectl get nodes
рдпрд╣ рдореЗрд░реЗ рд▓рд┐рдП рдХрд╛рдо рдХрд░рддрд╛ рд╣реИ, рдмрд╣реБрдд рдмрд╣реБрдд рдзрдиреНрдпрд╡рд╛рджред
рдирд┐рд░реНрдпрд╛рдд KUBECONFIG=/etc/kubernetes/kubelet.conf
Kubectl рдиреЛрдбреНрд╕ рдкреНрд░рд╛рдкреНрдд рдХрд░реЗрдВ
рдореЗрд░реА рдУрд░ рд╕реЗ рдХрд╛рдо рд╣реИ
рдзреНрдпрд╛рди рджреЗрдВ: "рдЕрдкрдиреЗ рдХреНрд▓рд╕реНрдЯрд░ рдХрд╛ рдЙрдкрдпреЛрдЧ рд╢реБрд░реВ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЪрд▓рд╛рдиреЗ рдХреА рдЖрд╡рд╢реНрдпрдХрддрд╛ рд╣реИ (рдПрдХ рдирд┐рдпрдорд┐рдд рдЙрдкрдпреЛрдЧрдХрд░реНрддрд╛ рдХреЗ рд░реВрдк рдореЗрдВ)"
[ рд░реВрдЯ@ рдорд╛рд╕реНрдЯрд░1 ~]# рдХреБрдмреЗрдХреНрдЯрд▓ рдХреЛ рдиреЛрдбреНрд╕ рдорд┐рд▓рддреЗ рд╣реИрдВ
рд╕рд░реНрд╡рд░ рд╕реЗ рдХрдиреЗрдХреНрдЯ рдХрд░рдиреЗ рдореЗрдВ рдЕрд╕рдорд░реНрде: x509: рдЕрдЬреНрдЮрд╛рдд рдкреНрд░рд╛рдзрд┐рдХрд╛рд░реА рджреНрд╡рд╛рд░рд╛ рд╣рд╕реНрддрд╛рдХреНрд╖рд░рд┐рдд рдкреНрд░рдорд╛рдгрдкрддреНрд░ (рд╕рдВрднрд╡рддрдГ "рдХреНрд░рд┐рдкреНрдЯреЛ/рдЖрд░рдПрд╕рдП: рд╕рддреНрдпрд╛рдкрди рддреНрд░реБрдЯрд┐" рдХреЗ рдХрд╛рд░рдг рдЙрдореНрдореАрджрд╡рд╛рд░ рдкреНрд░рд╛рдзрд┐рдХрд░рдг рдкреНрд░рдорд╛рдгрдкрддреНрд░ "рдХреБрдмреЗрд░рдиреЗрдЯреНрд╕" рдХреЛ рд╕рддреНрдпрд╛рдкрд┐рдд рдХрд░рдиреЗ рдХрд╛ рдкреНрд░рдпрд╛рд╕ рдХрд░рддреЗ рд╕рдордп)[ рд░реВрдЯ@рдорд╛рд╕реНрдЯрд░1 ~]# рд╕реБ - рд░реЗрдЧреБрд▓рд░_рдпреВрд╕рд░
[ Regular_user@master1 ~]$ mkdir -p $HOME/.kube
[ regular_user@master1 ~]$ sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
[ regular_user@master1 ~]$ sudo chown $(id -u):$(id -g) $HOME/.kube/config[Regular_user @master1 ~]$ kubectl рдХреЛ рдиреЛрдбреНрд╕ рдорд┐рд▓рддреЗ рд╣реИрдВ
рдирд╛рдо рд╕реНрдерд┐рддрд┐ рднреВрдорд┐рдХрд╛рдПрдБ рдЖрдпреБ рд╕рдВрд╕реНрдХрд░рдг
Master1.virti.corp рдирд╣реАрдВ рддреИрдпрд╛рд░ рдорд╛рд╕реНрдЯрд░ 6m v1.8.1
Master2.virti.corp рддреИрдпрд╛рд░ рдирд╣реАрдВ 4m v1.8.1
рдпрд╣ рдХрд╛рдо рдХрд┐рдпрд╛!
kubeadm init
рдЖрдкрдХреЛ $HOME/.kube рдлрд╝реЛрд▓реНрдбрд░ рдХреЛ рд╣рдЯрд╛рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ рдирдпрд╛ рдмрдирд╛рдирд╛ рд╣реЛрдЧрд╛:
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
sudo chown $(id -u):$(id -g) $HOME/.kube/config
рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА
рдЖрдк рдХреА рдХреНрдпрд╛ рдЬрд╝рд░реВрд░рдд рд╣реИ
$KUBECONFIG
рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ/etc/kubernetes/kubelet.conf
?