Red de conocimiento del abogados - Ley de patentes - kubernetes: recuerde usar kubeadm para crear un clúster de kubernetes v1.9.0

kubernetes: recuerde usar kubeadm para crear un clúster de kubernetes v1.9.0

Objetivo: utilizar kubeadm para crear un clúster de kubernetes v1.9.0

Sistema operativo: Ubuntu 16.04.3

Ubuntu-001: 192.168.1.110

ubuntu-002: 192.168.1.106

Resumen de pasos:

1. Instalar Docker CE

2. Instalar kubeadm, kubectl, kubelet

3. Utilice kubeadm init para inicializar el clúster de kubernetes

4. Utilice kubeadm join para agregar nodos al clúster

Pasos específicos:

Instalar en Ubuntu 16.04 Docker CE (use apt-get para instalar)

#?paso?1:?¿Instalar algunas herramientas necesarias del sistema?

sudo?apt-get?update ?

sudo?apt-get?-y?install?apt-transport-mon?

#?step?2:?¿Instalar certificado GPG?

curl?-fsSL/ docker-ce/linux/ubuntu/gpg?|?sudo?apt-key?add?-?

#?Paso?3:?¿Escribir información de origen del software?

sudo ?add-apt-repository?"deb?[arch=amd64]?/docker-ce/linux/ubuntu?$(lsb_release?-cs)stable"?

#?Step? 4:?Actualizar e instalar ?Docker-CE?

sudo?apt-get?-y?update?

sudo?apt-get?-y?install?docker-ce ?

#?Instalar la versión especificada de Docker-CE:?

#?Paso?1:?Buscar la versión de Docker-CE:?

#?apt-cache? madison?docker-ce?

#docker-ce?|?17.03.1~ce-0~ubuntu-xenial?|?/docker-ce/linux/ubuntu?xenial /stable?amd64?Packages ?

#docker-ce?|?17.03.0~ce-0~ubuntu-xenial?|?/docker-ce/linux/ubuntu?xenial/stable?amd64? ¿Paquetes?

#?Paso?2: Instalar la versión especificada de Docker-CE: (¿VERSIÓN?Por ejemplo, 17.03.1~ce-0~ubuntu-xenial arriba).

#?sudo? apt-get?-y?install?docker-ce=[VERSIÓN]?

Instalar kubelet kubeadm y kubectl

Dado que Google está bloqueado en China, es imposible seguir la documentación oficial. Ahora agregue la fuente de aliyun para instalar kubelet kubeadm y kubectl con éxito.

#?paso?1: ¿Instalar algunas herramientas necesarias del sistema?

apt-get?update?amp;amp;?apt-get?install?-y?apt-transport - /kubernetes/apt/doc/apt-key.gpg?|?apt-key?add?-?

#?step?3: ¿Actualizar la información de origen del software?

cat ? lt;lt;?EOF?gt;/etc/apt/sources.list.d/kubernetes.list?

deb?/kubernetes/apt/?kubernetes-xenial?main?

EOF?

#?paso?4: ¿Actualizar e instalar kubelet?kubeadm?kubectl?

apt-get?update?

apt-get ? install?-y?kubelet?kubeadm?kubectl?

#?O instalar la versión especificada kubelet?kubeadm?kubectl?

apt-get?install?-y?kubelet=1.9 .6-00?kubeadm=1.9.6-00?kubectl=1.9.6-00?

#?step?5: ¿Configurar kubelet para que se inicie automáticamente e iniciar kubelet?

systemctl?enable?kubelet?amp;amp;?systemctl?start?kubelet?

Utilice kubeadm para inicializar el clúster de kubernetes

Si está en China, debe preparar cada imagen de Kubernetes por adelantado, específicamente Referencia: ¿Cómo obtener hábilmente imágenes de Kubernetes en China?

root@Ubuntu-001: ~#?kubeadm?init?--kubernetes-version=v1.9.0?--pod-network-cidr=10.244.0.0/16?

[init]?Usando?Kubernetesversión:?v1.9.0?

[init]?Usando?Modos de autorización:?[Nodo?RBAC]?

[verificación previa]?Ejecución de verificación previa ?verificaciones.?

?[ADVERTENCIA?Verificación del sistema]: ?la?versión?de?docker?es?mayor?que?la?versión?validadada?más?reciente.?Versión?de?Docker: ?17.12.0-ce.? ¿Max?versiónvalidada:?17.03?

?[ADVERTENCIA?FileExisting-crictl]:?crictl?¿no?encontrado?en?la ruta del sistema?

[verificación previa]?¿Iniciando?elkubelet? ¿servicio?

[certificados]?¿certificado?ca?y?clave.?

[certificados]?servidor?generado?y?clave.?

[certificados]?apiserverserving?cert?está?firmado?para?DNS?nombres?[ubuntu-001?kubernetes?kubernetes.defaultkubernetes.default.svc?kubernetes.default.svc.cluster.local]?e?IP?[10.96 .0.1192.168.1.110]?

[certificados]?Generatedapiserver-kubelet-client?certificado?y?clave.?

[certificados]?Generado?sakey?y?público ?clave.?

[certificados]?Generatedfront-proxy-ca?certificado?y?clave.?

[certificados]?Generatedfront-proxy-client?certificado?y?clave .?

[certificados]?Certificados y?claves válidos?ahora?exist?en?"/etc/kubernetes/pki"?

[kubeconfig]?Escribió?KubeConfigfile?to ?disk:?"admin.conf"?

[kubeconfig]?Wrote?KubeConfigfile?to?disk:?"kubelet.conf"?

[kubeconfig]?Wrote?KubeConfigfile ?al?disco:?"controller-manager.conf"?

[kubeconfig]?Escribió?KubeConfigfile?to?disk:?"scheduler.conf"?

[plano de control] ?Escribió?StaticPod?manifest?for?component?kube-apiserver?to"/etc/kubernetes/manifests/kube-apiserver.yaml"?

[plano de control]?Escribió?StaticPod?manifest?for? componente?kube-controller-manager?to?"/etc/kubernetes/manifests/kube-controller-manager.yaml"?

[plano de control]?Escribió?StaticPod?manifest?for?component?kube- Scheduler?to"/etc/kubernetes/manifests/kube-scheduler.yaml"?

[etcd]?Wrote?Static?Podmanifest?for?a?local?etcd?instance?to?"/etc /kubernetes/manifests/etcd.yaml"?

[init]?¿Esperando?que?elkubelet?arranque?el?control?pl

¿un?como?Pods?estáticos?del?directorio"/etc/kubernetes/manifests".?

[init]?Esto?podría?tomar?un?minuto?o?más?si?el?control? ¿Las?imágenes?del?avión?deben?ser?extraídas.?

[apiclient]?Todos?los?componentes?del?plano?de?control?están?en buen estado?después?38.006067?segundos?

[uploadconfig] ¿Almacenar la configuración utilizada en ConfigMap? kubeadm-config en el espacio de nombres del sistema kube.

[markmaster] ?agregando?una?etiqueta?y?una?corrección?

[markmaster]?Masterubuntu-001?corriente?y?etiquetada?con?clave/valor:node-role.kubernetes.io/ master=""?

¿[bootstraptoken]?Usando?token:3ef896.6fe4c166c546aa89?

¿[bootstraptoken]?Reglas RBAC configuradas?para?permitir?Node?Bootstrap?tokens?tokens? ¿Publicar CSR en orden para que los nodos obtengan credenciales de certificado a largo plazo?

¿[bootstratoken]?reglas RBAC configuradas para permitir que el controlador csrapprover automáticamente?

¿[bootstratoken]? ¿Creando? el "cluster-info"? ConfigMap? en? el? "kube-public"? espacio de nombres?

[complementos]?Applied?essentialaddon:?kube -dns?

[complementos]?Aplicado?essentialaddon:?kube-proxy?

¿Tu?Kubernetes?master?¿se ha inicializado?con éxito?

¿Para? comenzar?a?usar?su?clúster,?necesita?ejecutar?lo?siguiente?como?un?usuario?normal:?

?mkdir?-p?$HOME/.kube?

?sudo

?cp?-i?/etc/kubernetes/admin.conf$HOME/.kube/config?

?sudo?chown?$(id?-u):$(id?-g)$ HOME/.kube/config?

¿Deberías?ahora?implementar?una?podnetwork?en?el?clúster.?

¿Ejecutar?"kubectl?apply?-f[ podnetwork].yaml"?con?una?de?las?opciones?enumeradas?en:?

?/coreos/flannel/v0.9.1/Documentation/kube-flannel.yml?

Una vez que la red pod se haya instalado correctamente, puede ejecutar:

kubectl?get?pods?--all-namespaces?-o?wide?

Utilice kubeadm join para unir el nodo Ubuntu-002 al clúster

Docker, kubeadm, kubectl y kubelet están instalados en el nodo Ubuntu-002 y la imagen de Kubernetes se ha extraído localmente.

De acuerdo con el comando kubeadm join finalmente generado por kubeadm init para unirse al clúster, agregue el nodo Ubuntu-002 al clúster para convertirse en un nodo

root@Ubuntu-002: ~#?kubeadm?join? --token?6aefa6.a55aba3998eda615?192.168.1.110:6443--discovery-token-ca-cert-hashsha256:87c51fa417666a61195d7540c965a164f1e504fe0339fc7c107e3 6b0b26e31a7 ?

[verificación previa]?¿Ejecutando comprobaciones previas al vuelo? .?

?[ADVERTENCIA?Verificación del sistema]: ?la?versión?de?docker?es?mayor?que?la?versión?validadada?más?reciente?.?Versión?de?docker:?17.12.0-ce.?Max? ¿Versión validada:?17.03?

?[ADVERTENCIA?FileExisting-crictl]:?crictl?¿no?encontrado?en?ruta del sistema?

[descubrimiento]?Intentando?conectarse ?API?Server?"192.168.1.110 :6443"?

[discovery]?Createdcluster-info?discovery?client,?solicitando?info?from"es/admin.conf?.?

kubectl?--kubeconfig ?./admin.conf?get?nodes?

Por ejemplo:

De lo contrario aparecerá

¿Eliminar? nodo ubuntu-002 del clúster

p>

1. kubectl?drain?ubuntu-002?--delete-local-data?--force--ignore-daemonsets?--kubeconfig?./admin .conf?

2 , kubectl?delete?node?ubuntu-002?--kubeconfig?admin.conf?

3. kubeadm?reset?