Sayeed's Blog

Yandex Cloud CLI -— это встроенная система подсказок и автодополнения

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

профиль Yandex Cloud CLI .

Что делать дальше: быстрый старт с YC CLI

Если вы только начинаете работать с Yandex Cloud CLI, вот несколько первых команд, которые пригодятся:

# Проверить версию и что CLI установлен
yc version

# Посмотреть общую справку
yc help

# Начать настройку (потребуется OAuth-токен)
yc init

# Посмотреть список доступных сервисов
yc <TAB>  # двойное нажатие Tab покажет все группы команд

При первом запуске

yc init

нужно будет:

  1. Получить OAuth-токен по ссылке, которую покажет программа.
  2. Выбрать облако и каталог по умолчанию.
  3. Выбрать зону доступности по умолчанию .

Установить YC CLI можно командой в PowerShell (от имени администратора):

# Скачать и установить Yandex Cloud CLI
iex (New-Object System.Net.WebClient).DownloadString('https://storage.yandexcloud.net/yandexcloud-yc/install.ps1')

После установки перезапустите терминал

Встроенная система помощи (ваше "доменное меню")

У

yc
есть многоуровневая система help, которая работает как меню:

1. Общая справка по группам команд

yc help

Эта команда покажет вам все основные группы сервисов:

compute
,
iam
,
resource-manager
,
managed-kubernetes
и десятки других .

2. Справка по конкретному сервису

yc compute help           # все команды для управления ВМ
yc managed-kubernetes help # все команды для Kubernetes
yc iam help               # все команды для управления доступом

3. Справка по конкретной команде

yc compute instance create --help  # параметры создания ВМ
yc managed-kubernetes cluster create --help  # параметры создания кластера K8s

4. Автодополнение (самое удобное "меню")

Если вы нажмете

Tab
после ввода части команды,
yc
покажет все доступные варианты:

yc <TAB><TAB>              # покажет все группы команд
yc compute <TAB><TAB>       # покажет все команды compute
yc compute instance <TAB><TAB> # покажет все действия с инстансами

Готовые рецепты для типовых задач

Существуют даже готовые "однострочники" (one-liners) для сложных запросов :

Поиск по всей инфраструктуре

# Найти все виртуальные машины во всех папках облака
for id in $(yc resource-manager folder list --cloud-id $CLOUD_ID --format=json | jq -r .[].id); do 
    yc compute instance list --folder-id=$id
done
# Найти все инстансы с определенным количеством ядер (например, 8)
for i in $(yc resource-manager folder list --cloud-id=$CLOUD_ID --format=json | jq -r .[].id); do 
    yc compute instance list --folder-id=$i --format json | jq ".[] | select(.resources.cores==\"8\")"
done

Практические примеры для самых частых задач

Управление облаком и каталогами

yc resource-manager cloud list                    # список облаков
yc resource-manager folder list --cloud-id <id>   # список папок в облаке

Управление виртуальными машинами

yc compute instance list                          # список всех ВМ
yc compute instance create --name my-vm ...        # создание ВМ
yc compute instance delete --name my-vm            # удаление ВМ
yc compute ssh --name my-vm                        # подключение по SSH

Управление Kubernetes

yc managed-kubernetes cluster list                 # список кластеров K8s
yc managed-kubernetes cluster get-credentials <id> # получить доступ к кластеру
yc managed-kubernetes node-group list              # список групп узлов

Работа с профилями

yc config profile list                             # список профилей
yc config profile activate <profile>               # переключиться на другой профиль
yc config list                                     # текущая конфигурация

Полезные трюки для повседневной работы

  1. Форматы вывода: добавляйте

    --format json|yaml|table
    для удобного отображения

    yc compute instance list --format table  # красивая таблица
    yc compute instance list --format json   # для обработки в скриптах
    
  2. Фильтрация: используйте

    jq
    для JSON-вывода

    yc compute instance list --format json | jq '.[] | {name: .name, id: .id}'
    
  3. Быстрая справка по любому флагу:

    --help
    покажет все параметры

    yc compute instance create --help | grep -A5 "zone"  # найти параметры зоны
    

Это и есть ваше "меню" — многоуровневая система подсказок, которая всегда под рукой. Начинайте с

yc help
, а дальше
Tab
подскажет все возможные продолжения команды

Leave a Comment