VK Cloud logo

ivkcs_user_data ресурсы

ivkcs_user_data ресурсының аргументтері 1 кестеде келтірілген.

1 кесте — ivkcs_user_data ресурсының аргументтері

Атауы

Сипаттамасы

Пішімі

Міндетті

Әдепкі мәні

Мән өзгерген кезде ресурсты қайта жасау

uuid

Сервис орналастыруының идентификаторы

string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

hosts

Агентті инициализациялауға арналған хост атауларының тізімі

list, тізім элементтері — string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

target_os

Мақсатты ОЖ (Аргумент target_os бөлімінде толығырақ)

string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ssh_private_key

Хостты сәйкестендіруге арналған RSA пішіміндегі жабық кілт. ssh_public_key аргументімен бірге пайдаланылады

string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ssh_public_key

Хостты сәйкестендіруге арналған RSA пішіміндегі ашық кілт. ssh_private_key аргументімен бірге пайдаланылады

string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ssh_authorized_keys

Пайдаланушыны SSH арқылы аутентификациялауға арналған кілттер. Әдепкі пайдаланушыға жазылады

list, тізім элементтері — string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ca_certificates

ОЖ-де сенімді ретінде орнатылуы тиіс түбірлік сертификаттар тізімі

list, тізім элементтері — string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

agent_install

Агентті орнату керек пе, соны анықтайды

boolean

ivkcs_user_data ресурсы

true

ivkcs_user_data ресурсы

agent_memory_limit

Агент пайдаланатын жедел жад шектеуі, МБ

integer

ivkcs_user_data ресурсы

512

ivkcs_user_data ресурсы

packages

Қандай пакеттер орнатылуы тиіс екенін анықтайды (Аргумент packages бөлімінде толығырақ)

set

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

user_script

Cloud-init арқылы іске қосылатын скрипттер

list

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

token_file_path

Marketplace API қол жеткізу токенін жазуға арналған файлға жол

string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

token_rotate

Токен ротациясын қосу керек пе, соны анықтайды

boolean

ivkcs_user_data ресурсы

false

ivkcs_user_data ресурсы

token_file_owner

Токені бар файлдың иесі ретінде тағайындалатын пайдаланушы

string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

token_file_group

Токені бар файлға тағайындалатын топ

string

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы

ivkcs_user_data ресурсы user_data атрибутын жолдар тізімі пішімінде қайтарады. Тізімдегі индекс hosts аргументінде берілген хост индексіне сәйкес келеді. Мәні — MIME архиві пішіміндегі cloud-config конфигурациясы. Алынған мәнді vkcs_compute_instance ресурсының user_data аргументінде пайдаланыңыз.

`ivkcs_user_data` ресурсын пайдалану мысалы
# Кілт жұбын жасауresource "ivkcs_ssh_keypair" "test" {}# cloud-config конфигурациясын жасау. Хостта агентті инициализациялауға арналған деректерді алуresource "ivkcs_user_data" "test" {  uuid                = var.instance_uuid  hosts               = ["host1"]  target_os           = "almalinux9"  ssh_authorized_keys = [    ivkcs_ssh_keypair.test.public_key,  ]}resource "vkcs_compute_instance" "single" {  name              = "host1"  ...  # ВМ-ді баптауға арналған cloud-config конфигурациясын қолдану. Агентті орнату  # [] ішінде хост нөмірін көрсетіңіз. Егер сервис бір ВМ-де орналастырылса, мән 0 болуы керек  user_data = ivkcs_user_data.test.user_data[0]  ...}

Аргумент target_os

target_os аргументінің ықтимал мәндері 2 кестеде келтірілген. Әрбір мән бұлтты платформаның нақты базалық образына және оның белгілі бір конфигурациясына (ОЖ мен Cloud-init нұсқасының үйлесімі) сәйкес келеді.

Дұрыс cloud-config конфигурациясын жасау кестедегі базалық образдар үшін кепілдендіріледі.

2 кесте — target_os аргументінің ықтимал мәндері

Мәні

ОЖ

Cloud-init нұсқасы

Базалық ОЖ

freebsd132

FreeBSD 13.2

23.1.1

FreeBSD

debian114

Debian 11.4

20.4.1

Debian

ubuntu2204

Ubuntu 22.04

22.2

Debian

redos73

RedOS 7.3

21.4

Debian

centos84

CentOS 8.4

19.4

RHEL

altserver10

Альт Сервер 10

22.3.4

Debian

astralinux17

Astra Linux SE 1.7 «Воронеж»

20.2

Debian

almalinux9

AlmaLinux 9

22.1

RHEL

Егер кестеде қажетті ОЖ болмаса, туыстығы жағынан ең жақын ОЖ үшін немесе ең жақын базалық ОЖ үшін мәнді пайдаланыңыз. Мысалы, Ubuntu 21.10 үшін туыстығы жағынан ең жақын ОЖ — Ubuntu 22.04, сондықтан ubuntu2204 мәнін көрсетіңіз.

target_os мәніне сәйкес келетін VK Cloud базалық образының ID-сін OpenStack CLI ішінде openstack image list командасын орындау арқылы білуге болады. Команда жобада қолжетімді ВМ образдарының толық тізімін шығарады. Әрбір образ үшін оның ID-і, target_os мәні және күйі көрсетіледі.

Аргумент packages

packages аргументтері 3 кестеде келтірілген.

3 кесте — packages аргументтері

Атауы

Сипаттамасы

Пішімі

Міндетті

name

Пакет атауы

string

ivkcs_user_data ресурсы

version

Пакет нұсқасы

string

ivkcs_user_data ресурсы

Альт Сервер ОЖ үшін пакет атауы мен нұсқасын көрсету үшін мына пішімді пайдаланыңыз:

name: "<NAME>=<VERSION_PART_1>"version: "<VERSION_PART_2>"

Мұнда:

  • <NAME> — пакет атауы.
  • <VERSION_PART_1> — пакет нұсқасының бірінші - таңбасына дейінгі мәні.
  • <VERSION_PART_2> — пакет нұсқасының бірінші - таңбасынан кейінгі мәні.
mc атауы және 4.8.28-alt1:p10+299225.100.2.1 нұсқасы бар пакетті жазу мысалы
name: "mc=4.8.28"version: "alt1:p10+299225.100.2.1"
Пакеттерді орнатумен `ivkcs_user_data` ресурсының мысалы
resource "ivkcs_user_data" "user_data" {  uuid      = var.instance_uuid  hosts     = ["host1"]  target_os = "almalinux9"  packages {    name    = "mc"    version = "4.8.30"  }  packages {    name    = "tmux"    version = "3.3a"  }}

Аргумент user_script

user_script аргументтері 4 кестеде келтірілген.

4 кесте — user_script аргументтері

Атауы

Сипаттамасы

Пішімі

Әдепкі мәні

name

Скрипт атауы. Скрипттер әліпби ретімен орындалады

string

ivkcs_user_data ресурсы

content_type

Скрипт түрі. Скрипттің қашан орындалатынын анықтайды. Ықтимал мәндер:

  • text/x-shellscript-per-boot;
  • text/x-shellscript-per-instance;
  • text/x-shellscript-per-once

string

ivkcs_user_data ресурсы

content

Скрипт денесі

string

ivkcs_user_data ресурсы

Скрипттердің орындалу реті 5 кестеде келтірілген.

5 кесте — Скрипт түрлері

Орындалу кезектілігі

Скрипт түрі

Сипаттамасы

1

x-shellscript-per-boot

Жүйе жүктелген сайын әліпби ретімен орындалады

2

x-shellscript-per-instance

Жаңа инстанс алғаш іске қосылғанда әліпби ретімен орындалады

3

x-shellscript-per-once

Бір рет әліпби ретімен орындалады. Инстанс өзгерген кезде қайта іске қосылмайды

`user_script` бар `ivkcs_user_data` ресурсының мысалы
resource "ivkcs_user_data" "init" {  uuid      = var.instance_uuid  hosts     = [local.hosts_name]  target_os = "almalinux9"  ssh_authorized_keys = [    ivkcs_ssh_keypair.keypair.public_key,  ]    user_script {    name = "script1"    content_type = "text/x-shellscript-per-once"    content =<<-EOT#!/bin/bashecho "script1"EOT  }  user_script {    name = "script2"    content_type = "text/x-shellscript-per-instance"    content =<<-EOT#!/bin/bashecho "script2"EOT  }}

Қосымша ақпарат: