Telepítse a Kuberneteset a Kubeadm segítségével a CentOS 7 rendszeren

Áttekintés

Ennek a cikknek az a célja, hogy segítsen egy Kubernetes-fürtöt a kubeadm segítségével pillanatok alatt üzembe helyezni. Ez az útmutató két kiszolgáló, egy mester és egy dolgozó telepítésére vonatkozik, azonban tetszőleges számú kiszolgálót telepíthet.

Mi az a kubeadm?

A Kubeadm a Kubernetes által kifejlesztett eszköz, amely lehetővé teszi egy minimális életképes fürt létrehozását és futtatását a legjobb gyakorlatok követésével. Csak a fürtöt indítja el, a gépeket nem. Az olyan dolgok, mint a kiegészítők, a Kubernetes irányítópult, a megfigyelési megoldások és így tovább, a kubeadm nem fog tenni érte.

Előfeltételek

Van néhány követelmény az általunk telepített szerverekkel szemben. Egy vagy több deb/rpm-kompatibilis operációs rendszert futtató gép. CentOS-t fogunk használni.

  • 2 GB vagy több RAM gépenként
  • 2 vagy több CPU a mesteren

Teljes hálózati kapcsolat a fürt összes gépe között

Az ebben az útmutatóban telepített két szerver a következő: - 1 CPU 2 GB RAM CentOS 7 rendszerrel (Worker node) - 2 CPU 4 GB RAM CentOS 7 rendszerrel (Master node)

Ennyi RAM-mal mindkét szerveren a Kubernetesnek bőven lesz helye a levegőnek.

A dolgozó és a mester konfigurálása

Itt vannak azok a lépések, amelyeket mind a fő, mind a dolgozó csomóponton meg kell tennünk:

  • Yum frissítés és csomagok
  • Docker telepítése
  • A selinux letiltása
  • A csere letiltása
  • Tűzfal letiltása
  • Frissítse az IPTables-t
  • Telepítse a kubelet/kubeadm/kubectl-t

Docker telepítése

1.14Ebben az oktatóanyagban a Kubernetes verzióját fogjuk használni . Ennél a verziónál a Kubernetes a Docker verzió futtatását javasolja 18.06.2. Feltétlenül ellenőrizze a Kuberenetes verziójához tartozó ajánlott Docker-verziót

Hozzáadjuk a Docker-tárat a yumhoz, és kifejezetten telepítjük 18.06.2. A Docker telepítése után a Docker démont a Kubernetes által javasolt beállításokra kell konfigurálnunk.

###Add yum-utils, if not installed already
yum install yum-utils

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

###Install Docker CE.
yum update && yum install docker-ce-18.06.2.ce

###Create /etc/docker directory.
mkdir /etc/docker

###Setup daemon.
cat > /etc/docker/daemon.json <<EOF
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2",
  "storage-opts": [
    "overlay2.override_kernel_check=true"
  ]
}
EOF

mkdir -p /etc/systemd/system/docker.service.d

###Restart Docker
systemctl daemon-reload
systemctl enable docker.service
systemctl restart docker

A SELinux letiltása

Mivel CentOS-t használunk, le kell tiltanunk a SELinuxot. Ez azért szükséges, hogy a konténerek hozzáférjenek a gazdagép fájlrendszeréhez.

setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=disable/' /etc/selinux/config

Swap letiltása

A cserét le kell tiltani, hogy a kubelet megfelelően működjön.

sed -i '/swap/d' /etc/fstab
swapoff -a

Tűzfal letiltása

A Kubernetes IPTables segítségével kezeli a bejövő és kimenő forgalmat – ezért a problémák elkerülése érdekében letiltjuk a tűzfalat.

systemctl disable firewalld
systemctl stop firewalld

Frissítse az IPTables-t

A Kubernetes azt javasolja, hogy net.bridge.bridge-nf-call-iptablesaz 1-es értéket állítsuk be. Ennek oka az a probléma, hogy a REHL/CentOS 7 rendszerben az iptables megkerülése miatt a forgalom helytelen átirányításával kapcsolatos problémák merültek fel.

cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system

Telepítse a kubelet/kubeadm/kubectl-t

Hozzá kell adnunk a kubernetes repót a yumhoz. Miután ezt megtettük, csak le kell futtatnunk az install parancsot, és engedélyezni kell a kubeletet.

cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[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.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
EOF

yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
systemctl enable --now kubelet

Most már teljesen beállítottuk a fő és a dolgozó csomópontunkat. Most már inicializálhatjuk főcsomópontunkat, és csatlakozhatunk a munkavégző csomópontokhoz a fő csomóponthoz!

Megjegyzés Ha több dolgozó csomópontot szeretne hozzáadni, a fenti folyamatot az összes csomóponton is el kell végezni.

Főcsomópont beállítása

A főcsomópontunkat a következő parancs futtatásával szeretnénk inicializálni. Az alábbi parancsban le kell cserélnie a fő csomópont IP-címét. Ezenkívül átadjuk a pod-network-cidr-t, hogy később megkönnyítsük a dolgunkat, amikor telepítjük a Flanel hálózati átfedést.

kubeadm init --apiserver-advertise-address=YOUR_IP_HERE --pod-network-cidr=10.244.0.0/16

Ennek befejezése eltarthat egy ideig, de miután elkészült, valami hasonlót fog látni a kimenet végén, például az alábbiakat.

kubeadm join YOUR_IP:6443 --token 4if8c2.pbqh82zxcg8rswui \
--discovery-token-ca-cert-hash sha256:a0b2bb2b31bf7b06bb5058540f02724240fc9447b0e457e049e59d2ce19fcba2

Ezt a parancsot kell végrehajtania a dolgozó csomópontjainak a fürthöz való csatlakozáshoz, ezért vegye figyelembe.

A következő a Flanel. A flanel az, ami lehetővé teszi a hüvelyek közötti kommunikációt. Számos más típusú hálózati átfedés is telepíthető, de az egyszerűség kedvéért ebben az útmutatóban a Flanelt használjuk.

Másolja át a kube/configfájlt a $Homesajátjára, hogy végrehajthassa a kubectlparancsokat.

mkdir $HOME/.kube
cp /etc/kubernetes/admin.conf $HOME/.kube/config

Az egyik utolsó lépés a főcsomóponton a Flanel telepítése. Futtassa a következő parancsot.

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

Ha ezt a konfigurációt átmásolja, akkor futhat kubectl get csés választ kaphat.

NAME                 STATUS    MESSAGE             ERROR
scheduler            Healthy   ok
controller-manager   Healthy   ok
etcd-0               Healthy   {"health":"true"}

A fő csomópont be van állítva, és használatra kész. Irány a dolgozó csomópont!

Munkás csomópont

Ezen a ponton nincs szükség többletmunkára a dolgozó csomóponton. Csak annyit kell tennünk, hogy lefuttatjuk a kubeadm joinparancsot, amelyet a kubeadm initkimenetünkből kaptunk .

Ha véletlenül rosszul helyezted el a kubeadm join parancsot, akkor generálhatsz egy másikat a főcsomóponton a futtatással kubeadm token create --print-join-command

A kubeadm join parancs futtatása kubectl get nodesután , ha a masteren futtatja , a következőhöz hasonló kimenetet fog látni.

NAME          STATUS   ROLES    AGE    VERSION
k8-master   Ready    master   107m   v1.14.2
k8-worker   Ready    <none>   45m    v1.14.2

Becsomagolás

Ugyanúgy, mint ahogyan egy Kubernetes-fürtöt is elindított a kubeadm segítségével. Ezt privát hálózatokkal is megteheti. A Vultr, valamint más felhőszolgáltatók lehetővé teszik a privát hálózatokat. Továbbá, ha kubectl-parancsokat szeretne végrehajtani a helyi gépről a fürt ellen, ezt úgy érheti el, hogy a kubectl-t helyileg telepíti, és a .kube/configfájlt a fürtből a helyi gépre húzza le a -ban $HOME/.kube/config.

Remélhetőleg ez az útmutató segít áthaladni a kubeadm-en, és rövid időn belül játszani fog a kubernetes-szel!

Hasznos Linkek:


Telepítse a Plesket a CentOS 7 rendszeren

Telepítse a Plesket a CentOS 7 rendszeren

Más rendszert használ? A Plesk egy szabadalmaztatott webtárhely-vezérlőpult, amely lehetővé teszi a felhasználók számára, hogy adminisztrálják személyes és/vagy ügyfeleik webhelyeit, adatbázisait

A Squid Proxy telepítése a CentOS rendszeren

A Squid Proxy telepítése a CentOS rendszeren

A Squid egy népszerű, ingyenes Linux-program, amely lehetővé teszi továbbítási webproxy létrehozását. Ebben az útmutatóban megtudhatja, hogyan telepítheti a Squid-et a CentOS rendszerre, hogy megfordítsa

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

A Lighttpd (LLMP Stack) telepítése a CentOS 6 rendszeren

Bevezetés A Lighttpd az Apache forkja, amely sokkal kevésbé erőforrás-igényes. Könnyű, innen kapta a nevét, és meglehetősen egyszerű a használata. Telepítés

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A statikus hálózat és az IPv6 konfigurálása CentOS 7 rendszeren

A VULTR a közelmúltban változtatásokat hajtott végre a saját oldalukon, és most már mindennek jól kell működnie, ha a NetworkManager engedélyezve van. Ha szeretné letiltani

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 módosítása a mester/kliens modell használatához CentOS 6 vagy CentOS 7 rendszeren

Az Icinga2 egy hatékony felügyeleti rendszer, és mester-kliens modellben használva helyettesítheti az NRPE-alapú felügyeleti ellenőrzések szükségességét. A mester-kliens

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Az Apache Cassandra 3.11.x telepítése CentOS 7 rendszeren

Más rendszert használ? Az Apache Cassandra egy ingyenes és nyílt forráskódú NoSQL adatbázis-kezelő rendszer, amelyet úgy terveztek, hogy biztosítsa a méretezhetőséget,

A Microweber telepítése CentOS 7 rendszeren

A Microweber telepítése CentOS 7 rendszeren

Más rendszert használ? A Microweber egy nyílt forráskódú drag and drop CMS és online bolt. A Microweber forráskódja a GitHubon található. Ez az útmutató megmutatja neked

A Vanilla Forum telepítése a CentOS 7 rendszeren

A Vanilla Forum telepítése a CentOS 7 rendszeren

Más rendszert használ? A Vanilla forum egy nyílt forráskódú, PHP-ben írt fórumalkalmazás. Ez egy teljesen testreszabható, könnyen használható, és támogatja a külsőt

A Mattermost 4.1 telepítése CentOS 7 rendszeren

A Mattermost 4.1 telepítése CentOS 7 rendszeren

Más rendszert használ? A Mattermost egy nyílt forráskódú, saját üzemeltetésű alternatívája a Slack SAAS üzenetküldő szolgáltatásnak. Más szóval, a Mattermost segítségével kb

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Minecraft szerverek hálózatának létrehozása BungeeCord segítségével Debian 8, Debian 9 vagy CentOS 7 rendszeren

Mire lesz szüksége Egy Vultr VPS legalább 1 GB RAM-mal. SSH hozzáférés (root/adminisztrátori jogosultságokkal). 1. lépés: A BungeeCord telepítése Először is

Encrypt on Plesk

Encrypt on Plesk

A Plesk vezérlőpult nagyon szép integrációt kínál a Lets Encrypt számára. A Lets Encrypt egyike az egyetlen SSL-szolgáltatónak, amely teljes tanúsítványt ad ki

Lehetővé teszi a titkosítást a cPanel-en

Lehetővé teszi a titkosítást a cPanel-en

A Lets Encrypt egy tanúsító hatóság, amely ingyenes SSL-tanúsítványokat biztosít. A cPanel ügyes integrációt épített ki, így Ön és ügyfele

A Concrete5 telepítése CentOS 7 rendszeren

A Concrete5 telepítése CentOS 7 rendszeren

Más rendszert használ? A Concrete5 egy nyílt forráskódú CMS, amely számos megkülönböztető és hasznos funkciót kínál, hogy segítse a szerkesztőket a tartalom egyszerű létrehozásában.

Hogyan telepítsük az értékelő táblát a CentOS 7 rendszeren

Hogyan telepítsük az értékelő táblát a CentOS 7 rendszeren

Más rendszert használ? A Review Board egy ingyenes és nyílt forráskódú eszköz a forráskód, a dokumentáció, a képek és még sok más áttekintésére. Ez egy web alapú szoftver

Állítsa be a HTTP-hitelesítést az Nginx segítségével a CentOS 7 rendszeren

Állítsa be a HTTP-hitelesítést az Nginx segítségével a CentOS 7 rendszeren

Ebből az útmutatóból megtudhatja, hogyan állíthat be HTTP-hitelesítést egy CentOS 7 rendszeren futó Nginx webszerverhez. Követelmények A kezdéshez szüksége lesz a következőre:

A GoAccess telepítése a CentOS 7 rendszeren

A GoAccess telepítése a CentOS 7 rendszeren

Más rendszert használ? A GoAccess egy nyílt forráskódú webnapló-elemző. Használhatja naplók valós idejű elemzésére akár a terminálon, akár a

A YOURLS telepítése a CentOS 7 rendszeren

A YOURLS telepítése a CentOS 7 rendszeren

A YOURLS (Your Own URL Shortener) egy nyílt forráskódú URL-rövidítő és adatelemző alkalmazás. Ebben a cikkben a telepítés folyamatával foglalkozunk

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Az ArangoDB telepítése és konfigurálása a CentOS 7 rendszeren

Más rendszert használ? Bevezetés Az ArangoDB egy nyílt forráskódú NoSQL adatbázis, amely rugalmas adatmodellt kínál dokumentumokhoz, grafikonokhoz és kulcsértékekhez. Ez

Az Etckeeper használata az /etc verziókezeléshez

Az Etckeeper használata az /etc verziókezeléshez

Bevezetés Az /etc/ könyvtár kritikus szerepet játszik a Linux rendszer működésében. Ennek az az oka, hogy szinte minden rendszerkonfiguráció

Miért érdemes SSHFS-t használni? Távoli fájlrendszer csatlakoztatása SSHFS-sel a CentOS 6 rendszeren

Miért érdemes SSHFS-t használni? Távoli fájlrendszer csatlakoztatása SSHFS-sel a CentOS 6 rendszeren

Sok rendszergazda nagy mennyiségű kiszolgálót kezel. Ha a fájlokhoz különböző szervereken keresztül kell hozzáférni, mindegyikbe külön-külön kell bejelentkezni kb

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A gépek felemelkedése: Az AI valós világbeli alkalmazásai

A mesterséges intelligencia nem a jövőben, hanem itt a jelenben. Ebben a blogban Olvassa el, hogyan hatott a mesterséges intelligencia alkalmazások különböző ágazatokra.

DDOS támadások: Rövid áttekintés

DDOS támadások: Rövid áttekintés

Ön is DDOS támadások áldozata, és tanácstalan a megelőzési módszereket illetően? Olvassa el ezt a cikket a kérdések megoldásához.

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Gondolkozott már azon, hogyan keresnek pénzt a hackerek?

Talán hallottál már arról, hogy a hackerek sok pénzt keresnek, de elgondolkodtál már azon, hogyan kereshetnek ennyi pénzt? beszéljük meg.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

A Google forradalmi találmányai, amelyek megkönnyítik az életét.

Szeretné látni a Google forradalmi találmányait, és azt, hogy ezek a találmányok hogyan változtatták meg minden mai ember életét? Ezután olvassa el a blogot, és nézze meg a Google találmányait.

Essential péntek: Mi történt az AI-vezérelt autókkal?

Essential péntek: Mi történt az AI-vezérelt autókkal?

Az önvezető autók koncepciója, hogy mesterséges intelligencia segítségével kerüljenek az utakra, már egy ideje álmunk. De számos ígéret ellenére sehol sem látszanak. Olvassa el ezt a blogot, hogy többet megtudjon…

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Technológiai szingularitás: az emberi civilizáció távoli jövője?

Ahogy a tudomány gyors ütemben fejlődik, átveszi erőfeszítéseink nagy részét, megnő annak a kockázata is, hogy alávetjük magunkat egy megmagyarázhatatlan szingularitásnak. Olvassa el, mit jelenthet számunkra a szingularitás.

Az adattárolás fejlődése – Infografika

Az adattárolás fejlődése – Infografika

Az adatok tárolási módjai az Adatok születése óta alakulhatnak. Ez a blog egy infografika alapján mutatja be az adattárolás fejlődését.

A Big Data Reference Architecture Layerek funkciói

A Big Data Reference Architecture Layerek funkciói

Olvassa el a blogot, hogy a legegyszerűbb módon ismerje meg a Big Data Architecture különböző rétegeit és azok funkcióit.

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Az okosotthoni eszközök 6 lenyűgöző előnye az életünkben

Ebben a digitálisan vezérelt világban az intelligens otthoni eszközök az élet döntő részévé váltak. Íme az intelligens otthoni eszközök néhány elképesztő előnye, hogyan teszik életünket érdemessé és egyszerűbbé.

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

A macOS Catalina 10.15.4 kiegészítés frissítése több problémát okoz, mint a megoldás

Az Apple a közelmúltban kiadott egy kiegészítést a macOS Catalina 10.15.4-hez a problémák megoldására, de úgy tűnik, hogy a frissítés több problémát okoz, ami a Mac gépek blokkolásához vezet. További információért olvassa el ezt a cikket