Slik installerer du en Kubernetes-klynge på CentOS 7

Video: En rask forklaring på Docker og hva det kan gjøre for virksomheten Hvis du jobber innen IT, har du sannsynligvis hørt om Docker. Men i tilfelle du ikke er helt sikker på hva det er, her er en rask forklaring på teknologien og dens evner.

Kubernetes er et åpen kildekode-system som brukes til å automatisere distribusjon, skalering og styring av containeriserte applikasjoner. Kubernetes er enterprise-klar og kan installeres på forskjellige plattformer. Jeg har allerede berørt hvordan du får Kubernetes i gang på Ubuntu Server (se "Hvordan du raskt installerer Kubernetes på Ubuntu"). Denne gangen skal jeg lede deg gjennom prosessen med å sette opp en Kubernetes-klynge på CentOS 7. Dette gir en enestående en-to-trøkk for containertilføringen din.

Hva du trenger

Jeg skal demonstrere med tre CentOS 7-servere (på følgende IP-adresser):

  • kubemaster: 192.168.1.99
  • kube2: 192.168.1.109
  • kube3: 192.168.1.167

Sørg for å endre IP-adressene slik at de passer dine behov. Du trenger også root-tilgang på alle tre serverne. Jeg foreslår at du først tester dette på virtuelle maskiner, før du prøver installasjonen på produksjonsservere.

Med det sagt, la oss installere.

Konfigurasjon før installasjon

Det første du vil gjøre er å konfigurere / etc / hosts- filen, slik at hver maskin kan pinge hverandre via vertsnavn. Så på hver maskin, utgi su-kommandoen (for å endre til rotbrukeren) og rediger deretter filen med kommandoen nano / etc / hosts . På slutten av filen legger du til følgende (igjen, justerer IP-adressene slik at de passer dine behov):

 192.168.1.99 kubemaster 192.168.1.109 kube2 192.168.1.167 kube3 

Lagre og lukk den filen.

Deaktiver SELinux og bytt

Nå må vi deaktivere både SELinux og bytte. På alle tre maskiner utgir du følgende kommandoer:

 setenforce 0 sed -i - følger-symlinks 's / SELINUX = håndheve / SELINUX = deaktivert / g' / etc / sysconfig / selinux 

Deretter deaktiverer du bytte (på alle tre maskiner) med følgende kommando:

 bytte -a 

Vi må også sørge for at bytte ikke blir aktivert på nytt under en omstart på hver server. Åpne opp / etc / fstab og kommenter bytteoppføringen slik:

 # / dev / mapper / centos-swap swap swap er standard 0 0 

Aktiver br_netfilter

For vårt neste triks aktiverer vi br_netfilter-kjernemodulen på alle tre serverne. Dette gjøres med følgende kommandoer:

 modprobe br_netfilter echo '1'> / proc / sys / net / bridge / bridge-nf-call-iptables 

Installer Docker-ce

Det er på tide å installere nødvendig Docker-verktøy. På alle tre maskinene installerer du Docker-ce-avhengigheter med følgende kommando:

 yum install -y yum-utils enhet-mapper-persistent-data lvm2 

Deretter legger du til Docker-ce-depotet med kommandoen:

 yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo 

Installer Docker-ce med kommandoen:

 yum installere -y docker-ce 

Installer Kubernetes

Dette gjøres også på alle tre serverne. Først må vi opprette et depotoppføring for yum. For å gjøre dette må du utgi kommandoen nano /etc/yum.repos.d/kubernetes.repo og deretter legge til følgende innhold:

 kubernetes name = Kubernetes baseurl = https: //packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64 enabled = 1 gpgcheck = 1 repo_gpgcheck = 1 gpgkey = https: //packages.cloud.google. no / yum / doc / yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg 

Lagre og lukk den filen. Installer Kubernetes med kommandoen:

 yum installere -y kubelet kubeadm kubectl 

Når installasjonen er fullført, start alle tre maskinene på nytt. Så snart hver maskin har startet på nytt, logger du deg på og su til rotbrukeren.

Cgroup endres

Nå må vi sikre at både Docker-ce og Kubernetes tilhører den samme kontrollgruppen (cgroup). Som standard skal Docker allerede tilhøre cgroupfs (du kan sjekke dette med kommandodokeren info | grep -i cgroup ). Hvis du vil legge til Kubernetes til dette, gir du kommandoen:

 sed -i 's / cgroup-driver = systemd / cgroup-driver = cgroupfs / g' /etc/systemd/system/kubelet.service.d/10-kubeadm.conf 

Start systemdemon og kubelet-tjenesten på nytt med kommandoene:

 systemctl daemon-reload systemctl omstart kubelet 

Initialiser Kubernetes-klyngen

Vi er nå klare til å initialisere Kubernetes-klyngen. Dette gjøres på kubemaster (og bare på den maskinen). På kubemaster, gi kommandoen (igjen, juster IP-adressene for å passe dine behov):

 kubeadm init --apiserver-advert-address = 192.168.1.99 --pod-network-cidr = 192.168.1.0 / 16 

Når dette er fullført (det vil ta alt fra 30 sekunder til 5 minutter), skal utgangen inkludere sammenføyningskommandoen for nodene dine ( figur A ).

Figur A

Utdataene fra Kubernetes klyngeinitieringskommandoen.


Når dette er fullført, kan du gå over til kube2 og gi kommandoen (justere IP-adressen slik at den passer dine behov):

 kubeadm join 192.168.1.99:6443 - token TOKEN - disiscovery-token-ca-cert-hash DISCOVERY_TOKEN 

Hvor TOKEN og DISCOVERY_TOKEN er symbolene som vises etter at initialiseringskommandoen er fullført.

Konfigurere Kubernetes

Før Kubernetes kan brukes, må vi ta oss av litt konfigurasjon. Utsted følgende tre kommandoer (for å opprette en ny .kube-konfigurasjonskatalog, kopiere den nødvendige konfigurasjonsfilen og gi filen riktig eierskap):

 mkdir -p $ HOME / .kube sudo cp -i /etc/kubernetes/admin.conf $ HOME / .kube / config sudo chown $ (id -u): $ (id -g) $ HOME / .kube / config 

Distribuer flanellnettverk

Nå må vi distribuere flanellnettverket til klyngen med kommandoen:

 kubectl Apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml 

Kontroller nodene dine

Når distribusjons-kommandoen er fullført, skal du kunne se begge nodene på masteren ved å utstede kommandoen kubectl get nodes ( figur B ).

Figur B

Nodene våre er klare.


Helt klar

Gratulerer, du har nå en Kubernetes-klynge klar for pods. Jeg skal demonstrere hvordan du distribuerer din første pod når vi neste gang besøker emnet Kubernetes. Inntil da, lykkelig klynge!

© Copyright 2021 | pepebotifarra.com