0

Yandex.Cloud — первый опыт

Не так давно команда Yandex.Cloud выпустила плагин для terraform для управления своим облаком, что стало для меня поводом его попробовать. Посмотрим как это работает. Для начала ссылки: Используемые версии:
  • Yandex.Cloud CLI 0.13.2 darwin/amd64
  • terraform_provaider_yandex_v0.1.14
Опишу неочевидные моменты, которые возникли в процессе настройки провайдера:
provider "yandex" {
token = "${var.yandex-token}"
cloud_id = "${var.yandex-cloud-id}"
folder_id = "${var.yandex-folder-id}"
zone = "${var.zone}"
}
Как получить yandex-token можно почитать по ссылке на документацию CLI утилиты для Yandex.Cloud.
cloud_id и folder_id мне удалось получить через упомянутую выше CLI утилиту, следующими запросами:
➜ yc resource-manager cloud list
+----------------------+----------------------+
| ID | NAME |
+----------------------+----------------------+
| b1g8r5iofbr0lrd6ii8u | cloud-b1g8r5iofbr0lr |
+----------------------+----------------------+
➜ yc resource-manager folder list
+----------------------+---------+--------+--------+
| ID | NAME | LABELS | STATUS |
+----------------------+---------+--------+--------+
| b1giuod9394273s0sqgn | default | | ACTIVE |
+----------------------+---------+--------+--------+
Далее с описанием сети проблем не возникло:
resource "yandex_vpc_network" "test-network" {
name = "test-network"
}
resource "yandex_vpc_subnet" "test-subnet" {
name = "test-subnet"
zone = "${var.zone}"
network_id = "${yandex_vpc_network.test-network.id}"
v4_cidr_blocks = ["10.0.0.0/24"]
}
Следующее препятствие появилось в тот момент, когда я захотел запустить что-то отличное от ubuntu 16.4 (image_id = «fd87va5cc00gaq2f5qfb»). Как получить идентификаторы образов осталось не ясно. Не помогла и CLI утилита:
 ➜ yc compute image list
+----+------+--------+-------------+--------+
| ID | NAME | FAMILY | PRODUCT IDS | STATUS |
+----+------+--------+-------------+--------+
+----+------+--------+-------------+--------+
Проблему решила техподдержка в считанные минуты. Получить список всех доступных стандартных образов:
yc compute image list --folder-id standard-images
Подключить дополнительный диск к VM удалось без проблем. Кстати, я не нашел как сделать это в WEB консоли. Далее посмотрел что можно сделать в WEB и что можно сделать через CLI. И попробовал составить список того что мешает нам использовать платформу прямо сейчас:
  • Монтирование дисков без остановки инстанса. Yandex.Cloud над этим уже работают.
  • Нет внутреннего механизма работы со snapshots, вроде Lifecycle Manager
  • В terraform плагине не хватает возможности сделать IP постоянным для инстанса.
В целом впечатление осталось хорошее, не смотря на то, что в WEB интерфейсе пока можно сделать только основное. Кроме этого я пока не пробовал другие сервисы, кроме Compute Cloud и VPC. Мой пример Terraform для Yandex.Cloud можно посмотреть на github.

Alexey Egorychev

FreeBSD and Linux sysadmin. Know many systems like mailsystems, DB, WWW stack. Automation with salt, ansible. Monitoring with nagios, zabbix.