Использование kubectl для управления кластером Kubernetes

kubectl - это основной инструмент командной строки для управления кластерами Kubernetes. Он взаимодействует с API-сервером кластера для создания, обновления и удаления ресурсов. В данной статье рассмотрим, как использовать kubectl с конфигурационным файлом, скачанным из панели управления NetAngels

Размещение конфигурационного файла по стандартному пути

По умолчанию kubectl использует конфигурационный файл размещенный по следующему пути:

~/.kube/config

После создания кластера в NetAngels пользователь может скачать конфигурационный файл, который содержит все необходимые данные для подключения к кластеру.

Для получения конфигурационного файла в панели управления NetAngels необходимо:

  1. Перейти в раздел управления кластерами Kubernetes

  2. Выбрать нужный кластер

  3. Нажать кнопку “Файл конфигурации”

  4. Сохранить файл в стандартное расположение ~/.kube/config

После скачивания и размещения файла в ~/.kube/config, kubectl автоматически будет использовать его для подключения к кластеру при работе без указания дополнительных параметров.

Размещение конфигурационного файла по произвольному пути

Вы так же можете сохранить скачиваемый конфигурационный файл по любому другому пути, например, в домашний каталог пользователя - ~/config.yaml.

Для использования этого файла в kubectl можно:

  1. Скопировать его в стандартное расположение:

    cp ~/config.yaml ~/.kube/config
    
  2. Либо использовать напрямую с флагом --kubeconfig:

    kubectl --kubeconfig=~/config.yaml get nodes
    
  3. Или установить переменную окружения:

    export KUBECONFIG=~/config.yaml
    

Работа с несколькими конфигурационными файлами

Одним из свойств kubectl является возможность работы с несколькими конфигурационными файлами одновременно через переменную окружения KUBECONFIG. Эта переменная может содержать несколько путей к конфигурационным файлам, разделенных символом-разделителем:

В Unix-подобных системах (Linux, macOS) символом :

export KUBECONFIG=~/config.yaml:/etc/kube/config:/home/user/.kube/config

В Windows символом ;

set KUBECONFIG=C:\Users\user\Downloads\config.yaml;C:\Users\user\.kube\config

Когда указана переменная KUBECONFIG, kubectl объединяет конфигурации из всех указанных файлов в один виртуальный конфигурационный файл.

Основные команды управления

Проверка подключения к кластеру

# Проверка подключения
kubectl --kubeconfig=~/config.yaml cluster-info

Получение информации о текущем состоянии

# Просмотр всех ресурсов в кластере
kubectl --kubeconfig=~/config.yaml get all --all-namespaces

# Получение информации о состоянии ресурсов
kubectl --kubeconfig=~/config.yaml get pods,svc,deploy --all-namespaces

Работа с узлами (nodes)

# Просмотр всех узлов
kubectl --kubeconfig=~/config.yaml get nodes

# Просмотр детальной информации об узле
kubectl --kubeconfig=~/config.yaml describe node <имя-узла>

# Получение статуса узлов
kubectl --kubeconfig=~/config.yaml get nodes -o wide

Работа с подами (pods)

# Просмотр всех подов
kubectl --kubeconfig=~/config.yaml get pods

# Просмотр подов с деталями
kubectl --kubeconfig=~/config.yaml get pods -o wide

# Просмотр логов пода
kubectl --kubeconfig=~/config.yaml logs <имя-пода>

# Выполнение команды в поде
kubectl --kubeconfig=~/config.yaml exec -it <имя-пода> -- /bin/sh

Работа с сервисами (services)

# Просмотр всех сервисов
kubectl --kubeconfig=~/config.yaml get services

# Просмотр сервиса с деталями
kubectl --kubeconfig=~/config.yaml describe service <имя-сервиса>

Применение манифестов

# Применение манифеста из файла
kubectl --kubeconfig=~/config.yaml apply -f deployment.yaml

# Применение файла конфигурации
kubectl --kubeconfig=~/config.yaml apply -f configmap.yaml

# Удаление ресурсов
kubectl --kubeconfig=~/config.yaml delete -f deployment.yaml

Нам доверяют тысячи компаний и разработчиков

22 года
Предоставляем услуги профессионального хостинга
35 000+
Клиентов доверяют нам размещение своих сайтов
99.99%
Подтвержденный uptime наших серверов хостинга
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
Наши клиенты
ВК49865