- Terraform plugin for yandex.cloud
- Yandex Terraform Quickstart
- Документация terraform провайдера
- Мой пример на github
- Yandex.Cloud CLI 0.13.2 darwin/amd64
- terraform_provaider_yandex_v0.1.14
provider "yandex" {Как получить yandex-token можно почитать по ссылке на документацию CLI утилиты для Yandex.Cloud.
token = "${var.yandex-token}"
cloud_id = "${var.yandex-cloud-id}"
folder_id = "${var.yandex-folder-id}"
zone = "${var.zone}"
}
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" {Следующее препятствие появилось в тот момент, когда я захотел запустить что-то отличное от ubuntu 16.4 (image_id = «fd87va5cc00gaq2f5qfb»). Как получить идентификаторы образов осталось не ясно. Не помогла и CLI утилита:
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"]
}
➜ 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 постоянным для инстанса.