Settu upp Kubernetes með Kubeadm á CentOS 7

Yfirlit

Þessari grein er ætlað að hjálpa þér að koma Kubernetes klasa í gang með kubeadm á skömmum tíma. Þessi handbók mun setja upp tvo netþjóna, einn meistara og einn starfsmann, en þú getur sett upp eins marga netþjóna og þú vilt.

Hvað er kubeadm?

Kubeadm er tól þróað af Kubernetes sem gerir þér kleift að koma í gang lágmarks lífvænlegan klasa með því að fylgja bestu starfsvenjum. Það mun aðeins ræsa klasann þinn, ekki útvega vélar. Hlutir eins og viðbætur, Kubernetes mælaborðið, eftirlitslausnir og svo framvegis eru ekki eitthvað sem kubeadm mun gera fyrir þig.

Forkröfur

Það eru nokkrar kröfur fyrir netþjónana sem við munum setja upp. Ein eða fleiri vélar sem keyra deb/rpm-samhæft stýrikerfi. Við munum nota CentOS.

  • 2 GB eða meira af vinnsluminni á hverja vél
  • 2 örgjörvar eða fleiri á masternum

Full nettenging meðal allra véla í klasanum

Netþjónarnir tveir sem notaðir eru í þessari handbók eru eftirfarandi: - 1 CPU 2GB vinnsluminni með CentOS 7 (Worker hnút) - 2 CPU 4GB vinnsluminni með CentOS 7 (Master node)

Með þetta magn af vinnsluminni á báðum netþjónum mun Kubernetes hafa nóg pláss til að anda.

Að stilla starfsmann og meistara

Hér eru skrefin sem við verðum að taka á bæði meistara- og starfshnút:

  • Jamm uppfærsla og pakkar
  • Settu upp docker
  • Slökktu á selinux
  • Slökktu á skiptum
  • Slökktu á eldvegg
  • Uppfærðu IPTables
  • Settu upp kubelet/kubeadm/kubectl

Er að setja upp Docker

Við munum nota útgáfu 1.14af Kubernetes í þessari kennslu. Fyrir þessa útgáfu mælir Kubernetes með að keyra Docker útgáfuna 18.06.2. Vertu viss um að athuga ráðlagða Docker útgáfu fyrir þína útgáfu af Kuberenetes

Við munum bæta Docker geymslunni við yum og setja upp sérstaklega 18.06.2. Þegar Docker hefur verið sett upp þurfum við að stilla docker púkann í þær stillingar sem Kubernetes mælir með.

###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

Slökktu á SELinux

Þar sem við erum að nota CentOS þurfum við að slökkva á SELinux. Þetta er nauðsynlegt til að leyfa gámum aðgang að hýsilskráakerfinu.

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

Slökktu á Swap

Swap þarf að vera óvirkt til að leyfa kubelet að virka rétt.

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

Slökktu á eldvegg

Kubernetes notar IPTables til að meðhöndla inn- og út umferð - svo til að forðast vandamál slökkva við á eldvegg.

systemctl disable firewalld
systemctl stop firewalld

Uppfærðu IPTables

Kubernetes mælir með því að við tryggjum að það net.bridge.bridge-nf-call-iptablessé stillt á 1. Þetta er vegna vandamála þar sem REHL/CentOS 7 hefur átt í vandræðum með að umferð hafi verið vísað á rangan hátt vegna framhjá íptables.

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

Settu upp kubelet/kubeadm/kubectl

Við þurfum að bæta kubernetes repo við yum. Þegar við gerum það þurfum við bara að keyra uppsetningarskipunina og virkja kubelet.

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

Nú höfum við fullstillt bæði meistara- og vinnuhnútinn okkar. Við getum nú frumstillt aðalhnútinn okkar og tengt vinnuhnúta okkar við skipstjórann!

Athugið Ef þú vildir bæta við fleiri starfshnútum þyrfti ferlið hér að ofan líka að vera gert á öllum þessum hnútum.

Uppsetning Master Node

Við viljum frumstilla aðalhnútinn okkar með því að keyra eftirfarandi skipun. Þú vilt skipta út IP tölu aðalhnútsins þíns í skipuninni hér að neðan. Að auki munum við senda inn pod-network-cidr til að auðvelda okkur síðar þegar við setjum upp Flannel netyfirborðið.

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

Þetta getur tekið smá stund að klára en þegar því er lokið muntu sjá eitthvað svipað í lok úttaksins eins og eftirfarandi.

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

Þessi skipun er það sem vinnuhnútar þínir þurfa að framkvæma til að taka þátt í þyrpingunni, svo taktu eftir henni.

Næst á eftir er Flannel. Flanell er það sem gerir belg til belg samskipti. Það eru ýmsar aðrar gerðir af netyfirlögnum sem þú getur sett upp en til einföldunar mun þessi handbók nota Flannel.

Afritaðu kube/configskrána yfir á þinn $Homesvo þú getir framkvæmt kubectlskipanir.

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

Eitt lokaskref á aðalhnútnum er að setja upp Flannel. Keyra eftirfarandi skipun.

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

Með þessari stillingu afrituð muntu geta keyrt kubectl get csog fengið svar.

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

Aðalhnúturinn þinn er stilltur og tilbúinn til notkunar. Á verkamannahnútinn!

Verkamannahnútur

Á þessum tímapunkti er engin aukavinna sem er nauðsynleg á starfsmannshnútnum. Allt sem við þurfum að gera er að keyra kubeadm joinskipunina sem við fengum úr kubeadm initframleiðslunni okkar .

Ef þú misstir af kubeadm join skipuninni fyrir tilviljun geturðu búið til aðra á aðalhnútnum með því að keyra kubeadm token create --print-join-command

Þegar þú keyrir kubeadm join skipunina, ef þú keyrir kubectl get nodesá master muntu sjá svipað úttak og eftirfarandi.

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

Klára

Rétt eins og þú hefur ræst Kubernetes klasa með því að nota kubeadm. Þú gætir líka gert þetta með einkanetum. Vultr, sem og aðrir skýjaveitur, leyfa einkanet. Einnig, ef þú vilt framkvæma kubectl skipanir frá staðbundinni vél á móti þyrpingunni þinni, geturðu náð þessu með því að láta setja kubectl upp á staðnum og draga .kube/configskrána niður úr þyrpingunni yfir á staðbundna vélina þína í $HOME/.kube/config.

Vonandi hjálpar þessi handbók þér að fara yfir kubeadm og koma þér til að spila með kubernetes á skömmum tíma!

Gagnlegar tenglar:


Settu upp Plesk á CentOS 7

Settu upp Plesk á CentOS 7

Að nota annað kerfi? Plesk er sérstakt stjórnborð fyrir vefþjón sem gerir notendum kleift að stjórna persónulegum og/eða viðskiptavinum vefsíðum sínum, gagnagrunnum

Hvernig á að setja upp Squid Proxy á CentOS

Hvernig á að setja upp Squid Proxy á CentOS

Smokkfiskur er vinsælt, ókeypis Linux forrit sem gerir þér kleift að búa til framsendingarforrit á vefnum. Í þessari handbók muntu sjá hvernig á að setja upp Squid á CentOS til að snúa þér

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Hvernig á að setja upp Lighttpd (LLMP Stack) á CentOS 6

Inngangur Lighttpd er gaffal af Apache sem miðar að því að vera miklu minna auðlindafrekt. Hann er léttur, þess vegna heitir hann, og er frekar einfaldur í notkun. Uppsetning

Stilla Static Networking og IPv6 á CentOS 7

Stilla Static Networking og IPv6 á CentOS 7

VULTR hefur nýlega gert breytingar á enda þeirra og allt ætti nú að virka vel út úr kassanum með NetworkManager virkt. Ef þú vilt slökkva á

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Breytir Icinga2 til að nota Master/Client Model á CentOS 6 eða CentOS 7

Icinga2 er öflugt eftirlitskerfi og þegar það er notað í aðal-viðskiptavinamódel getur það komið í stað þörf fyrir NRPE-undirstaða vöktunareftirlit. Húsbóndinn

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Hvernig á að setja upp Apache Cassandra 3.11.x á CentOS 7

Að nota annað kerfi? Apache Cassandra er ókeypis og opinn uppspretta NoSQL gagnagrunnsstjórnunarkerfi sem er hannað til að veita sveigjanleika, háan

Hvernig á að setja upp Microweber á CentOS 7

Hvernig á að setja upp Microweber á CentOS 7

Að nota annað kerfi? Microweber er opinn uppspretta draga og sleppa CMS og netverslun. Microweber frumkóði er hýst á GitHub. Þessi handbók mun sýna þér

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Hvernig á að setja upp Mattermost 4.1 á CentOS 7

Að nota annað kerfi? Mattermost er opinn uppspretta, sjálfhýst valkostur við Slack SAAS skilaboðaþjónustuna. Með öðrum orðum, með Mattermost, þú ca

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Að búa til net Minecraft netþjóna með BungeeCord á Debian 8, Debian 9 eða CentOS 7

Það sem þú þarft Vultr VPS með að minnsta kosti 1GB af vinnsluminni. SSH aðgangur (með rót / stjórnunarréttindi). Skref 1: Uppsetning BungeeCord Fyrst af öllu

Láttu dulkóða á Plesk

Láttu dulkóða á Plesk

Plesk stjórnborðið er með mjög fallegri samþættingu fyrir Lets Encrypt. Lets Encrypt er ein af einu SSL veitunum sem gefa út skírteini að fullu

Láttu dulkóða á cPanel

Láttu dulkóða á cPanel

Lets Encrypt er vottunaryfirvöld sem sérhæfir sig í að útvega SSL vottorð án endurgjalds. cPanel hefur byggt upp snyrtilega samþættingu svo þú og viðskiptavinurinn þinn

Hvernig á að setja upp Concrete5 á CentOS 7

Hvernig á að setja upp Concrete5 á CentOS 7

Að nota annað kerfi? Concrete5 er opinn uppspretta CMS sem býður upp á marga áberandi og gagnlega eiginleika til að aðstoða ritstjóra við að framleiða efni auðveldlega og

Hvernig á að setja upp Review Board á CentOS 7

Hvernig á að setja upp Review Board á CentOS 7

Að nota annað kerfi? Review Board er ókeypis og opinn hugbúnaður til að skoða frumkóða, skjöl, myndir og margt fleira. Það er vefbundið hugbúnaðarstríð

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Settu upp HTTP auðkenningu með Nginx á CentOS 7

Í þessari handbók munt þú læra hvernig á að setja upp HTTP auðkenningu fyrir Nginx vefþjón sem keyrir á CentOS 7. Kröfur Til að byrja þarftu að

Hvernig á að setja upp YOURLS á CentOS 7

Hvernig á að setja upp YOURLS á CentOS 7

YOURLS (Your Own URL Shortener) er opinn uppspretta vefslóða styttingar og gagnagreiningarforrit. Í þessari grein munum við fjalla um ferlið við uppsetningu

How to Install and Configure ArangoDB on CentOS 7

How to Install and Configure ArangoDB on CentOS 7

Using a Different System? Introduction ArangoDB is an open source NoSQL database with a flexible data model for documents, graphs, and key-values. It is

Notkun Etckeeper fyrir útgáfustýringu á /etc

Notkun Etckeeper fyrir útgáfustýringu á /etc

Inngangur /etc/ skrárinn gegnir mikilvægu hlutverki í því hvernig Linux kerfi virkar. Ástæðan fyrir þessu er sú að næstum allar kerfisstillingar

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Af hverju ættir þú að nota SSHFS? Hvernig á að tengja fjarskráarkerfi með SSHFS á CentOS 6

Margir kerfisstjórar stjórna miklu magni af netþjónum. Þegar aðgangur þarf að skrám á mismunandi netþjónum er innskráning á hvern og einn fyrir sig ca

Setja upp Half Life 2 Server á CentOS 6

Setja upp Half Life 2 Server á CentOS 6

Þessi kennsla mun fjalla um ferlið við að setja upp Half Life 2 leikjaþjón á CentOS 6 System. Skref 1: Forsendur settar upp Til að setja upp ou

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Hvernig á að setja upp Laravel GitScrum á CentOS 7

Laravel GitScrum, eða GitScrum er opinn uppspretta framleiðniverkfæri hannað til að hjálpa þróunarteymi að innleiða Scrum aðferðafræðina á svipaðan hátt

The Rise of Machines: Real World Applications of AI

The Rise of Machines: Real World Applications of AI

Gervigreind er ekki í framtíðinni, hún er hér í nútímanum Í þessu bloggi Lestu hvernig gervigreindarforrit hafa haft áhrif á ýmsa geira.

DDOS árásir: Stutt yfirlit

DDOS árásir: Stutt yfirlit

Ertu líka fórnarlamb DDOS árása og ruglaður með forvarnaraðferðirnar? Lestu þessa grein til að leysa spurningar þínar.

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Hefur þú einhvern tíma velt því fyrir þér hvernig tölvuþrjótar græða peninga?

Þú gætir hafa heyrt að tölvuþrjótar græða mikið af peningum, en hefur þú einhvern tíma velt því fyrir þér hvernig þeir vinna sér inn svona peninga? við skulum ræða.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Byltingarkenndar uppfinningar frá Google sem munu auðvelda lífi þínu.

Viltu sjá byltingarkenndar uppfinningar frá Google og hvernig þessar uppfinningar breyttu lífi hvers manns í dag? Lestu síðan til að blogga til að sjá uppfinningar frá Google.

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Föstudagur Nauðsynlegur: Hvað varð um gervigreindardrifna bíla?

Hugmyndin um að sjálfkeyrandi bílar fari á göturnar með hjálp gervigreindar er draumur sem við höfum átt um tíma núna. En þrátt fyrir nokkur loforð eru þau hvergi sjáanleg. Lestu þetta blogg til að læra meira…

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Tæknileg sérkenni: Fjarlæg framtíð mannlegrar siðmenningar?

Þar sem vísindin þróast hratt og taka yfir mikið af viðleitni okkar, eykst hættan á því að verða fyrir óútskýranlegri einstæðu. Lestu, hvað sérkenni gæti þýtt fyrir okkur.

Þróun gagnageymslu – Infographic

Þróun gagnageymslu – Infographic

Geymsluaðferðir gagna hafa verið að þróast gæti verið frá fæðingu gagna. Þetta blogg fjallar um þróun gagnageymslu á grundvelli upplýsingamynda.

Virkni Big Data Reference Architecture Layers

Virkni Big Data Reference Architecture Layers

Lestu bloggið til að þekkja mismunandi lög í Big Data Architecture og virkni þeirra á einfaldasta hátt.

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

6 ótrúlegir kostir þess að hafa snjall heimilistæki í lífi okkar

Í þessum stafræna heimi hafa snjallheimilistæki orðið afgerandi hluti af lífi. Hér eru nokkrir ótrúlegir kostir snjallheimatækja um hvernig þau gera líf okkar þess virði að lifa því og einfaldara.

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

macOS Catalina 10.15.4 viðbót uppfærsla veldur fleiri vandamálum en að leysa

Nýlega gaf Apple út macOS Catalina 10.15.4 viðbótaruppfærslu til að laga vandamál en svo virðist sem uppfærslan sé að valda fleiri vandamálum sem leiða til múrsteins á Mac vélum. Lestu þessa grein til að læra meira