Jak zainstalować klaster Kubernetes na Centos 7
- 2411
- 17
- Tacjana Karpiński
Przekazane przez Google do społeczności Opensource, Kubernetes stał się teraz wybranym narzędziem do zarządzania kontenerami. Może zarządzać i organizować nie tylko docker Runtimes, ale także kontenery i Rkt Runtimes.
Typowy Kubernetes Klaster miałby na ogół węzeł główny i kilka nod pracowniczych lub stworów. Nodami robotniczymi są następnie zarządzane z węzła głównego, zapewniając w ten sposób klaster z punktu centralnego.
Ważne jest również, aby wspomnieć, że możesz również wdrożyć klaster Kubernetes w jednym węźle, który jest ogólnie zalecany dla bardzo lekkich, nieporozących obciążeń. W tym celu możesz użyć Minikube, które jest narzędziem, które uruchamia klaster Kubernetes z jednym węzłem w maszynie wirtualnej w twoim węźle.
Zalecane odczyt: Jak zainstalować klaster Kubernetes na Centos 8
W tym samouczku przejdziemy do wielu węzłów Kubernetes Instalacja klastra na Centos 7 Linux. Ten samouczek jest oparty na linii poleceń, więc będziesz potrzebować dostępu do okna terminala.
Wymagania wstępne
- Wiele serwerów działa Centos 7 (1 węzeł główny, 2 węzły robotnicze). Zaleca się, aby twój Węzeł główny mają co najmniej 2 procesory, choć nie jest to ścisłe wymóg.
- Łączność internetowa na wszystkich twoich węzłach. Będziemy pobierać Kubernetes I doker pakiety z repozytorium. Równie musisz upewnić się, że menedżer pakietu Yum jest domyślnie zainstalowany i może zdalnie pobierać pakiety.
- Będziesz także potrzebował dostępu do konta z uprawnieniami sudo lub root. W tym samouczku będę korzystać z mojego konta głównego.
Nasz 3-węzłowy klaster będzie wyglądał tak:
Kubernetes Schemat klastraInstalacja klastra Kubernetes w węźle głównym
Dla Kubernetes Do pracy potrzebujesz silnika kontenerskiego. Do tej instalacji będziemy używać doker ponieważ jest najbardziej popularny.
Następujące kroki będą działać na Węzeł mistrzowski.
Krok 1: Przygotuj nazwę hosta, zaporę ogniową i selinux
W swoim węźle głównym ustaw nazwę hosta, a jeśli nie masz serwera DNS, zaktualizuj również swój /etc/hosts plik.
# hostnamectl set-hostname-węzeł master # cat <> /etc /hosts 10.128.0.27 węzeł mistrzowski 10.128.0.29 Node-1 Worker-Node-1 10.128.0.30 Node-2-Node-2-Node-2 EOF
Możesz ping Node-1 pracownika-1 I Node pracownicze-2 Aby sprawdzić, czy zaktualizowany plik hosta jest w porządku za pomocą polecenia ping.
# ping 10.128.0.29 # ping 10.128.0.30
Następnie wyłącz Selinux i zaktualizuj zasady zapory.
# setenForce 0 # sed -i - -follow -symlinks 's/selinux = Enforcing/selinux = disabled/g'/etc/sysconfig/selinux # reboot
Ustaw następujące zasady zapory na portach. Upewnij się, że każde polecenie Firewall-CMD zwraca sukces.
# Firewall-CMD --PerManent --add-port = 6443/tcp # Firewall-CMD --PerManent --add-Port = 2379-2380/TCP # Firewalll-CMD --Permanent --add-Port = 10250/TCP # Firewall-CMD --Permanent --add-Port = 10251/TCP # Firewall-CMD --PerManent --add-Port = 10252/TCP # Firewall-CMD --Permanent --add-Port = 10255/TCP # Firewallll -cmd -reload # modprobe br_netfilter # echo '1'>/proc/sys/net/most/most-nf-call-eptables
Krok 2: Skonfiguruj repozytorium Kubernetes
Będziesz musiał dodać Kubernetes repozytoria ręcznie, ponieważ nie są instalowane domyślnie Centos 7.
kot < /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 EOF
Krok 3: Zainstaluj Kubeadm i Docker
Dzięki repozytorium pakietu możesz iść naprzód i zainstalować Kubeadm I doker pakiety.
# Yum Instal Kubeadm Docker -y
Gdy instalacja zakończy się pomyślnie, włącz i rozpocznij obie usługi.
# Systemctl Włącz Kubelet # Systemctl Start Kubelet # Systemctl Włącz Docker # Systemctl Start Docker
Krok 4: Zainicjuj Kubernetes Master i skonfiguruj domyślny użytkownik
Teraz jesteśmy gotowi zainicjować Kubernetes Master, ale wcześniej musisz wyłączyć zamian, aby uruchomić „Kubeadm Init" Komenda.
# Swapoff -a
Inicjalizacja Kubernetes Master to w pełni zautomatyzowany proces zarządzany przez „Kubeadm Init„Polecenie, które będziesz uruchomić.
# Kubeadm InitZainicjuj Kubernetes Master
Możesz skopiować ostatni wiersz i zapisać ją gdzieś, ponieważ będziesz musiał uruchomić ją na Węzły robotnicze.
Kubeadm dołącz 10.128.0.27: 6443 -Token NU06LU.XRSUX0SS0IXTNMS5 \--DISCOVERY-TOKLE-CA-CERT-HASH SHA256: F996EA3564E6A07FDEA2997A1CF8CAEDDAFD6D4360D606DBC82314688425CD41
Wskazówka: Czasami to polecenie może narzekać na argumenty (Args) Przeszedł, więc edytuj go, aby uniknąć błędów. Więc usuniesz „\”
Charakter towarzyszący --znak
a twoje ostateczne polecenie będzie wyglądało tak.
Kubeadm dołącz 10.128.0.27: 6443 -Token NU06LU.XRSUX0SS0IXTNMS5--DISCOVERY-TOWL-CA-CERT-HASH SHA256: F996EA3564E6A07FDEA2997A1CF8CAEDDAFD6D4360D606DBC8231468425CD41
Po zainicjowaniu Kubernetes Z powodzeniem musisz pozwolić użytkownikowi na rozpoczęcie korzystania z klastra. W naszym przypadku chcemy uruchomić tę instalację jako źródło Użytkownik, dlatego będziemy uruchomić te polecenia jako root. Możesz zmienić na użytkownika obsługiwanego przez sudo i uruchom poniżej za pomocą sudo.
Używać źródło, uruchomić:
# mkdir -p $ home/.kube # cp -i/etc/kubernetes/admin.conf $ home/.kube/config # chown $ (id -u): $ (id -g) $ home/.kube/config
Użyć Sudo włączył użytkownika, uruchomić:
$ mkdir -p $ home/.kube $ sudo cp -i/etc/kubernetes/admin.conf $ home/.kube/config $ sudo chown $ (id -u): $ (id -g) $ home/.kube/config
Teraz sprawdź, czy Kubectl Polecenie jest aktywowane.
# kubectl zdobądź węzłySprawdź status węzłów
W tym momencie zauważysz również, że status węzeł mistrzowski Jest 'Nie gotowy'. To dlatego, że jeszcze nie wdrożyliśmy Sieć Pod do klastra.
Sieć Pod to sieć nakładki dla klastra, która jest wdrażana na niniejszej sieci węzłów. Został zaprojektowany, aby umożliwić łączność w całym kapsule.
Krok 5: Skonfiguruj swoją sieć POD
Wdrożenie klastra sieci to wysoce elastyczny proces w zależności od potrzeb i dostępnych jest wiele opcji. Ponieważ chcemy, aby nasza instalacja była tak prosta, jak to możliwe, będziemy używać Weavenet wtyczka, która nie wymaga żadnej konfiguracji ani dodatkowego kodu i zawiera jeden adres IP na POD, co jest dla nas świetne. Jeśli chcesz zobaczyć więcej opcji, sprawdź tutaj.
Te polecenia będą ważne, aby uzyskać konfigurację sieci POD.
# Eksport kubever = $ (wersja kubectl | base64 | tr -d '\ n') # kubectl Apply -f "https: // chmur.splot.Works/k8s/net?K8s-wersja = $ kubever "Sieć konfiguracji POD
Teraz, jeśli sprawdzisz status swojego węzeł mistrzowski, powinno być 'Gotowy'.
# kubectl zdobądź węzłySprawdź status węzłów głównych
Następnie dodajemy Węzły robotnicze do klastra.
Konfigurowanie węzłów pracowniczych, aby dołączyć do klastra Kubernetes
Następujące kroki będą działać na Węzły robotnicze. Te kroki powinny być uruchamiane na każdym Węzeł roboczy Podczas dołączania do Kubernetes grupa.
Krok 1: Przygotuj nazwę hosta, zaporę ogniową i selinux
Na Twoim Node-1 pracownika-1 I Node pracownicze-2, Ustaw nazwę hosta, a jeśli nie masz serwera DNS, a następnie zaktualizuj węzły główne i pracowników /etc/hosts plik.
# hostnamectl set-hostname 'node-1' # cat <> /etc /hosts 10.128.0.27 węzeł mistrzowski 10.128.0.29 Node-1 Worker-Node-1 10.128.0.30 Node-2-Node-2-Node-2 EOF
Możesz ping węzeł mistrzowski Aby sprawdzić, czy zaktualizowany plik hosta jest w porządku.
Następnie wyłącz Selinux i zaktualizuj zasady zapory.
um
Ustaw następujące zasady zapory na portach. Upewnij się, że wszystkie polecenia Firewall-CMD, powrót sukcesu.
# Firewall-CMD --PerManent --add-Port = 6783/TCP # Firewall-CMD --PerManent --add-Port = 10250/TCP # Firewall-CMD --Permanent --add-Port = 10255/TCP # Firewallll. -CMD --Permanent --add-port = 30000-32767/tcp # firewall-cmd--reload # echo '1'>/proc/net/most/most-nf-call-call-eptables
Krok 2: Skonfiguruj repozytorium Kubernetes
Będziesz musiał dodać Kubernetes repozytoria ręcznie, ponieważ nie są wstępnie zainstalowane Centos 7.
kot < /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 EOF
Krok 3: Zainstaluj Kubeadm i Docker
Dzięki repozytorium pakietu możesz iść naprzód i zainstalować Kubeadm I doker pakiety.
# Yum Instal Kubeadm Docker -y
Rozpocznij i włącz obie usługi.
# Systemctl Włącz Docker # Systemctl Start Docker # Systemctl Włącz Kubelet # Systemctl Start Kubelet
Krok 4: Dołącz do węzła pracownika do klastra Kubernetes
Teraz potrzebujemy tego tokena Kubeadm Init wygenerował, aby dołączyć do klastra. Możesz skopiować i wkleić do swojego Węzeł 1 I Node-2 Jeśli gdzieś to skopiowałeś.
# kubeadm dołącz do 10.128.0.27: 6443 -Token NU06LU.XRSUX0SS0IXTNMS5--DISCOVERY-TOWL-CA-CERT-HASH SHA256: F996EA3564E6A07FDEA2997A1CF8CAEDDAFD6D4360D606DBC8231468425CD41Dołącz węzły do klastra Kubernets
Jak sugerowano na ostatniej linii, wróć do swojego węzeł mistrzowski i sprawdź, czy Węzeł roboczy-1 I Węzeł pracowniczy-2 dołączyli do klastra za pomocą następującego polecenia.
# kubectl zdobądź węzłySprawdź status wszystkich węzłów w klastrze Kubernetes
Jeśli wszystkie kroki działają pomyślnie, powinieneś zobaczyć Węzeł 1 I Node-2 w stanie gotowym na węzeł mistrzowski.
Zalecane odczyt: Jak wdrożyć Nginx na klastrze Kubernetes
W tym momencie pomyślnie zakończyliśmy instalację Kubernetes klaster Centos 7 i pomyślnie pokonaliśmy dwa Nodowniki pracownicze. Możesz teraz zacząć tworzyć swoje kapsuły i wdrażać swoje usługi.
- « Jak zainstalować narzędzie do monitorowania Pandora FMS w Ubuntu 18.04
- Jak zainstalować Seafile do synchronizacji i udostępniania plików na Ubuntu »