Kubernetes Gardener

Ініціалізація Gardener

Щоб налаштувати власний Gardener для потреб вашої організації з Kubernetes-as-a-Service, дотримуйтесь документації. Для тестування ви можете налаштувати Gardener на вашому ноутбуці, скопіювавши вихідний код репозиторію та просто виконавши команду make kind-up gardener-up (найпростіший спосіб для розробників перевірити Gardener!).

Альтернативно, компанія 23 Technologies GmbH пропонує повністю керований сервіс Gardener, який зручно працює з усіма підтримуваними провайдерами хмарних послуг та має безкоштовну пробну версію: Okeanos. Аналогічно, провайдери хмарних послуг, такі як STACKIT, B'Nerd, MetalStack та багато інших, використовують Gardener як свій Kubernetes Engine.

Щоб дізнатися більше про початок цього open source проєкту, прочитайте Оновлення проєкту Gardener та Gardener - The Kubernetes Botanist на kubernetes.io.

Налаштуйте Gardener для використання з Istio, власними доменами та сертифікатами — це докладний посібник для кінцевого користувача Gardener.

Встановлення та налаштування kubectl

  1. Якщо у вас вже є kubectl CLI, запустіть kubectl version --short, щоб перевірити версію. Вам потрібна актуальна версія, яка принаймні відповідає версії вашого Kubernetes кластера, який ви хочете замовити. Якщо ваш kubectl застарілий, виконайте наступний крок для встановлення новішої версії.

  2. Встановіть CLI kubectl.

Доступ до Gardener

  1. Створіть проєкт в Gardener dashboard. Це фактично створить Kubernetes namespace з назвою garden-<my-project>.

  2. Налаштуйте доступ до вашого проєкту в Gardener за допомогою kubeconfig.

    Якщо ви ще не є адміністратором Gardener, ви можете створити технічного користувача в Gardener dashboard: перейдіть до розділу “Members” і додайте службовий обліковий запис. Ви можете потім завантажити kubeconfig для вашого проєкту. Переконайтеся, що ви виконуєте export KUBECONFIG=garden-my-project.yaml у вашій оболонці.

    Завантаження kubeconfig для Gardener

Створення кластера Kubernetes

Ви можете створити свій кластер, використовуючи kubectl CLI, надавши файл yaml зі специфікацією кластера. Приклад для GCP можна знайти тут. Переконайтеся, що namespace відповідає вашому проєкту. Потім застосуйте підготовлений так званий маніфест кластера “shoot” за допомогою kubectl:

$ kubectl apply --filename my-cluster.yaml

Альтернативою є створення кластера, слідуючи майстру створення кластерів у Gardener dashboard:

створення shoot кластера

Налаштування kubectl для вашого кластера

Тепер ви можете завантажити kubeconfig для щойно створеного кластера в Gardener dashboard або за допомогою CLI наступним чином:

$ kubectl --namespace shoot--my-project--my-cluster get secret kubecfg --output jsonpath={.data.kubeconfig} | base64 --decode > my-cluster.yaml

Цей файл kubeconfig має повний адміністративний доступ до вашого кластера. Для будь-яких дій із кластером переконайтеся, що у вас встановлено export KUBECONFIG=my-cluster.yaml.

Очищення

Використовуйте Gardener dashboard, щоб видалити свій кластер, або виконайте наступні команди за допомогою kubectl, вказавши на ваш garden-my-project.yaml kubeconfig:

$ kubectl --kubeconfig garden-my-project.yaml --namespace garden--my-project annotate shoot my-cluster confirmation.garden.sapcloud.io/deletion=true
$ kubectl --kubeconfig garden-my-project.yaml --namespace garden--my-project delete shoot my-cluster
Чи була ця інформація корисною?
Чи є у вас пропозиції щодо покращення?

Дякуємо за ваш відгук!