OpenStackClient (OSC) — это универсальный инструмент командной строки (CLI), который позволяет управлять и контролировать облачную инфраструктуру OpenStack. С помощью OSC пользователи могут получать информацию о состоянии ресурсов, выявлять проблемы, оптимизировать загрузку и контролировать использование квот.
В этом разделе для вашего удобства мы собрали основные команды и их наиболее часто применяемые параметры, с помощью которых вы можете получить информацию о состоянии облачной инфраструктуры и доступных ресурсах, например:
- Состояние виртуальных машин (ВМ): статус, IP-адреса, используемые ресурсы (CPU, RAM, диск).
- Сетевая инфраструктура: сети, подсети, маршрутизаторы, плавающие IP, группы безопасности и их правила.
- Хранилища: тома (volumes), снимки (snapshots), резервные копии.
- Образы (images): доступные образы ВМ, их статус, формат, размер.
- Квоты и лимиты: текущее использование ресурсов и их лимиты.
Примечание: В синтаксисе приведенных ниже команд квадратные скобки ‘[‘ и ‘]’ обозначают необязательные параметры, а угловые скобки ‘<’ и ‘>’ — заполнители, которые пользователю необходимо заменить конкретными значениями. Вертикальная черта ‘|’ используется для обозначения взаимоисключающих вариантов — нужно выбрать один из перечисленных параметров или значений. В реальных командах квадратные и угловые скобки, а также вертикальная черта опускаются.
Предварительные требования
- Вы должны иметь учётную запись в личном кабинете Peerobyte. О том, как зарегистрировать учётную запись — смотрите инструкцию: “Регистрация аккаунта”.
- Вы должны заказать услугу “Облачная инфраструктура” и получить сообщение о её готовности к работе на электронную почту, привязанную к вашему аккаунту, или в личном кабинете Peerobyte.
- В системе должны быть установлены Python и OpenStackClient в соответствии с инструкцией: “Установка OpenStackClient”.
- Вы должны пройти аутентификацию в облачной инфраструктуре, как это показано в инструкции: “Аутентификация OpenStackClient через переменные окружения”.
Полезные глобальные флаги OSC
Вывод данных о состоянии облачной инфраструктуры через OSC часто требует дополнительной обработки — как для удобства восприятия, так и для автоматизации, например, в рамках подхода Infrastructure as Code. Чтобы оптимизировать вывод, вы можете добавить к команде следующие флаги:
—fit-width — Адаптирует таблицу под ширину окна терминала. Позволяет предотвратить ситуацию, когда данные в больших таблицах “ломают” вывод. ст. Например:
openstack server list --fit-width
-f <format> — Меняет формат вывода. Доступные значения <format> зависят от команды и версии клиента; смотрите openstack <команда> -h. Часто используются: table (по умолчанию), csv, json, yaml, value (только значения без заголовков и рамок); для некоторых show команд — shell.
Например:
openstack volume list -f json
-c <COLUMN> — Указывает столбец данных, который будет выведен. Может повторяться, если нужно вывести несколько столбцов. Например:
stack server list -c ID -c Name
—sort-column <COLUMN> — Сортирует вывод по указанному столбцу <COLUMN> по возрастанию. Если нужно отсортировать значения в порядке убывания, то добавьте флаг: —sort-descending. Например:
openstack image list --sort-column Name --sort-descending
—long — отображает дополнительные поля с информацией о перечисленных объектах. Доступно не для всех команд. Например:
openstack image list --long1. Виртуальные машины (ВМ, инстансы)
Здесь приведены команды для сбора информации о ВМ, типах ВМ, ключевых парах.
Список всех ВМ
openstack server list [--status <STATUS>]
openstack server list [--status <STATUS>]где:
—status <STATUS> — Отобразит список виртуальных машин с указанным статусом:
ACTIVE — ВМ запущена и работает.
SHUTOFF — ВМ выключена.
BUILD — ВМ создаётся.
ERROR — Ошибка при создании или работе ВМ.
PAUSED — ВМ приостановлена (пауза).
SUSPENDED — ВМ в состоянии гибернации.
RESCUE — ВМ в режиме восстановления.
RESIZE — Идёт изменение флейвора (конфигурации).
MIGRATING — ВМ мигрирует на другой узел.
SHELVED — ВМ архивирована.
Полный список параметров и аргументов см. в документации OpenStack.
Детальная информация о конкретной ВМ
openstack server show [--diagnostics] <SERVER>
openstack server show [--diagnostics] <SERVER>где:
<SERVER> — Имя сервера или его ID.
Полный список параметров и аргументов см. в документации OpenStack.
Список ключевых пар
openstack keypair list
openstack keypair listПолный список параметров и аргументов см. в документации OpenStack.
Список типов ВМ
openstack flavor list
openstack flavor list
Полный список параметров и аргументов см. в документации OpenStack.
Детальная информация о конкретном типе ВМ
openstack flavor show <FLAVOR>
openstack flavor show <FLAVOR>где:
<FLAVOR> — Имя типа ВМ или его ID.
Полный список параметров и аргументов см. в документации OpenStack.
2. Сетевые ресурсы
Здесь приведены команды для сбора информации о сетях, подсетях, маршрутизаторах, плавающих IP-адресах, правилах безопасности.
Список сетей
openstack network list [--external] [--long]
openstack network list [--external] [--long]где:
—external — показывает только внешние сети (с доступом в интернет).
—long — выводит расширенную информацию.
Полный список параметров и аргументов см. в документации OpenStack.
Список подсетей
openstack subnet list [--network <NETWORK>]
openstack subnet list [--network <NETWORK>]где:
—network <NETWORK> — фильтрует подсети по указанной сети. <NETWORK> — имя сети или её ID.
Полный список параметров и аргументов см. в документации OpenStack.
Список маршрутизаторов и их статус
openstack router list
openstack router listПолный список параметров и аргументов см. в документации OpenStack.
Список плавающих IP-адресов
openstack floating ip list
[--fixed-ip-address ]
[--status ]
openstack floating ip list
[--fixed-ip-address ]
[--status ]где:
—fixed-ip-address <IP> — покажет плавающий IP, привязанный к указанному внутреннему IP.
—status <STATUS> — отфильтрует IP-адреса по указанному статусу (ACTIVE — привязан к инстансу, DOWN — свободен).
Полный список параметров и аргументов см. в документации OpenStack.
Список портов
openstack port list
[--network ]
[--router | --server ]
[--fixed-ip subnet=,ip-address=]
openstack port list
[--network ]
[--router | --server ]
[--fixed-ip subnet=,ip-address=]где:
—network <NETWORK> — отфильтрует порты по сети (имя или ID сети).
—router <ROUTER> — покажет только порты, связанные с указанным роутером (имя или ID).
—server <SERVER> — покажет только порты, привязанные к указанному серверу (имя или ID).
—fixed-ip subnet=<SUBNET>,ip-address=<IP-ADDRESS> — отфильтрует порты по IP-адресу или подсети:
subnet=<SUBNET> — указание подсети (имя или ID).
ip-address=<IP-ADDRESS> — точное совпадение IP-адреса.
Полный список параметров и аргументов см. в документации OpenStack.
Список групп безопасности
openstack security group list
openstack security group listПолный список параметров и аргументов см. в документации OpenStack.
Список правил безопасности
openstack security group rule list <SEC_GROUP>
openstack security group rule list <SEC_GROUP>где:
<SEC_GROUP> — указывает ID или имя группы безопасности, для которой будут отображены правила.
Полный список параметров и аргументов см. в документации OpenStack.
3. Хранилища
Здесь приведены команды для сбора информации о томах, снимках томов (снапшотах) и резервных копиях.
Список томов
openstack volume list
openstack volume listПолный список параметров и аргументов см. в документации OpenStack.
Список снимков
openstack volume snapshot list [--volume <VOLUME_ID>]
openstack volume snapshot list [--volume <VOLUME_ID>]где:
—volume <VOLUME_ID> — показывает снапшоты указанного тома.
Полный список параметров и аргументов см. в документации OpenStack.
Детальная информация о томе
openstack volume show <VOLUME_ID> --fit-widths
openstack volume show <VOLUME_ID> --fit-widthsгде:
<VOLUME_ID> — ID тома, информацию о котором нужно показать.
—fit-width — ужать отображаемые данные по размерам окна.
Полный список параметров и аргументов см. в документации OpenStack.
Список резервных копий томов
openstack volume backup list
openstack volume backup listПолный список параметров и аргументов см. в документации OpenStack.
Детальная информация о резервной копии тома
openstack volume backup show <BACKUP>
openstack volume backup show <BACKUP>где:
<BACKUP> — имя или ID резервной копии тома, информацию о котором нужно показать.
Полный список параметров и аргументов см. в документации OpenStack.
4. Образы
Здесь приведены команды для сбора информации об образах.
Список доступных образов
openstack image list [--public | --private] [--long]
openstack image list [--public | --private] [--long]где:
—public — покажет образы, которые доступны всем пользователям.
—private — покажет образы, которые доступны только в рамках проекта пользователя.
—long — дополнительно отобразит формат образа, его размер и контрольную сумму.
Полный список параметров и аргументов см. в документации OpenStack.
Детальная информация о конкретном образе
openstack image show <IMAGE_ID> [--fit-width]
openstack image show <IMAGE_ID> [--fit-width]где:
<IMAGE_ID> — ID образа, информация о котором будет отображена.
—fit-width — ужать отображаемые данные по размерам окна.
Полный список параметров и аргументов см. в документации OpenStack.
5. Квоты и использование ресурсов
Здесь покажем, как посмотреть квоты и фактическое использование ресурсов.
Просмотр квот
openstack quota show --usage
openstack quota show --usageгде:
—usage — покажет дополнительно фактическое потребление ресурсов.
Полный список параметров и аргументов см. в документации OpenStack.
Что дальше?
Полный список команд OpenStackClient (OSC) с описаниями и параметрами доступен в официальной документации: Полный список команд OSC.
Откройте нужную команду, чтобы посмотреть доступные опции и примеры использования.