Kubernetes: kubeadm init . рдХреЗ рдмрд╛рдж x509 рдкреНрд░рдорд╛рдгрдкрддреНрд░ рдЬрд╛рд░реА рдХрд░рддрд╛ рд╣реИ

рдХреЛ рдирд┐рд░реНрдорд┐рдд 1 рдЬреБрд▓ре░ 2017  ┬╖  28рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ  ┬╖  рд╕реНрд░реЛрдд: kubernetes/kubernetes

рдмрдЧ рд░рд┐рдкреЛрд░реНрдЯ: (рдореБрдЭреЗ рд▓рдЧрддрд╛ рд╣реИ?)

рдХреНрдпрд╛ рд╣реБрдЖ :

рдореИрдВрдиреЗ Ubuntu 16.04 рдкрд░ рдирд┐рдореНрди рдЪрд░рдгреЛрдВ рдХреЛ рдЪрд▓рд╛рдпрд╛:

  1. sudo apt-get update
  2. sudo apt-get upgrade
  3. sudo su
  4. kubeadm reset
  5. kubeadm init --token [redacted] --apiserver-advertise-address=192.168.13.1 --pod-network-cidr=10.244.0.0/16
  6. exit
  7. mkdir -p $HOME/.kube
  8. sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
  9. sudo chown $(id -u):$(id -g) $HOME/.kube/config
  10. 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.7
  • OS (рдЬреИрд╕реЗ /etc/os-release рд╕реЗ): Ubuntu 16.04.2 LTS
  • рдХрд░реНрдиреЗрд▓ (рдЙрджрд╛рд╣рд░рдг uname -a ): рд▓рд┐рдирдХреНрд╕ рд░реЗрдбрд┐рдпрдо-рдирд┐рдпрдВрддреНрд░рдг 4.4.0-83-рдЬреЗрдиреЗрд░рд┐рдХ #106-рдЙрдмрдВрдЯреВ рдПрд╕рдПрдордкреА рд╕реЛрдо рдЬреВрди 26 17:54:43 рдпреВрдЯреАрд╕реА 2017 x86_64 x86_64 x86_64 рдЬреАрдПрдирдпреВ/рд▓рд┐рдирдХреНрд╕
arekubeadm sicluster-lifecycle

рд╕рдмрд╕реЗ рдЙрдкрдпреЛрдЧреА рдЯрд┐рдкреНрдкрдгреА

рдЖрдк рдХреА рдХреНрдпрд╛ рдЬрд╝рд░реВрд░рдд рд╣реИ $KUBECONFIG рдХреА рдУрд░ рдЗрд╢рд╛рд░рд╛ рдХрд░рддреЗ /etc/kubernetes/kubelet.conf ?

export KUBECONFIG=/etc/kubernetes/kubelet.conf
kubectl get nodes

рд╕рднреА 28 рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

@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 рддреИрдпрд╛рд░ рдирд╣реАрдВ4рдПрдо рд╡реА1.8.1

@ рдЬреЗрдлрдмреНрд░ 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

рдХреНрдпрд╛ рдпрд╣ рдкреГрд╖реНрда рдЙрдкрдпреЛрдЧреА рдерд╛?
0 / 5 - 0 рд░реЗрдЯрд┐рдВрдЧреНрд╕

рд╕рдВрдмрдВрдзрд┐рдд рдореБрджреНрджреЛрдВ

sanjana-bhat picture sanjana-bhat  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

alexferl picture alexferl  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

sjenning picture sjenning  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

mml picture mml  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ

montanaflynn picture montanaflynn  ┬╖  3рдЯрд┐рдкреНрдкрдгрд┐рдпрд╛рдБ