VK Cloud logo

MLflow инстансын құру

Мақалада Terraform көмегімен MLflow инстансын құру мысалдары келтірілген.

Инстансты құру кезінде мыналар пайдаланылады:

Параметрлердің толық сипаттамасы — Terraform провайдерінің құжаттамасында.

Инстансты құру алдында

  1. Квоталарды тексеріңіз. Таңдалған аймақта инстансты құру үшін ресурстар жеткілікті екеніне көз жеткізіңіз. Әртүрлі аймақтар үшін әртүрлі квоталар бапталуы мүмкін.

    Қажет болса, квоталарды ұлғайтыңыз.

  2. Бұл әлі жасалмаса, Terraform орнатып, ортаны баптаңыз.

  3. vkcs_provider.tf файлында провайдердің 0.6.0 немесе одан жоғары нұсқасы көрсетілгеніне көз жеткізіңіз. Егер провайдер нұсқасы төмен болса, провайдерді жаңартыңыз.

1. MLflow инстансының сипаттамасы бар файлды жасаңыз

Төмендегі мысалда инстанс келесі конфигурацияда құрылады:

  • әдепкі аймақ, қолжетімділік аймағы GZ1;
  • диск түрі SSD, өлшемі — 50 ГБ;
  • деректер дискісінің түрі SSD, өлшемі — 60 ГБ. Мазмұны келесі Terraform конфигурация файлын main.tf жасаңыз:
resource "vkcs_mlplatform_mlflow" "mlflow" {  name              = "tf-example"  flavor_id         = data.vkcs_compute_flavor.basic.id  jh_instance_id    = vkcs_mlplatform_jupyterhub.jupyterhub.id  demo_mode         = true  availability_zone = "GZ1"  boot_volume = {    size        = 50    volume_type = "ceph-ssd"  }  data_volumes = [    {      size        = 60      volume_type = "ceph-ssd"    },  ]  networks = [    {      network_id = vkcs_networking_network.default.id    },  ]}

Мұнда:

  • flavor_id — ВМ түрінің идентификаторы. Идентификаторды манифестте көрсетуге немесе деректер көзінен алуға болады.

  • jh_instance_id — бірлесіп жұмыс істеуге арналған JupyterHub инстансының идентификаторы. Жаңа инстанс жасауға немесе барын пайдалануға болады.

  • demo_mode — демо-режим. Егер true болса, барлық деректер инстанстың ВМ-інде сақталады. Егер false болса, деректерді сақтау үшін DBaaS Postgres дерекқоры бар VK Object Storage бакеті қосылады.

  • network_id — инстанс орналастырылатын желінің идентификаторы. Инстанс бар желіде немесе жаңа желіде орналастырылуы мүмкін. Идентификаторды манифестте көрсетуге, деректер көзінен немесе ресурстан алуға болады.

2. (Опционалды) ВМ түріне арналған деректер көзінің сипаттамасы бар файлды жасаңыз

Қажетті ВМ түрінің сипаттамасы бар Terraform конфигурация файлын flavor.tf жасаңыз:

data "vkcs_compute_flavor" "basic" {  name = "STD2-4-4"}

Файлда көрсетілген ВМ түрі Terraform жобаңызда MLflow инстансын жасау үшін пайдаланылады.

3. (Опционалды) Байланыстырылған JupyterHub инстансының сипаттамасы бар файлды жасаңыз

Terraform конфигурация файлын jh_instance.tf JupyterHub инстансының сипаттамасымен жасаңыз.

4. (Опционалды) Инстанс үшін желілік инфрақұрылым сипаттамасы бар файлды жасаңыз

Инстансқа арналған желілік инфрақұрылым сипаттамасы бар Terraform конфигурация файлын network.tf жасаңыз:

Жобада бар желіге арналған деректер көзі сипаттамасының мысалы:

data "vkcs_networking_network" "default" {  name = "default"  sdn = "neutron"}

5. Terraform көмегімен қажетті ресурстарды жасаңыз

  1. Terraform конфигурация файлдарын бір директорияға орналастырыңыз:

    • vkcs_provider.tf;
    • main.tf;
    • flavor.tf (егер жасалса);
    • jh_instance.tf(егер жасалса);
    • network.tf(егер жасалса).
  2. Осы директорияға өтіңіз.

  3. Конфигурация файлдарының дұрыс екенін және қажетті өзгерістерді қамтитынын тексеріңіз:

    terraform validate && terraform plan
  4. Өзгерістерді қолданыңыз:

    terraform apply

    Растауды сұрағанда, yes енгізіңіз.

  5. Операцияның аяқталуын күтіңіз.

6. Конфигурацияның қолданылуын тексеріңіз

MLflow инстансы сәтті құрылғанына көз жеткізіңіз:

  1. VK Cloud жеке кабинетіне өтіңіз.
  2. ML PlatformИнстансы бөліміне өтіңіз. MLflow инстансының құрылғанына және белсенді екеніне көз жеткізіңіз.

Пайдаланылмайтын ресурстарды жойыңыз

Егер Terraform көмегімен жасалған ресурстар енді қажет болмаса, оларды жойыңыз:

  1. Terraform конфигурация файлдары бар директорияға өтіңіз.

  2. Келесі пәрменді орындаңыз:

    terraform destroy

    Растауды сұрағанда, yes енгізіңіз.

  3. Операцияның аяқталуын күтіңіз.