VK Cloud logo

Файл display.yaml

Тарифтік жоспар конфигурациясының шебері сипаттау үшін plans/<PLAN_NAME>/display.yaml файлында 1 кестесінде келтірілген параметрлерді көрсетіңіз.

Кесте 1 — plans//display.yaml файлының параметрлері

Атауы

Сипаттамасы

Форматы

Міндетті

pages

Бірінші және соңғы беттен басқа тарифтік жоспарды конфигурациялау шеберінің барлық беттерін сипаттайды.

Егер параметр көрсетілмесе, конфигурациялау шебері тек автоматты түрде қалыптастырылатын беттерден тұрады

Массив (толығырақ — Массив pages бөлімінде)

Жоқ

entities

Бұлттық платформа инфрақұрылымының элементтерін сипаттайды, осылайша тарифтік жоспарды конфигурациялау шеберінде олардың құнының есебі көрсетіледі:

  • ВМ.
  • Жүктеме теңгергіштері.
  • Сыртқы IP-мекенжайлар.

Құн бұлттық платформаның тарифтеріне сәйкес автоматты түрде есептеледі

Массив (толығырақ — Массив entities бөлімінде)

Иә

Массив pages

Әдепкі бойынша тарифтік жоспарды конфигурациялау шеберінде groups тарифтік опция топтарының барлығы көрсетіледі және бапталады. Шарттарға байланысты топтардың көрсетілуін баптау үшін when конструкциясын пайдаланыңыз (толығырақ — Конструкция when бөлімінде).

Тарифтік жоспарды конфигурациялау шеберінің беттерін сипаттау үшін (1 суреті):

  1. plans/<PLAN_NAME>/display.yaml файлында pages массивін көрсетіңіз.

  2. pages ішінде мынаны беріңіз:

    • name параметрі — беттің атауы. 32 таңбадан аспауы тиіс.
    • groups массиві.
  3. groups ішінде тарифтік жоспарды конфигурациялау шеберінің нақты бетіне арналған тарифтік опциялар топтарын сипаттаңыз. Әр топ үшін мынаны беріңіз:

    • name параметрі — тарифтік опциялар тобының атауы. 255 таңбадан аспауы тиіс.
    • parameters массиві — топқа кіретін тарифтік опциялар.
  4. parameters ішінде әр тарифтік опция үшін name параметрін — оның YAML-файлының атауын көрсетіңіз.

    Дүкен интерфейсінде тарифтік опциялар олардың YAML-файлдарындағы schema секциясында берілген атаулармен көрсетіледі.

  5. Тарифтік жоспарды конфигурациялау шеберінің кейінгі беттерін де дәл осылай сипаттаңыз. Беттердің ең көп саны — 5.

pic1

Рисунок 1 — Тарифтік жоспарды конфигурациялау шебері
Тарифтік жоспарды конфигурациялау шеберіндегі **Сервис баптаулары** бетінің сипаттамасының мысалы
pages:- name: Настройки сервиса # Имя страницы  groups:  - name: Сервер # Имя группы тарифных опций    parameters:    - name: network # Имя YAML-файла тарифной опции    - name: vm    - name: az  - name: Системный диск    parameters:    - name: volume_size    - name: volume_type

Массив entities

Әдепкі бойынша тарифтік жоспарды конфигурациялау шеберінде entities массивінде сипатталған инфрақұрылымның барлық элементтерінің құны есептеледі. Шарттарға байланысты инфрақұрылым құнының көрсетілуін баптау үшін when конструкциясын пайдаланыңыз (толығырақ — Конструкция when бөлімінде).

Инфрақұрылым элементінің түрі entities.entity параметрінде анықталады:

  • vm — ВМ.
  • load_balancing — жүктеме теңгергіші.
  • floating_ip — сыртқы IP-мекенжай.

ВМ

Тарифтік жоспарды конфигурациялау шеберінде ВМ құны есептелуі үшін (2 суреті):

  1. plans/<PLAN_NAME>/display.yaml файлында entities массивін көрсетіңіз.

  2. entities ішінде келесі параметрлерді беріңіз:

    • entity — инфрақұрылым элементінің түрі. vm көрсетіңіз.

    • description — ВМ сипаттамасы (опционалды).

    • count.const немесе count.param — ВМ саны.

      Тұрақты мәнді беру үшін count.const параметрін және оның мәнін көрсетіңіз.

      ВМ саны тарифтік опцияның мәнімен анықталуы үшін count.param параметрін және тиісті YAML-файлдың атауын көрсетіңіз.

    • flavor.const немесе flavor.param — ВМ түрі.

      Тұрақты мәнді беру үшін flavor.const параметрін және ВМ түрінің ID-сін көрсетіңіз.

      ВМ түрі тарифтік опция мәнімен анықталуы үшін flavor.param параметрін және ВМ түрін сипаттайтын YAML-файлдың атауын көрсетіңіз (datasource.type = flavor).

  3. ВМ дискілерін disks массиві арқылы сипаттаңыз (егер инфрақұрылым конфигурациясында datasource.type = volume_type түріндегі тарифтік опция болмаса, опционалды).

    1. Әр диск үшін келесі параметрлерді беріңіз:

      • type.const немесе type.param — диск түрі.

        Диск түрі тарифтік опцияның мәнімен анықталуы үшін type.param параметрін және диск түрін сипаттайтын тарифтік опцияның YAML-файлының атауын көрсетіңіз (datasource.type = volume_type).

        Тұрақты мәнді беру үшін type.const параметрін және келесі мәндердің бірін көрсетіңіз:

        • ceph-ssd — SSD түріндегі диск.
        • ceph-hdd — HDD түріндегі диск.
        • high-iops — High-IOPS SSD түріндегі диск (өнімділігі жоғары SSD).
      • size.const немесе size.param — диск өлшемі.

        Тұрақты мәнді беру үшін size.const параметрін және оның мәнін көрсетіңіз.

        Диск өлшемі тарифтік опцияның мәнімен анықталуы үшін size.param параметрін және тиісті тарифтік опцияның YAML-файлының атауын көрсетіңіз.

pic1

Рисунок 2 — Тарифтік жоспарды конфигурациялау шебері. Инфрақұрылым құны туралы ақпарат
Тарифтік жоспарды конфигурациялау шебері үшін ВМ сипаттамасының мысалы
entities:  - entity: vm    description: Виртуальная машина    count:      const: 1    flavor:      param: ds-flavor # Имя YAML-файла тарифной опции    disks:      - type:          param: root_type        size:          param: root_size      - type:          param: data_type        size:          param: data_size

Жүктеме теңгергіші

Тарифтік жоспарды конфигурациялау шеберінде жүктеме теңгергішінің құны есептелуі үшін:

  1. plans/<PLAN_NAME>/display.yaml файлында entities массивін көрсетіңіз.

  2. entities ішінде келесі параметрлерді беріңіз:

    • entity — инфрақұрылым элементінің түрі. load_balancing көрсетіңіз.

    • count.const немесе count.param — жүктеме теңгергіштерінің саны.

      Тұрақты мәнді беру үшін count.const параметрін және оның мәнін көрсетіңіз.

      Жүктеме теңгергіштерінің саны тарифтік опцияның мәнімен анықталуы үшін count.param параметрін және тиісті YAML-файлдың атауын көрсетіңіз.

Тарифтік жоспарды конфигурациялау шебері үшін жүктеме теңгергішін сипаттау мысалы
entities:  - entity: load_balancing    count:      param: number_balancing # Имя YAML-файла тарифной опции

Сыртқы IP-мекенжай

Тарифтік жоспарды конфигурациялау шеберінде сыртқы IP-мекенжай құны есептелуі үшін:

  1. plans/<PLAN_NAME>/display.yaml файлында entities массивін көрсетіңіз.

  2. entities ішінде келесі параметрлерді беріңіз:

    • entity — инфрақұрылым элементінің түрі. floating_ip көрсетіңіз.

    • count.const немесе count.param — сыртқы IP-мекенжайлар саны.

      Тұрақты мәнді беру үшін count.const параметрін және оның мәнін көрсетіңіз.

      Сыртқы IP-мекенжайлар саны тарифтік опцияның мәнімен анықталуы үшін count.param параметрін және тиісті YAML-файлдың атауын көрсетіңіз.

Тарифтік жоспарды конфигурациялау шебері үшін сыртқы IP-мекенжайды сипаттау мысалы
entities:  - entity: floating_ip    count:      const: 1

Конструкция when

when конструкциясы шартты тармақталуды басқарады. Ол мыналарды қамтиды:

  • Шарт түрі:

    • when.inkey және values параметрлерінде берілген мәндердің теңдігін тексеру. Егер key ішіндегі мән values ішіндегі кемінде бір мәнге тең болса, шарт орындалады.
    • when.not_inkey және values параметрлерінде берілген мәндердің тең еместігін тексеру. Егер key ішіндегі мән values ішіндегі барлық мәндерге тең болмаса, шарт орындалады.
  • Критерийлер. key және values параметрлерінде келесі тәсілдердің бірімен беріледі:

    • param параметрі арқылы — нақты тарифтік опцияның мәнін пайдалану үшін.
    • const параметрі арқылы — тұрақты мәнді пайдалану үшін.

    key ішінде бір мәнді, values ішінде бір немесе бірнеше мәнді беруге болады.

YAML форматындағы `when` құрылымы
when:  in: # Или not_in    key:      param: <OPTION> # Или const: <VALUE>    values:      - const: <VALUE>      - param: <OPTION>      ...

Мұнда:

  • <OPTION> — тарифтік опцияның YAML-файлының атауы.
  • <VALUE> — тұрақты мән.

Массив pages ішінде

pages массивінде when конструкциясында тарифтік опциялар тобын көрсету не көрсетпеу шартын анықтайтын шарт беріледі.

when конструкциясын пайдаланған кезде тарифтік опциялар топтары бар бет келесі шарттар орындалса, жасырылады:

  • Бір бет аясында барлық топтарда when конструкциясы бар.
  • Тарифтік жоспарды конфигурациялау шеберінде тарифтік опциялардың сондай мәндері берілген, сол себепті осы беттегі барлық топтардағы шарттар орындалмайды.

Бір тарифтік опцияны әртүрлі топтардағы when конструкцияларында пайдалануға болады. Тарифтік опцияның мәніне байланысты сол не өзге топтар көрсетіледі.

`pages` массивінде `when` конструкциясын пайдалану мысалы
pages:- name: Настройки бекапа # Имя страницы  groups:  - name: High-frequency бекап # Имя группы тарифных опций    parameters:    - name: frequency_per_day # Имя YAML-файла тарифной опции    when:      in:        key:          param: backup_method # Имя YAML-файла тарифной опции        values:          - const: high-frequency

Жоғарыдағы мысалда high-frequency әдісі үшін бэкаптар жасау жиілігі бапталады: егер backup_method тарифтік опциясының мәні high-frequency болса, тарифтік жоспарды конфигурациялау шеберінде frequency_per_day тарифтік опциясы бар High-frequency бекап тобын көрсету керек.

backup_method тарифтік опциясы:

  • Басқа топтардағы when конструкциясында пайдаланылуы мүмкін.
  • Басқа топтағы parameters ішінде берілуі тиіс.

frequency_per_day тарифтік опциясын басқа топтарда пайдалануға болмайды:

  • when конструкциясында, себебі тәуелділіктер иерархиясының бір ғана деңгейі қолданылады.
  • parameters ішінде, себебі бір тарифтік опция тек бір топта ғана көрсетілуі мүмкін.

Массив entities ішінде

entities массивінде when конструкциясында entities ішінде сипатталған элементтің құнын сервис инстансының инфрақұрылым құнына қосу не қоспау шарты беріледі. Құн тарифтік жоспарды конфигурациялау шеберінде көрсетіледі.

`entities` массивінде `when` конструкциясын пайдалану мысалы
entities:  - entity: vm    description: alkair_software    when:      in:        key:          param: need_install_alkair_software # Имя YAML-файла тарифной опции        values:          - const: true    flavor:      const: 6a7a0690-943a-4921-936e-2849970ccfba # Тип ВМ (CPU, RAM). В данном примере тип ВМ с 2 CPU и 3 ГБ RAM    count:      const: 1    disks:      - type:          const: high-iops # Тип диска        size:          const: 500 # Размер диска

Жоғарыдағы мысалда Алькаир БҚ үшін ВМ құнын көрсетуді баптау келтірілген: егер need_install_alkair_software тарифтік опциясының мәні true болса, тарифтік жоспарды конфигурациялау шеберінде entities.entity ішінде сипатталған ВМ құнын көрсету керек (3 суреті).

pic1

Рисунок 3 — Тарифтік опция қосылған, Алькаир БҚ үшін ВМ құны инфрақұрылым құнына есептеледі