Введение в Kubernetes для пользователей VMware. Часть 2. Практика

Автор оригинала: Hany Michaels
  • Перевод
  • Tutorial
Это вторая часть введения в Kubernetes для пользователей VMware. Прежде чем перейти к практической части, ознакомьтесь с предыдущей статьей по ссылке.



Самый простой и быстрый способ познакомиться c Kubernetes без каких-либо специальных требований – это GCP (Google Cloud Platform). Просто оформите тестовый доступ, и изучайте Kubernetes. Для подтверждения регистрации нужно предоставить информацию по банковской карте. GCP ничего не будет списывать, пока вы сами не активируете оплату. Создайте аккаунт, и мы продолжим исследовать завораживающий мир Kubernetes.

Первый шаг – подключение к GKE (Google Kubernetes Engine). В меню слева выберите Container Engine.



Нажмите на Create cluster.



Заполните поля:

— название кластера;
— зона доступа,
— версия Kubernetes;
— детали образа и пр.



Кластер будет будет создан через несколько минут. Когда будет готово, нажмите Connect. Появится команда для соединения. Ее мы и будем использовать. Скопируйте ее.





Самый простой способ подключения к кластеру – через Google Cloud shell.

В верхнем правом углу кликните на иконку shell.



Через несколько секунд shell запустится на этой же странице. Вставьте команду, которую скопировали на предыдущем шаге.



Теперь посмотрим информацию по нашему кластеру с помощью команды kubectl cluster-info.



Чтобы получить информацию о нодах, введите команду kubectl get no -o wide . У вас появится список нод с информацией по ним.



Теперь получим список всех работающих pod’ов в нашем кластере K8s. Введите команду kubectl get po -o wide –all-namespaces.



Теперь давайте подключимся к нодам кластера, чтобы узнать их сетевые настройки. Для этого снова кликните главное меню слева и из раскрывающегося списка выберите Compute Engine. Как видно из скриншота ниже, кластер k8s cluster в конечном итоге – это число виртуальных машин.



Кликните SSH для запуска сессии с выбранной нодой. Появится новое диалоговое окно. Убедитесь, что в вашем браузере не заблокированы всплывающие окна.



Проверим, какой дистрибутив Linux используется. Для этого вбейте команду uname -a, а затем cat /etc/lsb-release.



Теперь давайте проверим сетевые настройки с помощью команды ifconfig -a | more. Видите интерфейс типа “мост” cbr0? Это тот, что мы показывали в сетевой схеме выше.



Тут мы также видим /24 сеть, выделенную этой ноде, – 10.40.1.0/24. Из нее наши pod’ы, получают свои IP-адреса. Теперь вы можете соотнести сетевую схему выше с реальной конфигурацией на нодах кластера k8s. Круто, правда?

Теперь давайте вернемся к окну с Google Cloud Shell и попробуем задеплоить тестовое приложение. Вбейте git clone https://github.com/hanymichael/NSX-CNA-Lab.git.



Этой командой вы склонируете одно из моих тестовых приложений на GitHub. Теперь перейдите в папку с приложением и вбейте kubectl create -f ., чтобы все YAML-файлы создавались в этой папке.



Теперь выведем список pod’ов и посмотрим их статус. Видно, что у всех статус ContainerCreating. Через несколько секунд статус изменится на Running.


Тут два деплоймента моего веб-приложения в K8s, у каждого по 4 реплики. Теперь давайте проверим Services, связанные с этим деплойментами, с помощью команды kubectl get svc.



Последнее, что нужно проверить, – ingress, связанный с этим приложением. На скриншоте выше видно, что мы подключаемся к приложению через внешний IP. Если проверим раздел с балансировщиком, то увидим балансировщик нагрузки, связанный с ingress.



Если хотите получить доступ к самому приложению, можно создать DNS-запись для *.esxcloud.net в локальном хост-файле.



Теперь откройте в браузере новую вкладку и перейдите по ссылкам sphinx-v1.esxcloud.net и sphinx-v2.esxcloud.net. Мы увидим две вещи:

  • версия приложения показывается по каждой ссылке;
  • после обновления веб-страницы IP-адрес контейнера меняется, значит балансировщик работает.



Теперь вы можете соотнести конфигурацию приложения со схемой ниже и увидеть, как все это выглядит в Kubernetes.



Заключение


Мы увидели, что Kubernetes, как любая распределенная система, имеет много сходств (и некоторые различия) с vSphere, которая нам знакома как пользователям VMware. Я попытался объяснить базовые концепции, сравнивая K8s & vSphere. Надеюсь, что это немного помогло вам быстро познакомиться с этой невероятно мощной облачной платформой, которая уже завоевывает мир.

В следующих постах я начну глубже погружаться в разработку нашего enterprise-решения для запуска Kubernetes внутри дата-центра. Следите за новостями!

P.S.: Опробовать возможности Kubernetes можно и в нашем сервисе KuberLine, оформив тест-драйв.
DataLine
164,00
Экосистема на базе дата-центров TIER III
Поделиться публикацией

Комментарии 0

Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

Самое читаемое