Кубернети

Настройте клъстер Kubernetes на DigitalOcean

Настройте клъстер Kubernetes на DigitalOcean

Kubernetes е една от малкото технологии, с които хората се борят не защото е сложна и трудна за разбиране, а защото е проектирана да работи на хардуер от сървърния клас и не може лесно да се симулира на типичен домашен компютър, който лесно. За щастие има разнообразие от платформи, хоствани в облак, които осигуряват достъпна инфраструктура за експериментиране и разбиране на технологии като Kubernetes.Като предварително условие ви препоръчвам да разгледате нашите публикации за архитектурата на Kubernetes и за възлите и шушулките, градивните блокове на клъстер Kubernetes.Въпреки че има много хоствани решения за Kubernetes, ние ще внедрим всичко от нулата на DigitalOcean, което е решение за хостинг в облак, насочено по-специално към разработчиците.

Екземпляр на VPS на тази платформа е известен като капчица. За да стартирате Kubernetes, ви трябват поне 2 GB RAM и ние ще използваме капките от опцията $ 20 / месец за тази демонстрация. Те се таксуват и на час, така че ако експериментирате за няколко часа и след това унищожите всички капчици, в крайна сметка ще платите не повече от няколко долара.

Сега имаме две машини, едната с етикет master и друга ще бъде работният възел. Така че нека първо конфигурираме главния.


Конфигуриране на главния възел

За да конфигурирате главния възел, SSH в него, използвайки публичния IP или използвайте конзолата, предоставена от DigitalOcean, за достъп до терминала като корен потребител.

Първите команди са основните домакински:

$ apt актуализация && apt надстройка -y

След това извличаме необходимите gpg ключове и ги добавяме към нашия списък с надеждни отдалечени хранилища.

$ curl -s https: // пакети.облак.google.com / apt / doc / apt-key.gpg | apt-key add -
$ котка < /etc/apt/sources.list.d/kubernetes.list
deb http: // apt.кубернети.io / kubernetes-xenial main
EOF
$ apt актуализация

Стартирането на apt актуализация за втори път ще доведе до ускоряване на системата с официалното репозитори Kubernetes. Сега инсталираме необходимите пакети.

$ apt инсталиращ докер.io
#Docker е необходим за контейнеризиране на приложения.
$ apt инсталирайте kubelet kubeadm kubectl kubernetes-cni

Последната команда инсталира няколко пакета, всеки от които е важен по различни причини:

  1. Kubeadm: Стартира и инициализира Kubernetes на възел. Може да се използва за присвояване на капчица ролята на главен възел или работен възел.
  2. Кубелет: Това е фонов процес, който говори с главния възел и изпълнява действия, които са поискани от него.
  3. Kubectl: Това е инструментът на командния ред, който позволява на разработчиците и оперативния персонал да взаимодействат и контролират клъстера Kubernetes.
  4. Kubernetes-cni: Това е интерфейсът на контейнерната мрежа, необходим за вътрешна комуникация между модулите и външна комуникация.

След като инсталирахме всички необходими пакети, е време да инициализираме главния възел. Изпълнете следното:

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

Не забравяйте да замените последната променлива $ DROPLET_IP_ADDRESS с публичния IP на вашия главен възел. Ако всичко работи добре, това ще бъде резултатът ви:

Уверете се, че сте копирали последния ред “kubeadm join -token ...”, тъй като той съдържа необходимите идентификационни данни за защита, които работният възел ще трябва да се присъедини към клъстера.

На всеки главен възел има изпълнен API сървър, който горната команда ще изложи на мрежата на под, а също и на интерфейса на командния ред, kubectl, както и към незадължителен уеб потребителски интерфейс.

Забележка: Можете да използвате публичния IP адрес на капката си за kubeadm init команда, но ако искате да изолирате вашия главен възел от останалия свят, може да искате да използвате частната IP функция на DigitalOcean, която ще се използва от различни подси в различни възли, за да говорят помежду си. По-късно можете да изложите само услугите отпред, когато вашият проект бъде осъществен.

Добре, една последна стъпка, преди да видим здравния доклад на нашия главен възел. Може да искате да стартирате:

$ mkdir -p $ НАЧАЛО /.кубе
$ cp / etc / kubernetes / admin.conf $ HOME /.кубе
$ chown $ (id -u): $ (id -g) $ HOME / admin.конф
$ kubectl създай -f
https: // суров.githubuserсъдържание.com / coreos / фланела / master / Документация / kube-фланела.yml --namespace = kube-система

Flannel е инсталиран в последната команда, която осигурява мрежова функционалност на ниво 3, необходима за контейнери.
Сега можем да бягаме,

$ kubectl получават възли
$ kubectl получават pods -all-namespaces

Което ще ни покаже състоянието на всички възли и всички шушулки в този клъстер, който в момента е само един. Така че е време да конфигурираме втората капчица и да я преобразуваме в работен възел на Kubernetes.


Конфигуриране на миньоните или работните възли

Много конфигурации на миньони ще бъдат повторение на това, което сме направили по-горе, това е от kubeadm заповядайте, че пътят ще започне да се разминава.

Така че, за да конфигурирате работния си възел, като повторите всички команди до и включително инсталирането на пакети,

$ apt инсталирайте kubelet kubeadm kubectl kubernetes-cni

След това, за да инициализирате капчицата като кубернетичен възел, изпълнете командата, генерирана в главния възел, след завършване наkubeadm init.

$ kubeadm присъединяване --token 3c37b5.08ed6cdf2e4a14c9
159.89.25.245: 6443 --discovery-token-ca-cert-hash
sha256: 52f99432eb33bb23ff86f62255ecbb

Моля, имайте предвид, че съдържанието след вашия флаг на маркера, IP адреса и контролната сума sha256 ще бъдат много различни във вашия случай. Това е! Имате нов възел като член на клъстера Kubernetes. Можете да потвърдите това, като изброите възлите и подгрупите, които се изпълняват в този клъстер.


Заключение

Сега е време да внедрите вашия докеризиран приложение в този клъстер и не се колебайте да завъртите още капчици и да използвате kubeadm присъединяване за да добавите нови членове към вашия клъстер Kubernetes.

Урок Сянка на Tomb Raider за Linux
Shadow of the Tomb Raider е дванадесетото допълнение към поредицата Tomb Raider - франчайз за екшън-приключенска игра, създаден от Eidos Montreal. Игр...
Как да увеличите FPS в Linux?
FPS означава Кадри в секунда. Задачата на FPS е да измерва честотата на кадрите при възпроизвеждане на видео или игрални изпълнения. С прости думи бро...
Топ Oculus App Lab Games
Ако сте собственик на слушалки на Oculus, тогава трябва да знаете за странично зареждане. Sideloading е процесът на инсталиране на несъхранявано съдър...