RKE2 klastri paigaldamine: erinevus redaktsioonide vahel
Resümee puudub |
|||
(ei näidata sama kasutaja 9 vahepealset redaktsiooni) | |||
1. rida: | 1. rida: | ||
===Sissejuhatus=== |
===Sissejuhatus=== |
||
− | Käesolev tekst kirjeldab RKE2 kubernetes tarkvaral põhineva kubernetes klastri tekitamist. |
+ | Käesolev tekst kirjeldab RKE2 kubernetes tarkvaral põhineva kubernetes klastri tekitamist. Selliselt tekitakse ainult Rancher rakendust teenindav k8s klaster. Ülejäänud klastrid, st down-stream klastrid, tekitatakse Rancher webgui liidese abil eraldi ettevalmistatud Ubuntu operatsioonisüsteemiga töötavatesse arvutitesse. |
===Tööpõhimõte=== |
===Tööpõhimõte=== |
||
7. rida: | 7. rida: | ||
Väited |
Väited |
||
+ | * RKE2 klastri node'idel töötab tavaline Ubuntu v. 22.04 operatsioonisüsteem |
||
− | * |
||
+ | * node riistvara omadustele tuleb teatud määral pöörata tähelepanu: nt 6 GB mälu, 4 CPU, üks võrguliides, 60 GB ext4 failisüsteem |
||
+ | * node tarkvara koosseisule tuleb teatud määral pöörata tähelepanu: TODO |
||
+ | ===Võrgutopoloogia=== |
||
− | ===Ubuntu operatsioonisüsteemi ettevalmistamine=== |
||
+ | |||
+ | Tõenäoliselt on klastri haldusliidese ip aadress tulemüüri külge kinnitatud ja suunatud nat teisendusega kõigi klastrit moodustavate node'ide peale |
||
+ | |||
+ | * nii moodustub haldusliidese kõrgkäideldavus |
||
+ | * selle tulemüüri külge kinnitatud ip aadressi kaudu suhtlevad klastri node'id üksteisega ning samuti välised klastri poole pöördujad (nt klastri haldajad oma töökohaarvutitest kubectl utiliidiga) |
||
+ | * tls termination toimub node juures (mitte tulemüüris) |
||
TODO |
TODO |
||
⚫ | |||
− | ===Kasulikud lisamaterjalid=== |
||
+ | Väited |
||
+ | * RKE2 ei kasuta docker tarkvara konteinerite ringiajamiseks |
||
− | * TODO |
||
+ | * RKE2 kasutab TODO tarkvara |
||
+ | * RKE2 ei paigaldata paketihaldusest vaid kopeerides tootja veebikohast binary programmi ja seda käivitades; see omakorda kopeerib oma isandate juurest vajaliku tarkvara, paigaldab, seadistab, käivitab protsessid jne |
||
+ | Esimese node paigaldamine |
||
− | ===Ubuntu operatsioonisüsteemi ettevalmistamine=== |
||
+ | <pre> |
||
− | TODO |
||
+ | # mkdir -p /etc/rancher/rke2 |
||
+ | root@k8s-rnr-tartu-node-01:~# cat /etc/rancher/rke2/config.yaml |
||
+ | token: saladus |
||
+ | tls-san: |
||
+ | - k8s-rnr-tartu.auul.pri.ee |
||
+ | |||
+ | root@k8s-rnr-tartu-node-01:~# curl -sfL https://get.rke2.io | sh - |
||
+ | root@k8s-rnr-tartu-node-01:~# systemctl enable --now rke2-server.service |
||
+ | </pre> |
||
+ | Seejärel oodata ja vaadata et saab valmis, df -h väljundis peab olema 40+ monteerimist, top load peab olema alla 1, 'journalctl -u rke2-server -f' logi vaikne. Tulemuse kontrollimiseks sobib öelda |
||
⚫ | |||
+ | <pre> |
||
− | TODO |
||
+ | root@k8s-rnr-tartu-node-01:~# export KUBECONFIG=/etc/rancher/rke2/rke2.yaml |
||
+ | |||
+ | root@k8s-rnr-tartu-node-01:~# /var/lib/rancher/rke2/bin/kubectl get nodes |
||
+ | NAME STATUS ROLES AGE VERSION |
||
+ | root@k8s-rnr-tartu-node-01 Ready control-plane,etcd,master 8m57s v1.24.8+rke2r1 |
||
+ | </pre> |
||
+ | |||
+ | Järgmise node lisamiseks sobib kasutada seadistusfaili ja õelda |
||
+ | |||
+ | <pre> |
||
+ | root@k8s-rnr-tartu-node-02:~# mkdir -p /etc/rancher/rke2 |
||
+ | |||
+ | root@k8s-rnr-tartu-node-02:~# cat /etc/rancher/rke2/config.yaml |
||
+ | token: saladus |
||
+ | server: https://k8s-rnr-tartu.auul.pri.ee:9345 |
||
+ | tls-san: |
||
+ | - k8s-rnr-tartu.auul.pri.ee |
||
+ | |||
+ | root@k8s-rnr-tartu-node-02:~# curl -sfL https://get.rke2.io | sh - |
||
+ | root@k8s-rnr-tartu-node-02:~# systemctl enable --now rke2-server.service |
||
+ | </pre> |
||
+ | |||
+ | Jällegi jälgida logi, df ja top, tulemusena on ootus näha küsides node-01 pealt nagu enne |
||
+ | |||
+ | <pre> |
||
+ | root@k8s-rnr-tartu-node-01:~# /var/lib/rancher/rke2/bin/kubectl get nodes |
||
+ | NAME STATUS ROLES AGE VERSION |
||
+ | k8s-rnr-tartu-node-01 Ready control-plane,etcd,master 18m v1.24.8+rke2r1 |
||
+ | k8s-rnr-tartu-node-02 Ready control-plane,etcd,master 27s v1.24.8+rke2r1 |
||
+ | </pre> |
||
+ | |||
+ | Analoogselt lisada klastrisse kolmas node, tulemuseks on üsna aus vanilla RKE2 kubernetes tarkvara abil moodustatud klaster |
||
+ | |||
+ | <pre> |
||
+ | root@k8s-rnr-tartu-node-01:~# /var/lib/rancher/rke2/bin/kubectl get nodes |
||
+ | NAME STATUS ROLES AGE VERSION |
||
+ | k8s-rnr-tartu-node-01 Ready control-plane,etcd,master 28m v1.24.8+rke2r1 |
||
+ | k8s-rnr-tartu-node-02 Ready control-plane,etcd,master 15m v1.24.8+rke2r1 |
||
+ | k8s-rnr-tartu-node-03 Ready control-plane,etcd,master 27s v1.24.8+rke2r1 |
||
+ | </pre> |
||
+ | |||
+ | Edaspidi võiks kubectl utiliidiga seda klastrit kasutada töökohaarvutist nagu tavalist k8s klastrit |
||
+ | |||
+ | <pre> |
||
+ | imre@tookohaarvuti$ export KUBECONFIG=k8s-rnr-tartu.auul.pri.ee.yaml |
||
+ | |||
+ | imre@tookohaarvuti$ kubectl get nodes |
||
+ | NAME STATUS ROLES AGE VERSION |
||
+ | k8s-rnr-tartu-node-01 Ready control-plane,etcd,master 48m v1.24.8+rke2r1 |
||
+ | k8s-rnr-tartu-node-02 Ready control-plane,etcd,master 25m v1.24.8+rke2r1 |
||
+ | k8s-rnr-tartu-node-03 Ready control-plane,etcd,master 10m v1.24.8+rke2r1 |
||
+ | |||
+ | imre@tookohaarvuti$ kubectl get all -A -o wide |
||
+ | ... |
||
+ | </pre> |
||
===Kasulikud lisamaterjalid=== |
===Kasulikud lisamaterjalid=== |
||
+ | * https://docs.rke2.io/install/quickstart |
||
− | * TODO |
Viimane redaktsioon: 19. aprill 2023, kell 23:38
Sissejuhatus
Käesolev tekst kirjeldab RKE2 kubernetes tarkvaral põhineva kubernetes klastri tekitamist. Selliselt tekitakse ainult Rancher rakendust teenindav k8s klaster. Ülejäänud klastrid, st down-stream klastrid, tekitatakse Rancher webgui liidese abil eraldi ettevalmistatud Ubuntu operatsioonisüsteemiga töötavatesse arvutitesse.
Tööpõhimõte
Väited
- RKE2 klastri node'idel töötab tavaline Ubuntu v. 22.04 operatsioonisüsteem
- node riistvara omadustele tuleb teatud määral pöörata tähelepanu: nt 6 GB mälu, 4 CPU, üks võrguliides, 60 GB ext4 failisüsteem
- node tarkvara koosseisule tuleb teatud määral pöörata tähelepanu: TODO
Võrgutopoloogia
Tõenäoliselt on klastri haldusliidese ip aadress tulemüüri külge kinnitatud ja suunatud nat teisendusega kõigi klastrit moodustavate node'ide peale
- nii moodustub haldusliidese kõrgkäideldavus
- selle tulemüüri külge kinnitatud ip aadressi kaudu suhtlevad klastri node'id üksteisega ning samuti välised klastri poole pöördujad (nt klastri haldajad oma töökohaarvutitest kubectl utiliidiga)
- tls termination toimub node juures (mitte tulemüüris)
TODO
RKE2 kubernetes tarkvara paigaldamine ja klastri moodustamine
Väited
- RKE2 ei kasuta docker tarkvara konteinerite ringiajamiseks
- RKE2 kasutab TODO tarkvara
- RKE2 ei paigaldata paketihaldusest vaid kopeerides tootja veebikohast binary programmi ja seda käivitades; see omakorda kopeerib oma isandate juurest vajaliku tarkvara, paigaldab, seadistab, käivitab protsessid jne
Esimese node paigaldamine
# mkdir -p /etc/rancher/rke2 root@k8s-rnr-tartu-node-01:~# cat /etc/rancher/rke2/config.yaml token: saladus tls-san: - k8s-rnr-tartu.auul.pri.ee root@k8s-rnr-tartu-node-01:~# curl -sfL https://get.rke2.io | sh - root@k8s-rnr-tartu-node-01:~# systemctl enable --now rke2-server.service
Seejärel oodata ja vaadata et saab valmis, df -h väljundis peab olema 40+ monteerimist, top load peab olema alla 1, 'journalctl -u rke2-server -f' logi vaikne. Tulemuse kontrollimiseks sobib öelda
root@k8s-rnr-tartu-node-01:~# export KUBECONFIG=/etc/rancher/rke2/rke2.yaml root@k8s-rnr-tartu-node-01:~# /var/lib/rancher/rke2/bin/kubectl get nodes NAME STATUS ROLES AGE VERSION root@k8s-rnr-tartu-node-01 Ready control-plane,etcd,master 8m57s v1.24.8+rke2r1
Järgmise node lisamiseks sobib kasutada seadistusfaili ja õelda
root@k8s-rnr-tartu-node-02:~# mkdir -p /etc/rancher/rke2 root@k8s-rnr-tartu-node-02:~# cat /etc/rancher/rke2/config.yaml token: saladus server: https://k8s-rnr-tartu.auul.pri.ee:9345 tls-san: - k8s-rnr-tartu.auul.pri.ee root@k8s-rnr-tartu-node-02:~# curl -sfL https://get.rke2.io | sh - root@k8s-rnr-tartu-node-02:~# systemctl enable --now rke2-server.service
Jällegi jälgida logi, df ja top, tulemusena on ootus näha küsides node-01 pealt nagu enne
root@k8s-rnr-tartu-node-01:~# /var/lib/rancher/rke2/bin/kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-rnr-tartu-node-01 Ready control-plane,etcd,master 18m v1.24.8+rke2r1 k8s-rnr-tartu-node-02 Ready control-plane,etcd,master 27s v1.24.8+rke2r1
Analoogselt lisada klastrisse kolmas node, tulemuseks on üsna aus vanilla RKE2 kubernetes tarkvara abil moodustatud klaster
root@k8s-rnr-tartu-node-01:~# /var/lib/rancher/rke2/bin/kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-rnr-tartu-node-01 Ready control-plane,etcd,master 28m v1.24.8+rke2r1 k8s-rnr-tartu-node-02 Ready control-plane,etcd,master 15m v1.24.8+rke2r1 k8s-rnr-tartu-node-03 Ready control-plane,etcd,master 27s v1.24.8+rke2r1
Edaspidi võiks kubectl utiliidiga seda klastrit kasutada töökohaarvutist nagu tavalist k8s klastrit
imre@tookohaarvuti$ export KUBECONFIG=k8s-rnr-tartu.auul.pri.ee.yaml imre@tookohaarvuti$ kubectl get nodes NAME STATUS ROLES AGE VERSION k8s-rnr-tartu-node-01 Ready control-plane,etcd,master 48m v1.24.8+rke2r1 k8s-rnr-tartu-node-02 Ready control-plane,etcd,master 25m v1.24.8+rke2r1 k8s-rnr-tartu-node-03 Ready control-plane,etcd,master 10m v1.24.8+rke2r1 imre@tookohaarvuti$ kubectl get all -A -o wide ...