Тестовый кластер Kubernetes в Docker Desktop

Оцените статью

Продолжаю переносить свои сервисы в кластер Kubernetes в Cloud.ru и естественно мне нужен локальный тестовый кластер для проработки миграции идентичный кластеру в Cloud.ru.

Установка Docker Desktop в Ubuntu Linux

Убедитесь, что у вас установлена Ubuntu (рекомендуются версии 20.04 LTS или новее) и есть права суперпользователя (sudo).

Обновите список пакетов:

# apt update
# apt upgrade -y

Установка зависимостей

Установите пакеты, необходимые для работы с репозитория Normally:

# apt install apt-transport-https ca-certificates curl gnupg lsb-release -y

Добавление официального GPG‑ключа Docker

Импортируйте GPG‑ключ для проверки подлинности пакетов:

# curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg

Добавление репозитория Docker

Добавьте репозиторий Docker в список источников APT:

# echo "deb [arch=amd64 signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Установка Docker Engine

Обновите список пакетов и установите Docker Engine:

# apt update
# apt install docker-ce docker-ce-cli containerd.io -y

Запуск и включение Docker

Запустите службу Docker и настройте её автозапуск при загрузке системы:

# systemctl start docker
# systemctl enable docker

Проверьте статус службы:

# systemctl status docker

Добавление пользователя в группу docker

Чтобы не вводить sudo перед каждой командой Docker, добавьте своего пользователя в группу docker:

# usermod -aG docker $USER

Важно: выйдите из системы и войдите заново (или выполните newgrp docker), чтобы изменения вступили в силу.

Создайте кластер на одноименной вкладке GUI Docker Desktop

Создайте кластер на одноименной вкладке GUI Docker Desktop

Классы хранения апалогичные Cloud.ru

Создаем классы хранения как они объявлены в Cloud.ru:

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"storage.k8s.io/v1","kind":"StorageClass","metadata":{"annotations":{"storageclass.kubernetes.io/is-default-class":"true"},"name":"hostpath"},"provisioner":"docker.io/hostpath","reclaimPolicy":"Delete","volumeBindingMode":"Immediate"}
    storageclass.kubernetes.io/is-default-class: "true"
  name: cloudru-hdd
provisioner: docker.io/hostpath
reclaimPolicy: Delete
volumeBindingMode: Immediate

---
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  annotations:
    kubectl.kubernetes.io/last-applied-configuration: |
      {"apiVersion":"storage.k8s.io/v1","kind":"StorageClass","metadata":{"annotations":{"storageclass.kubernetes.io/is-default-class":"true"},"name":"hostpath"},"provisioner":"docker.io/hostpath","reclaimPolicy":"Delete","volumeBindingMode":"Immediate"}
  name: cloudru-ssd
provisioner: docker.io/hostpath
reclaimPolicy: Delete
volumeBindingMode: Immediate

Установка Ingress Nginx

И финильным этапом установим плагин Ingress Nginx (в кластере Cloud.ru его можно установить из web-интерфейса управления):

# helm repo add ingress-nginx https://kubernetes.github.io/ingress-nginx
# helm repo update
# helm install ingress-nginx ingress-nginx/ingress-nginx \
  --namespace ingress-nginx \
  --create-namespace

Похожие записи

Хранилище артефактов (Docker) Cloud.ru

Продолжаем разбираться с облачной платформой cloud.ru и сегодня займемся хранилищем артефактов. Достоинства хранилища артефактов Docker в Cloud.ru 1. Интеграция с экосистемой Cloud.ru 2. Безопасность 3. Надёжность и доступность 4. Производительность…

Хранение медиа-файлов WordPress в S3-хранилище

В продолжении перевода своих ресурсов в облака следующим этапом необходимо настроить хранение медиа-файлов WordPress в хранилище S3 в облаке Cloud.ru. Задачка довольно типовая, но есть нюансы. Прежде всего зарегистрируем сервисный…

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Читать еще статьи

Тестовый кластер Kubernetes в Docker Desktop

Тестовый кластер Kubernetes в Docker Desktop

Хранилище артефактов (Docker) Cloud.ru

Хранилище артефактов (Docker) Cloud.ru

Хранение медиа-файлов WordPress в S3-хранилище

Хранение медиа-файлов WordPress в S3-хранилище

Настройка кэширования WordPress при помоши Redis

Настройка кэширования WordPress при помоши Redis

Создание кластера Managed Kubernetes в облаке Cloud.ru

Создание кластера Managed Kubernetes в облаке Cloud.ru

Интеграция FreeIPA DNS и BIND DNS

Интеграция FreeIPA DNS и BIND DNS