Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Популярные
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • Машинное обучение
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Облако для интеграторов
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Контент-программа
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Истории успеха
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Документация
  • Блог
Проект Яндекса
© 2025 ООО «Яндекс.Облако»
Yandex Compute Cloud
    • Все инструкции
      • Получить информацию о ВМ
      • Получить вывод последовательного порта
    • Посмотреть операции с ресурсами сервиса
  • Yandex Container Solution
  • Управление доступом
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Обучающие курсы

В этой статье:

  • Получить информацию снаружи ВМ
  • Получить информацию изнутри ВМ
  • HTTP-запрос
  • Примеры запросов
  1. Пошаговые инструкции
  2. Получение информации о виртуальной машине
  3. Получить информацию о ВМ

Получить информацию о виртуальной машине

Статья создана
Yandex Cloud
Улучшена
Обновлена 4 апреля 2025 г.
  • Получить информацию снаружи ВМ
  • Получить информацию изнутри ВМ
    • HTTP-запрос
    • Примеры запросов

Вы можете получить основную информацию о каждой созданной вами виртуальной машине на странице ВМ в консоли управления. Чтобы получить детальную информацию вместе с пользовательскими метаданными, воспользуйтесь CLI или API.

Также основную информацию и метаданные можно получить изнутри ВМ.

Получить информацию снаружи ВМПолучить информацию снаружи ВМ

Этот способ предоставляет доступ ко всем каталогам метаданных и некоторым ключам в них:

  • каталог computeMetadata — для чтения доступны только ключи в /instance/attributes/*.
  • каталог user-data доступен для чтения полностью.
Консоль управления
CLI
Terraform
API

В сервисе Compute Cloud, на странице Виртуальные машины, приводится список ВМ в каталоге с краткой информацией о них.

Для получения подробной информации о ВМ нажмите на строку с ее именем.

На вкладке:

  • Обзор приводится общая информация о ВМ, в том числе IP-адреса, присвоенные ВМ.
  • Диски приводится информация о дисках, подключенных к ВМ.
  • Файловые хранилища приводится информация о подключенных файловых хранилищах.
  • Операции приводится список операций с ВМ и подключенными к ней ресурсами, например дисками.
  • Мониторинг приводится информация о потреблении ресурсов на ВМ. Эту информацию можно получить только в консоли управления или изнутри ВМ.
  • Серийная консоль предоставлен доступ к серийной консоли, если при создании ВМ вы разрешили к ней доступ.
  • Последовательный порт приводится информация, которую ВМ выводит в последовательный порт. Чтобы получить эту информацию через API или CLI, воспользуйтесь инструкцией Получить вывод последовательного порта.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  1. Посмотрите описание команды для получения вывода последовательного порта:

    yc compute instance get --help
    
  2. Выберите ВМ, например first-instance:

    yc compute instance list
    

    Результат:

    +----------------------+-----------------+---------------+---------+----------------------+
    |          ID          |       NAME      |    ZONE ID    | STATUS  |     DESCRIPTION      |
    +----------------------+-----------------+---------------+---------+----------------------+
    | fhm0b28lgfp4******** | first-instance  | ru-central1-a | RUNNING | my first vm via CLI  |
    | fhm9gk85nj7g******** | second-instance | ru-central1-a | RUNNING | my second vm via CLI |
    +----------------------+-----------------+---------------+---------+----------------------+
    
  3. Получите основную информацию о ВМ:

    yc compute instance get first-instance
    

    Чтобы получить информацию о ВМ вместе с метаданными, используйте флаг --full:

    yc compute instance get --full first-instance
    

Terraform позволяет быстро создать облачную инфраструктуру в Yandex Cloud и управлять ею с помощью файлов конфигураций. В файлах конфигураций хранится описание инфраструктуры на языке HCL (HashiCorp Configuration Language). При изменении файлов конфигураций Terraform автоматически определяет, какая часть вашей конфигурации уже развернута, что следует добавить или удалить.

Terraform распространяется под лицензией Business Source License, а провайдер Yandex Cloud для Terraform — под лицензией MPL-2.0.

Подробную информацию о ресурсах провайдера смотрите в документации на сайте Terraform или в зеркале.

Если у вас еще нет Terraform, установите его и настройте провайдер Yandex Cloud.

  1. Опишите в конфигурационном файле Terraform параметры ресурсов, которые необходимо создать:

    data "yandex_compute_instance" "my_instance" {
      instance_id = "<идентификатор_ВМ>"
    }
    
    output "instance_external_ip" {
      value = "${data.yandex_compute_instance.my_instance.network_interface.0.nat_ip_address}"
    }
    

    Где:

    • data "yandex_compute_instance" — описание источника данных для получения информации о ВМ:
      • instance_id — идентификатор ВМ.
    • output "instance_external_ip" — публичный IP-адрес ВМ, который будет выводиться в результате:
      • value — возвращаемое значение.

    Более подробную информацию о параметрах источника данных yandex_compute_instance см. в документации провайдера.

  2. Создайте ресурсы:

    1. В терминале перейдите в папку, где вы отредактировали конфигурационный файл.

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

      terraform validate
      

      Если конфигурация является корректной, появится сообщение:

      Success! The configuration is valid.
      
    3. Выполните команду:

      terraform plan
      

      В терминале будет выведен список ресурсов с параметрами. На этом этапе изменения не будут внесены. Если в конфигурации есть ошибки, Terraform на них укажет.

    4. Примените изменения конфигурации:

      terraform apply
      
    5. Подтвердите изменения: введите в терминале слово yes и нажмите Enter.

    Terraform создаст все требуемые ресурсы и отобразит значения выходных переменных в терминале. Чтобы проверить результат, выполните команду:

    terraform output instance_external_ip
    

    Результат:

    instance_external_ip = "158.160.50.228"
    

Чтобы получить основную информацию о ВМ, воспользуйтесь методом REST API get для ресурса Instance или вызовом gRPC API InstanceService/Get.

Основная информация не включает пользовательские метаданные, которые были переданы при создании или изменении ВМ. Чтобы получить информацию вместе с метаданными, укажите в параметрах view=FULL.

Получить информацию изнутри ВМПолучить информацию изнутри ВМ

Изнутри ВМ можно получить прямой доступ к метаданным ВМ. Этот способ предоставляет доступ ко всем каталогам метаданных и всем ключам в них.

Получить прямой доступ (без аутентификации) к метаданным изнутри ВМ можно через специальный сервис метаданных. Сервис метаданных внутри ВМ доступен по URL http://169.254.169.254.

Все аутентифицированные пользователи ВМ могут получить доступ к сервису метаданных без ограничений. Ограничить доступ отдельного пользователя ВМ к метаданным нельзя.

Проверить работу сервиса метаданных можно с помощью утилиты cURL, предварительно подключившись к ВМ по протоколу ssh:

curl \
  --header Metadata-Flavor:Google \
  169.254.169.254

В ответ сервис метаданных выдаст список доступных версий метаданных, например:

1.0
2007-01-19
2007-03-01
...
2023-02-15
2023-05-10
latest

Рекомендуется всегда использовать последнюю (latest) версию метаданных.

HTTP-запросHTTP-запрос

GET http://169.254.169.254/computeMetadata/v1/instance/
  ? alt=<json|text>
  & recursive=<true|false>
  & wait_for_change=<true|false>
  & last_etag=<string>
  & timeout_sec=<int>
Metadata-Flavor: Google

Где:

  • alt — формат ответа (по умолчанию text).
  • recursive — если true, возвращает все значения по дереву рекурсивно. По умолчанию false.
  • wait_for_change — если true, ответ будет возвращен только когда один из параметров метаданных изменится. По умолчанию false.
  • last_etag — значение ETag из предыдущего ответа на аналогичный запрос. Используйте при wait_for_change="true".
  • timeout_sec — максимальное время ожидания запроса. Используйте при wait_for_change="true".

В ответ сервис вернет актуальные значения ключей метаданных каталога computeMetadata.

Примеры запросовПримеры запросов

Получение FQDNПолучение FQDN

Чтобы получить полное имя ВМ (FQDN) из каталога computeMetadata, подключитесь к ВМ и выполните запрос:

curl \
  --header Metadata-Flavor:Google \
  169.254.169.254/computeMetadata/v1/instance/hostname

Получение метаданных ВМ в удобном для чтения форматеПолучение метаданных ВМ в удобном для чтения формате

Чтобы получить метаданные в удобном для чтения формате, подключитесь к ВМ и выполните запрос, воспользовавшись утилитой jq:

  curl \
    --header Metadata-Flavor:Google \
    169.254.169.254/computeMetadata/v1/instance/?recursive=true | \
    jq -r '.'

Получение идентификационного документаПолучение идентификационного документа

Чтобы получить идентификационный документ из каталога computeMetadata, подключитесь к ВМ и выполните запрос:

curl \
  --header Metadata-Flavor:Google \
  169.254.169.254/computeMetadata/v1/instance/vendor/identity/document

Получение данных из каталога user-dataПолучение данных из каталога user-data

Чтобы получить метаданные из каталога user-data, подключитесь к ВМ и выполните запрос:

curl \
  --header Metadata-Flavor:Google \
  169.254.169.254/latest/user-data

В ответ сервис метаданных вернет результат в формате YAML:

#cloud-config
datasource:
 Ec2:
  strict_id: false
ssh_pwauth: no
users:
- name: admin
  sudo: ALL=(ALL) NOPASSWD:ALL
  shell: /bin/bash
  ssh_authorized_keys:
  - ssh-ed25519 AAAAC3Nza******l0pTWGO

Чтобы получить в выводе только значение определенного ключа (например, имени пользователя), воспользуйтесь инструментом yq.

curl \
  --silent \
  --fail \
  --header Metadata-Flavor:Google \
  169.254.169.254/latest/user-data | \
  yq .users[].name

Получение IAM-токена сервисного аккаунтаПолучение IAM-токена сервисного аккаунта

При выполнении запросов к API Yandex Cloud необходим IAM-токен, выданный сервисному аккаунту. Такой IAM-токен может быть получен через сервис метаданных изнутри ВМ. Для этого к виртуальной машине должен быть привязан сервисный аккаунт.

Чтобы получить IAM-токен из каталога computeMetadata, подключитесь к ВМ и выполните запрос:

curl \
  --silent \
  --fail \
  --header Metadata-Flavor:Google \
  169.254.169.254/computeMetadata/v1/instance/service-accounts/default/token | \
  jq -r .access_token

Получение данных из каталога user-data снаружи ВМПолучение данных из каталога user-data снаружи ВМ

Чтобы получить метаданные снаружи ВМ, воспользуйтесь инструментом Yandex Cloud CLI:

yc compute instance get my-vm --full --jq .metadata

В ответ сервис метаданных вернет результат в формате JSON:

{
  "install-unified-agent": "0",
  "serial-port-enable": "0",
  "ssh-keys": "admin:ssh-ed25519 AAAAC3N******l0pTWGO admin@my.domain\n",
  "user-data": "#cloud-config\ndatasource:\n Ec2:\n  strict_id: false\nssh_pwauth: no\nusers:\n- name: admin\n  sudo: ALL=(ALL) NOPASSWD:ALL\n  shell: /bin/bash\n  ssh_authorized_keys:\n  - ssh-ed25519 AAAAC3N******l0pTWGO"
}

Информацию о способах получить переданные через метаданные значения переменных и секретов Yandex Lockbox см. в инструкциях Создать виртуальную машину с метаданными из переменных окружения и Создать ВМ с доступом к секрету Yandex Lockbox.

Была ли статья полезна?

Предыдущая
Получить информацию о публичном образе
Следующая
Получить вывод последовательного порта
Проект Яндекса
© 2025 ООО «Яндекс.Облако»