Kaspersky SD-WAN

Работа с пакетами VNF и PNF

Пакет VNF и PNF – это ZIP-архив, в которой вам нужно поместить следующие компоненты для развертывания и управления жизненным циклом сетевой функции:

  • VNF/PNF-дескриптор – файл с параметрами сетевой функции.
  • /image – образы виртуальных машин в формате QCOW для развертывания виртуальной сетевой функции. Эта директория отсутствует в пакете PNF.
  • /scripts – скрипты для развертывания и управления сетевой функцией.
  • logo.png – значок сетевой функции. Необязательный компонент.
  • description-file.pdf – техническая документация или спецификация сетевой функции. Необязательный компонент.

Вам нужно загрузить пакет VNF или PNF в веб-интерфейс оркестратора, чтобы добавить виртуальную или физическую сетевую функцию в топологию при работе с шаблоном сетевого сервиса или сетевым сервисом.

В этом разделе

Настройка VNF-дескриптора

Настройка PNF-дескриптора

Защита пакетов VNF и PNF от подмены и изменения

Загрузка пакета VNF или PNF в веб-интерфейс оркестратора

В начало
[Topic 267236]

Настройка VNF-дескриптора

Развернуть всё | Свернуть всё

Вам нужно указать параметры виртуальной сетевой функции в VNF-дескрипторе в формате YAML или XML, после чего добавить VNF-дескриптор в корневую директорию пакета VNF. VNF-дескриптор имеет следующую структуру:

Блок/параметр

Описание

name

Имя виртуальной сетевой функции.

description

Краткое описание виртуальной сетевой функции.

description_file

Имя файла в формате PDF с технической документацией или спецификацией виртуальной сетевой функции. Вам нужно поместить файл в корневую директорию пакета VNF. Пользователи могут просмотреть и скачать файл в веб-интерфейсе оркестратора.

Необязательный параметр.

provider

Поставщик виртуальной сетевой функции.

version

Версия виртуальной сетевой функции.

external_connections

Внешние точки подключения виртуальной сетевой функции. Вы можете настроить указанные внешние точки подключения виртуальной сетевой функции в веб-интерфейсе оркестратора.

internal_connections

Внутренние точки подключения VDU, входящих в состав виртуальной сетевой функции.

Необязательный блок.

virtual_links

Виртуальные соединения для связи внутренних точек подключения.

Этот блок необходимо указать, если вы указали блок internal_connections.

images

Образы дисков VDU. Вы можете развернуть несколько VDU с помощью одного образа диска VDU.

configurations

Скрипты для выполнения действий на различных стадиях работы виртуальной сетевой функции, например при развертывании виртуальной сетевой функции.

flavours

Варианты развертывания виртуальной сетевой функции. Вы можете выбрать один из указанных вариантов развертывания виртуальной сетевой функции в веб-интерфейсе оркестратора.

scaling

Параметры масштабирования виртуальной сетевой функции.

Необязательный блок.

user_configurations

Элементы веб-интерфейса оркестратора, которые добавляются в область настройки виртуальной сетевой функции.

Необязательный блок.

backups

Задания резервного копирования виртуальной сетевой функции.

Необязательный блок.

Пример VNF-дескриптора

name: OpenWrt18

description: OpenWrt 18.06.1

description_file: openwrt-presentation.pdf

provider: Kaspersky

version: 1.0.1

external_connections:

- name: LAN

description: eth1

ip: AUTO

mask: AUTO

group: eth1-group

- name: WAN

description: eth2

ip: AUTO

mask: AUTO

group: eth2-group

images:

- name: openwrt

container_format: BARE

disk_format: QCOW2

type: OPENSTACK

filename: openwrt-18.06.1-x86-64.qcow2

configurations:

- name: config

filename: config.yml

stage: initialization

executor: ansible

authentication: password

- name: config2

filename: 3VDU.sh

stage: initialization

executor: /bin/sh

authentication: key

- name: config3

filename: 2VDU.sh

stage: initialization

executor: /bin/sh

authentication: key

flavours:

- name: 2VDU

description: 1 vCPU, 512MB memory

position: 1

affinity:

groups:

- name: aff

vdu_name:

- OpenWrt

- OpenWrt2

management:

vnc:

- vdu_name: OpenWrt

ssh:

- vdu_name: OpenWrt

def_user: root

authentication: key

web:

- vdu_name: OpenWrt

vdus:

- name: OpenWrt

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config3

def_user: root

def_password: p@ssw0rd

password_authentication: yes

disks:

- name: default

order: 1

type: default

image: openwrt

storage_gb: 1

cpu:

smt: prefer

cpu_pinning: dedicated

num_vpu: 1

memory:

total_memory_mb: 512

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reprovision

- name: OpenWrt2

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config3

def_user: root

def_password: p@ssw0rd

password_authentication: yes

disks:

- name: default

order: 1

type: default

image: openwrt

storage_gb: 1

cpu:

smt: prefer

cpu_pinning: dedicated

num_vpu: 1

memory:

total_memory_mb: 512

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reprovision

- name: VDU

description: 1 vCPU, 512MB memory

position: 2

affinity:

groups:

- name: aff

vdu_name:

- OpenWrt

- OpenWrt2

- OpenWrt3

management:

vnc:

- vdu_name: OpenWrt

ssh:

- vdu_name: OpenWrt

def_user: root

authentication: key

web:

- vdu_name: OpenWrt

vdus:

- name: OpenWrt

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

check_connection_mode: none

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config2

def_user: root

def_password: p@ssword

password_authentication: yes

disks:

- name: default

order: 1

type: default

image: openwrt

storage_gb: 1

cpu:

smt: prefer

cpu_pinning: dedicated

num_vpu: 1

memory:

total_memory_mb: 512

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reprovision

- name: OpenWrt2

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config2

def_user: root

def_password: p@ssw0rd

password_authentication: yes

disks:

- name: default

order: 1

type: default

image: openwrt

storage_gb: 1

cpu:

smt: prefer

cpu_pinning: dedicated

num_vpu: 1

memory:

total_memory_mb: 512

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reprovision

- name: OpenWrt3

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config2

def_user: root

def_password: p@ssw0rd

password_authentication: yes

disks:

- name: default

order: 1

type: default

image: openwrt

storage_gb: 1

cpu:

smt: prefer

cpu_pinning: dedicated

num_vpu: 1

memory:

total_memory_mb: 512

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reprovision

scaling:

scale_in_status: permit

scale_out_status: "permit"

user_configurations:

tab:

- name: GW

variables:

- name: "gw_ip"

description: IP

input_type: input

required: true

type: string

default_value: 192.168.0.1

example: 192.168.0.1

- name: direction

description: traffic direction

input_type: dropdown

required: true

type: string

values:

- value: in

is_default: true

- value: out

update_configuration_name:

- update_var

- change

backups:

- name: backup_config

description: backup/etc/config

backup:

path: /root/config.thz

interval: 600

store_configs: 10

backup_type: vnfm_scp

authentication: key

configuration_name_ref: backup

restore:

path: /tmp/config.tgz

backup_type: vnfm_scp

authentication: password

configuration_name_ref: restore

external_connections

Блок external_connections имеет следующую структуру:

Блок/параметр

Описание

- name

Имя внешней точки подключения.

 

description

Краткое описание внешней точки подключения.

ip

IP-адрес внешней точки подключения. Вам нужно ввести значение в формате XXX.XXX.XXX.XXX, например:

192.168.110.126

mask

Маска подсети внешней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    255.255.255.0

    Маска подсети назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае маску подсети невозможно изменить.

  • AUTO – автоматически назначить маску подсети с помощью внешнего DHCP-сервера или скриптов. Скрипты можно указать в блоке configurations.
  • MANUAL – маску подсети требуется указать вручную в веб-интерфейсе оркестратора при настройке внешних точек подключения виртуальной сетевой функции.

gw

IP-адрес шлюза внешней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов из блока configurations.
  • MANUAL – IP-адрес требуется указать вручную в веб-интерфейсе оркестратора при настройке внешних точек подключения виртуальной сетевой функции.

Необязательный параметр.

dns

IP-адрес DNS-сервера внешней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов из блока configurations.
  • MANUAL – IP-адрес требуется указать вручную в веб-интерфейсе оркестратора при настройке внешних точек подключения виртуальной сетевой функции.

Необязательный параметр.

group

Группа, к которой относится внешняя точка подключения.

Этот параметр необходимо указать, если несколько VDU в составе виртуальной сетевой функции используют одну внешнюю точку подключения.

Пример блока

external_connections:

- name: LAN

description: eth1

ip: 192.168.2.0

mask: 255.255.255.0

gw: 192.168.0.1

dns: 192.168.0.10

group: lan-group

internal_connections

Блок internal_connections имеет следующую структуру:

Блок/параметр

Описание

- name

Имя внутренней точки подключения.

 

description

Краткое описание внутренней точки подключения.

virtual_link_name

Имя виртуального соединения из блока virtual_links для внутренней точки подключения.

ip

IP-адрес внутренней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов. Скрипты можно указать в блоке configurations.
  • MANUAL – IP-адрес требуется указать вручную в веб-интерфейсе оркестратора при настройке внешних точек подключения виртуальной сетевой функции.

mask

Маска подсети внутренней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    255.255.255.0

    Маска подсети назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае маску подсети невозможно изменить.

  • AUTO – автоматически назначить маску подсети с помощью внешнего DHCP-сервера или скриптов. Скрипты можно указать в блоке configurations.

gw

IP-адрес шлюза внутренней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов из блока configurations.

Необязательный параметр.

dns

IP-адрес DNS-сервера внутренней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов из блока configurations.

Необязательный параметр.

group

Группа, к которой относится внутренняя точка подключения.

Этот параметр необходимо указать, если несколько VDU в составе виртуальной сетевой функции используют одну внутреннюю точку подключения.

Пример блока

internal_connections:

- name: LAN

description: eth3

ip: 192.168.2.0

mask: 255.255.255.0

gw: 192.168.0.1

dns: 192.168.0.10

group: lan-group

virtual_link_name: int-link

virtual_links

Блок virtual_links имеет следующую структуру:

Блок/параметр

Описание

- name

Имя виртуального соединения.

 

cidr

IPv4-префикс виртуального соединения. Вам нужно ввести значение в формате XXX.XXX.XXX.XXX/XX, например:

192.168.2.0/24

ip_version

Версия IP-адресов в подсети. Возможные значения:

  • v4;
  • v6.

Пример блока

virtual_links:

- name: int_link

cidr: 203.0.113.0/24

ip_version: v4

images

Блок images имеет следующую структуру:

Блок/параметр

Описание

- name

Имя образа диска VDU.

 

container_format

Формат контейнера для образа диска VDU.

disk_format

Формат образа диска VDU.

type

Тип VIM.

file_name

Имя файла образа диска VDU. Вам нужно поместить образ диска VDU в директорию /image пакета VNF.

Пример блока

images:

- name: VDU_img

container_format: BARE

disk_format: QCOW2

type: OPENSTACK

filename: VDU_img.qcow2

configurations

Блок configurations имеет следующую структуру:

Блок/параметр

Описание

- name

Имя скрипта.

 

filename

Имя файла скрипта, сценария Ansible или атрибута user-data для Cloud-init. Вам нужно поместить скрипт в директорию /scripts пакета VNF.

stage

Стадия работы виртуальной сетевой функции, на которой скрипт запускается. Возможные значения:

executor

Интерпретатор скрипта. Возможные значения:

  • ansible;
  • expect;
  • /bin/sh;
  • bin/bash;
  • cloud-init;

     

  • <путь к пользовательскому интерпретатору скрипта>, например /user/bin/php.

authentication

Метод аутентификации VNFM в виртуальной сетевой функции для запуска скриптов. Возможные значения:

  • key – аутентифицировать VNFM в виртуальной сетевой функции по ключу, который генерируется при развертывании виртуальной сетевой функции. Вам нужно получить ключ с помощью скрипта, поэтому мы рекомендуем не указывать это значение для первого скрипта.
  • password – аутентифицировать VNFM в виртуальной сетевой функции по имени и паролю учетной записи из блока flavoursvdus.

files_path

Путь к файлам для запуска скриптов с помощью SSH. Вам нужно создать директорию в директории /scripts пакета VNF и поместить в созданную директорию файлы. Файлы будут скопированы на VDU.

Необязательный параметр.

config_drive

Использование config-drive. Возможные значения:

  • true;
  • false.

     

Этот параметр можно указать, если для параметра executor вы указали значение cloud_init.

timeout

Время ожидания выполнения скрипта в секундах. Если скрипт не выполняется по истечении указанного времени, выполнение прерывается. Отсчет времени начинается в момент запуска скрипта.

Этот параметр можно указать, если для параметра executor вы указали путь к пользовательскому исполнителю скрипта.

Пример блока

configurations:

- name: config

filename: config.yml

stage: initialization

executor: ansible

authentication: password

files_path: SSH_scripts

config_drive: true

timeout: 15

flavours

Блок flavours имеет следующую структуру:

Блок/параметр

Описание

- name

Имя варианта развертывания.

 

description

Краткое описание варианта развертывания.

position

Порядковый номер варианта развертывания. Вариант развертывания с наименьшим порядковым номером имеет наименьшую производительность.

affinity

Группы VDU, которые размещаются на одном хосте OpenStack. Мы рекомендуем разместить на одном хосте OpenStack VDU, требующие минимальных задержек при обмене информацией друг с другом.

anti-affinity

Группы VDU, которые размещаются на разных хостах OpenStack. Мы рекомендуем развернуть на разных хостах OpenStack VDU, для которых может потребоваться вертикальное масштабирование или обеспечение отказоустойчивости.

management

Параметры консолей администрирования VDU.

vdus

Параметры VDU.

Блоки affinity и anti-affinity имеют следующую структуру:

Блок/параметр

Описание

groups

Группы VDU.

 

- name

Имя группы VDU.

 

vdu_name

Имена VDU. Вам нужно указать список значений, например:

vdu_name:

- VDU_1

- VDU_2

Блок management имеет следующую структуру:

Блок/параметр

Описание

vnc

Параметры управления VDU с помощью VNC-консоли.

 

- vdu_name

Имя VDU.

ssh

Параметры управления VDU с помощью SSH-консоли.

 

- vdu_name

Имя VDU.

 

def_user

Имя учетной записи для установки SSH-сессии.

authentication

Метод аутентификации VNFM в виртуальной сетевой функции для запуска скриптов. Возможные значения:

  • key – аутентифицировать VNFM в виртуальной сетевой функции по ключу, который генерируется при развертывании виртуальной сетевой функции. Вам нужно получить ключ с помощью скрипта из блока configurations.
  • password – аутентифицировать VNFM в виртуальной сетевой функции по имени и паролю учетной записи из блока vdus.

web

Параметры управления VDU с помощью веб-консоли.

 

- vdu_name

Имя VDU.

 

protocol

Протокол подключения к веб-консоли. Возможные значения:

  • http;
  • https.

port

Порт подключения к веб-консоли. Вам нужно ввести значение в диапазоне от 1 до 65 536. По умолчанию используется порт 80.

path

Путь к веб-консоли.

def_user

Имя учетной записи для аутентификации в веб-консоли.

def_password

Пароль учетной записи для аутентификации в веб-консоли.

Блок vdus имеет следующую структуру:

Блок/параметр

Описание

- name

Имя VDU.

 

password_rules

Требования к паролю VDU. Необязательный блок.

 

length

Минимальная длина пароля.

use_upper_case

Пользователи должны использовать прописные символы в пароле. Возможные значения:

  • true;
  • false.

use_lower_case

Пользователи должны использовать строчные символы в пароле. Возможные значения:

  • true;
  • false.

use_digits

Пользователи должны использовать цифры в пароле. Возможные значения:

  • true;
  • false.

specific_symbols

Специальные символы, которые пользователи должны использовать в пароле, например:

@"!

specific_symbols_min_usage

Минимальное количество специальных символов в пароле.

check_connection_mode

Тип проверки доступности VDU при развертывании. По умолчанию используется SSH-проверка. Возможные значения:

  • ssh;
  • none.

Необязательный параметр.

zabbix_template

Имя шаблона Zabbix для VDU.

monitoring_type

Тип мониторинга виртуальной сетевой функции. Возможные значения:

  • agent – мониторинг с помощью Zabbix-агента.
  • snmp – мониторинг с помощью протокола SNMP.

ssh_port

Номер порта для установки SSH-сессии.

Необязательный параметр.

configurations

Имена скриптов из блока configurations, которые запускаются на VDU. Вам нужно указать список значений, например:

vdu_name:

- config_1

- config_2

backups

Имена заданий резервного копирования из блока backups, которые используются на VDU. Вам нужно указать список значений, например:

vdu_name:

- backup_1

- backup_2

Необязательный блок.

def_user

Имя учетной записи для аутентификации VNFM в виртуальной сетевой функции.

Необязательный параметр.

def_password

Пароль учетной записи для аутентификации VNFM в виртуальной сетевой функции.

Необязательный параметр.

password_authentication

Аутентификация VNFM в виртуальной сетевой функции по паролю. Возможные значения:

  • yes;
  • no.

Необязательный параметр.

disks

Параметры виртуальных дисков VDU.

 

- name

Имя виртуального диска VDU.

 

order

Порядок подключения виртуального диска VDU.

type

Тип эфемерного диска OpenStack.

image

Имя образа виртуального диска VDU из блока images.

Необязательный параметр, если вы создаете пустой диск VDU.

storage_db

Размер виртуального диска VDU в гигабайтах.

cpu

Параметры процессора VDU.

 

smt

Требования к одновременной гиперпоточности (англ. simultaneous multithreading) при развертывании VDU. Возможные значения:

  • prefer – использовать одновременную гиперпоточность, если она включена на хосте VDU.
  • isolate – не использовать одновременную гиперпоточность.
  • require – использовать одновременную гиперпоточность.

cpu_pinning

Использование привязки процессора (англ. CPU pinning). Возможные значения:

  • shared – не привязывать ядра процессора к VDU.
  • dedicated – привязывать ядра процессора к VDU.

num_vpu

Количество привязываемых к VDU ядер процессора.

memory

Параметры оперативной памяти VDU.

 

total_memory_mb

Количество оперативной памяти VDU в мегабайтах.

page_size

Размер страниц памяти при развертывании VDU. Возможные значения:

  • small – 4 КБ.
  • large – 2 МБ или 1 ГБ.
  • any – любой размер.
  • 4KB.
  • 2MB.
  • 2048.
  • 1GB.

network_interfaces

Параметры сетевых интерфейсов.

 

- name

Имя сетевого интерфейса.

 

type

Тип сетевого интерфейса. Возможные значения:

  • data – сетевой интерфейс для передачи данных.
  • management – управляющий сетевой интерфейс, который ссылается на сетевой порт.

 

description

Краткое описание сетевого интерфейса.

connection_point_ref

Имя внешней точки подключения из блока external_connections для управляющего сетевого интерфейса.

port_security

Использование функции

. Возможные значения:

  • disabled;
  • enabled.

Необязательный параметр.

properties

Дополнительные параметры сетевого интерфейса.

 

vnic_type

vNIC-тип сетевого интерфейса. Возможные значения:

  • virtio;
  • direct;
  • macvtap;
  • vhost.

auto_healing

Параметры автоматического восстановления VDU.

 

triggers_set

Внешние триггеры, при срабатывании которых начинается автоматическое восстановление VDU. Возможные значения:

  • any – автоматическое восстановление VDU начинается, если срабатывает любой из указанных внешних триггеров.
  • all – автоматическое восстановление VDU начинается, если срабатывают все указанные внешние триггеры.
  • <имя триггера> – автоматическое восстановление VDU начинается, если срабатывает указанный внешний триггер.

triggers

Внешние триггеры.

 

- name

Имя внешнего триггера. Возможные значения:

  • unreachable;
  • scale_up;
  • scale_down.

action_set

Действие, которое выполняется при срабатывании внешнего триггера.

 

- type

Тип действия. Возможные значения:

  • reprovision – повторно развернуть VDU;
  • reboot – перезагрузить VDU;
  • script – запустить указанный скрипт.

configuration_name_ref

Имя скрипта из блока configurations, который запускается при срабатывании внешнего триггера.

Этот параметр необходимо указать, если для параметра - type вы указали значение script.

bootstrap_timeout

Время ожидания доступности по SSH при развертывании VDU в секундах. Если VDU не доступна по SSH по истечении указанного времени, происходит откат развертывания.

Необязательный параметр.

Пример блока

vdus:

- name: vgw

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

check_connection_mode: none

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config_1

- config_2

backups:

- backup_config

def_user: root

def_password: p@ssw0rd

password_authentication: yes

disks:

- name: "default"

order: 1

type: default

image: openwrt

storage_gb: 1

cpu:

smt: prefer

cpu_pinning: dedicated

num_vpu: 1

memory:

total_memory_mb: 512

page_size: small

network_interfaces:

- name: eth

type: data

description: eth0

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reprovision

scaling

Блок scaling имеет следующую структуру:

Параметр

Описание

scale_in_status

Горизонтальное масштабирование до варианта развертывания с более низким порядковым номером. Возможные значения:

  • permit;
  • deny.

scale_out_status

Горизонтальное масштабирование до варианта развертывания с более высоким порядковым номером. Возможные значения:

  • permit;
  • deny.

scale_up_status

Вертикальное масштабирование до варианта развертывания с более низким порядковым номером. Возможные значения:

  • permit;
  • deny.

scale_down_status

Вертикальное масштабирование до варианта развертывания с более высоким порядковым номером. Возможные значения:

  • permit;
  • deny.

Пример блока

scaling:

scale_in_status: permit

scale_out_status: permit

scale_up_status: permit

scale_down_status: permit

user_configurations

Блок user_configurations имеет следующую структуру:

Блок/параметр

Описание

tab

Вкладки, которые добавляются в область настройки виртуальной сетевой функции.

- name

Имя вкладки.

 

variables

Элементы веб-интерфейса оркестратора, которые отображаются на вкладке.

- name

Имя элемента веб-интерфейса оркестратора.

 

description

Краткое описание элемента веб-интерфейса оркестратора.

input_type

Тип элемента веб-интерфейса оркестратора. Возможные значения:

  • input – поле.
  • dropdown – раскрывающийся список.

default_value

Значение по умолчанию в поле.

Этот параметр можно указать, если для параметра input_type вы указали значение input.

values

Значения, которые отображаются в раскрывающемся списке.

Этот блок можно указать, если для параметра input_type вы указали значение dropdown.

- value

Имя значения.

 

is_default

Значение по умолчанию. Возможные значения:

  • true;
  • false.

Необязательный параметр.

required

Обязательный элемент веб-интерфейса оркестратора. Возможные значения:

  • true;
  • false.

Необязательный параметр.

type

Тип значения, которое может быть указано для элемента веб-интерфейса оркестратора.

Необязательный параметр.

example

Подсказка, которая отображается при изменении значения элемента веб-интерфейса оркестратора.

Необязательный параметр.

update_configuration_name

Имена скриптов из блока configurations, которые запускаются при изменении значения элемента веб-интерфейса оркестратора. Вам нужно указать список значений, например:

update_configuration_name:

- config_1

- config_2

Пример блока

user_configurations:

tab:

- name: GW

variables:

- name: "gw_ip"

description: IP

input_type: input

required: true

type: string

default_value: 192.168.0.1

example: 192.168.0.1

- name: direction

description: traffic direction

input_type: dropdown

required: true

type: string

values:

- value: in

is_default: true

- value: out

update_configuration_name:

- update_var

- change

backups

Блок backups имеет следующую структуру:

Блок/параметр

Описание

- name

Имя задания резервного копирования.

 

description

Краткое описание задания резервного копирования.

backup

Параметры резервного копирования.

 

path

Путь к директории виртуальной сетевой функции, в которой содержатся файлы для резервного копирования.

interval

Интервал времени в секундах для резервного копирования.

store_config

Количество хранимых резервных копий.

backup_type

Тип резервного копирования.

authentication

Метод аутентификации VNFM в виртуальной сетевой функции для запуска скриптов. Возможные значения:

  • key – аутентифицировать VNFM в виртуальной сетевой функции по ключу, который генерируется при развертывании виртуальной сетевой функции. Вам нужно получить ключ с помощью скрипта из блока configurations.
  • password – аутентифицировать VNFM в виртуальной сетевой функции по имени и паролю учетной записи из блока flavours → vdus.

configuration_name_ref

Имя скрипта из блока configurations, который запускается перед резервным копированием.

restore

Параметры восстановления из резервной копии.

 

path

Путь к директории виртуальной сетевой функции, в которую помещаются восстановленные файлы.

backup_type

Тип резервного копирования.

authentication

Метод аутентификации VNFM в виртуальной сетевой функции для запуска скриптов. Возможные значения:

  • key – аутентифицировать VNFM в виртуальной сетевой функции по ключу, который генерируется при развертывании виртуальной сетевой функции. Вам нужно получить ключ с помощью скрипта из блока configurations.
  • password – аутентифицировать VNFM в виртуальной сетевой функции по имени и паролю учетной записи из блока flavours → vdus.

configuration_name_ref

Имя скрипта из блока configurations, который запускается после восстановления резервной копии.

Пример блока

backups:

- name: backup_config

description: backup/etc/config

backup:

path: /root/config.thz

interval: 600

store_configs: 10

backup_type: vnfm_scp

authentication: key

configuration_name_ref: backup

restore:

path: /tmp/config.tgz

backup_type: vnfm_scp

authentication: password

configuration_name_ref: restore

В начало
[Topic 266608]

Настройка PNF-дескриптора

Развернуть всё | Свернуть всё

Вам нужно указать параметры физической сетевой функции в PNF-дескрипторе в формате YAML или XML, после чего добавить PNF-дескриптор в корневую директорию пакета PNF. PNF-дескриптор имеет следующую структуру:

Блок/параметр

Описание

name

Имя физической сетевой функции.

description

Краткое описание физической сетевой функции.

description_file

Имя файла в формате PDF с технической документацией или спецификацией физической сетевой функции. Вам нужно поместить файл в корневую директорию пакета PNF. Пользователи могут просмотреть и скачать файл в веб-интерфейсе оркестратора.

Необязательный параметр.

provider

Поставщик физической сетевой функции.

version

Версия физической сетевой функции.

external_connections

Внешние точки подключения физической сетевой функции.

internal_connections

Внутренние точки подключения VDU, входящих в состав физической сетевой функции.

Необязательный блок.

configurations

Скрипты для выполнения действий на различных стадиях работы физической сетевой функции, например при развертывании физической сетевой функции.

flavours

Варианты развертывания физической сетевой функции. Вы можете выбрать один из указанных вариантов развертывания физической сетевой функции в веб-интерфейсе оркестратора.

scaling

Параметры масштабирования физической сетевой функции.

Необязательный блок.

user_configurations

Элементы веб-интерфейса оркестратора, которые добавляются в область настройки физической сетевой функции.

Необязательный блок.

backups

Задания резервного копирования физической сетевой функции.

Необязательный блок.

Пример PNF-дескриптора

name: OpenWrt18

description: OpenWrt 18.06.1

description_file: openwrt-presentation.pdf

provider: Kaspersky

version: 1.0.1

external_connections:

- name: LAN

description: eth1

ip: AUTO

mask: AUTO

group: eth1-group

- name: WAN

description: eth2

ip: AUTO

mask: AUTO

group: eth2-group

configurations:

- name: config

filename: config.yml

stage: initialization

executor: ansible

authentication: password

- name: config2

filename: 3VDU.sh

stage: initialization

executor: /bin/sh

authentication: key

- name: config3

filename: 2VDU.sh

stage: initialization

executor: /bin/sh

authentication: key

flavours:

- name: 2VDU

description: 1 vCPU, 512MB memory

position: 1

management:

ssh:

- vdu_name: OpenWrt

def_user: root

authentication: key

web:

- vdu_name: OpenWrt

vdus:

- name: OpenWrt

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config3

def_user: root

def_password: p@ssw0rd

password_authentication: yes

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reboot

- name: OpenWrt2

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config3

def_user: root

def_password: p@ssw0rd

password_authentication: yes

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reboot

- name: VDU

description: 1 vCPU, 512MB memory

position: 2

management:

ssh:

- vdu_name: OpenWrt

def_user: root

authentication: key

web:

- vdu_name: OpenWrt

vdus:

- name: OpenWrt

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

check_connection_mode: none

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config2

def_user: root

def_password: p@ssword

password_authentication: yes

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reboot

- name: OpenWrt2

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config2

def_user: root

def_password: p@ssw0rd

password_authentication: yes

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reboot

- name: OpenWrt3

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config

- config2

def_user: root

def_password: p@ssw0rd

password_authentication: yes

network_interfaces:

- name: Management

type: management

description: eth0

- name: eth1

type: data

description: eth1

connection_point_ref: LAN

- name: eth2

type: data

description: eth2

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reboot

scaling:

scale_in_status: permit

scale_out_status: "permit"

user_configurations:

tab:

- name: GW

variables:

- name: "gw_ip"

description: IP

input_type: input

required: true

type: string

default_value: 192.168.0.1

example: 192.168.0.1

- name: direction

description: traffic direction

input_type: dropdown

required: true

type: string

values:

- value: in

is_default: true

- value: out

update_configuration_name:

- update_var

- change

backups:

- name: backup_config

description: backup/etc/config

backup:

path: /root/config.thz

interval: 600

store_configs: 10

backup_type: vnfm_scp

authentication: key

configuration_name_ref: backup

restore:

path: /tmp/config.tgz

backup_type: vnfm_scp

authentication: password

configuration_name_ref: restore

external_connections

Блок external_connections имеет следующую структуру:

Блок/параметр

Описание

- name

Имя внешней точки подключения.

 

description

Краткое описание внешней точки подключения.

ip

IP-адрес внешней точки подключения. Вам нужно ввести значение в формате XXX.XXX.XXX.XXX, например:

192.168.110.126

mask

Маска подсети внешней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    255.255.255.0

    Маска подсети назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае маску подсети невозможно изменить.

  • AUTO – автоматически назначить маску подсети с помощью внешнего DHCP-сервера или скриптов. Скрипты можно указать в блоке configurations.

gw

IP-адрес шлюза внешней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов из блока configurations.

Необязательный параметр.

dns

IP-адрес DNS-сервера внешней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов из блока configurations.

Необязательный параметр.

group

Группа, к которой относится внешняя точка подключения.

Этот параметр необходимо указать, если несколько VDU в составе физической сетевой функции используют одну внешнюю точку подключения.

Пример блока

external_connections:

- name: LAN

description: eth1

ip: 192.168.2.0

mask: 255.255.255.0

gw: 192.168.0.1

dns: 192.168.0.10

group: lan-group

internal_connections

Блок internal_connections имеет следующую структуру:

Блок/параметр

Описание

- name

Имя внутренней точки подключения.

 

description

Краткое описание внутренней точки подключения.

ip

IP-адрес внутренней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес его невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов. Скрипты можно указать в блоке configurations.

mask

Маска подсети внутренней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    255.255.255.0

    Маска подсети назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае маску подсети невозможно изменить.

  • AUTO – автоматически назначить маску подсети с помощью внешнего DHCP-сервера или скриптов. Скрипты можно указать в блоке configurations.

gw

IP-адрес шлюза внутренней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов из блока configurations.

Необязательный параметр.

dns

IP-адрес DNS-сервера внутренней точки подключения. Возможные значения:

  • Значение в формате XXX.XXX.XXX.XXX, например:

    192.168.110.126

    IP-адрес назначается с помощью DHCP через резервирование по MAC-адресу OpenStack-порта. В этом случае IP-адрес невозможно изменить.

  • AUTO – автоматически назначить IP-адрес с помощью внешнего DHCP-сервера или скриптов из блока configurations.

Необязательный параметр.

group

Группа, к которой относится внутренняя точка подключения.

Этот параметр необходимо указать, если несколько VDU в составе физической сетевой функции используют одну внутреннюю точку подключения.

Пример блока

internal_connections:

- name: LAN

description: eth3

ip: 192.168.2.0

mask: 255.255.255.0

gw: 192.168.0.1

dns: 192.168.0.10

group: lan-group

configurations

Блок configurations имеет следующую структуру:

Блок/параметр

Описание

- name

Имя скрипта.

 

filename

Имя файла скрипта или сценария Ansible. Вам нужно поместить скрипт в директорию /scripts пакета PNF.

stage

Стадия работы физической сетевой функции, на которой скрипт запускается. Возможные значения:

executor

Интерпретатор скрипта. Возможные значения:

  • ansible;
  • expect;
  • /bin/sh;
  • bin/bash;
  • <путь к пользовательскому интерпретатору скрипта>, например /user/bin/php.

authentication

Метод аутентификации VNFM в физической сетевой функции для запуска скриптов. Возможные значения:

  • key – аутентифицировать VNFM в физической сетевой функции по ключу, который генерируется при развертывании физической сетевой функции. Вам нужно получить ключ с помощью скрипта, поэтому мы рекомендуем не указывать это значение для первого скрипта.
  • password – аутентифицировать VNFM в физической сетевой функции по имени и паролю учетной записи из блока flavoursvdus.

files_path

Путь к файлам для запуска скриптов с помощью SSH. Вам нужно создать директорию в директории /scripts пакета PNF и поместить в созданную директорию файлы. Файлы будут скопированы на VDU.

Необязательный параметр.

timeout

Время ожидания выполнения скрипта в секундах. Если скрипт не выполняется по истечении указанного времени, выполнение прерывается. Отсчет времени начинается в момент запуска скрипта.

Этот параметр можно указать, если для параметра executor вы указали путь к пользовательскому исполнителю скрипта.

Пример блока

configurations:

- name: config

filename: config.yml

stage: initialization

executor: ansible

authentication: password

files_path: SSH_scripts

config_drive: true

timeout: 15

flavours

Блок flavours имеет следующую структуру:

Блок/параметр

Описание

- name

Имя варианта развертывания.

 

description

Краткое описание варианта развертывания.

position

Порядковый номер варианта развертывания. Вариант развертывания с наименьшим порядковым номером имеет наименьшую производительность.

management

Параметры консолей администрирования VDU.

vdus

Параметры VDU.

Блок management имеет следующую структуру:

Блок/параметр

Описание

ssh

Параметры управления VDU с помощью SSH-консоли.

 

- vdu_name

Имя VDU.

 

def_user

Имя учетной записи для установки SSH-сессии.

authentication

Метод аутентификации VNFM в физической сетевой функции для запуска скриптов. Возможные значения:

  • key – аутентифицировать VNFM в физической сетевой функции по ключу, который генерируется при развертывании физической сетевой функции. Вам нужно получить ключ с помощью скрипта из блока configurations.
  • password – аутентифицировать VNFM в физической сетевой функции по имени и паролю учетной записи из блока vdus.

web

Параметры управления VDU с помощью веб-консоли.

 

- vdu_name

Имя VDU.

 

protocol

Протокол подключения к веб-консоли. Возможные значения:

  • http;
  • https.

port

Порт подключения к веб-консоли. Вам нужно ввести значение в диапазоне от 1 до 65 536. По умолчанию используется порт 80.

path

Путь к веб-консоли.

def_user

Имя учетной записи для аутентификации в веб-консоли.

def_password

Пароль учетной записи для аутентификации в веб-консоли.

Блок vdus имеет следующую структуру:

Блок/параметр

Описание

- name

Имя VDU.

 

password_rules

Требования к паролю VDU. Необязательный блок.

 

length

Минимальная длина пароля.

use_upper_case

Пользователи должны использовать прописные символы в пароле. Возможные значения:

  • true;
  • false.

use_lower_case

Пользователи должны использовать строчные символы в пароле. Возможные значения:

  • true;
  • false.

use_digits

Пользователи должны использовать цифры в пароле. Возможные значения:

  • true;
  • false.

specific_symbols

Специальные символы, которые пользователи должны использовать в пароле, например:

@"!

specific_symbols_min_usage

Минимальное количество специальных символов в пароле.

check_connection_mode

Тип проверки доступности VDU при развертывании. По умолчанию используется SSH-проверка. Возможные значения:

  • ssh;
  • none.

Необязательный параметр.

zabbix_template

Имя шаблона Zabbix для VDU.

monitoring_type

Тип мониторинга физической сетевой функции. Возможные значения:

  • agent – мониторинг с помощью Zabbix-агента.
  • snmp – мониторинг с помощью протокола SNMP.

ssh_port

Номер порта для установки SSH-сессии.

Необязательный параметр.

configurations

Имена скриптов из блока configurations, которые запускаются на VDU. Вам нужно указать список значений, например:

vdu_name:

- config_1

- config_2

backups

Имена заданий резервного копирования из блока backups, которые используются на VDU. Вам нужно указать список значений, например:

vdu_name:

- backup_1

- backup_2

Необязательный блок.

def_user

Имя учетной записи для аутентификации VNFM в физической сетевой функции.

Необязательный параметр.

def_password

Пароль учетной записи для аутентификации VNFM в физической сетевой функции.

Необязательный параметр.

password_authentication

Аутентификация VNFM в физической сетевой функции по паролю. Возможные значения:

  • yes;
  • no.

Необязательный параметр.

network_interfaces

Параметры сетевых интерфейсов.

 

- name

Имя сетевого интерфейса.

 

type

Тип сетевого интерфейса. Возможные значения:

  • data – сетевой интерфейс для передачи данных.
  • management – управляющий сетевой интерфейс, который ссылается на сетевой порт.

description

Краткое описание сетевого интерфейса.

connection_point_ref

Имя внешней точки подключения из блока external_configurations для управляющего сетевого интерфейса.

auto_healing

Параметры автоматического восстановления VDU.

 

triggers_set

Внешние триггеры, при срабатывании которых начинается автоматическое восстановление VDU. Возможные значения:

  • any – автоматическое восстановление VDU начинается, если срабатывает любой из указанных внешних триггеров.
  • all – автоматическое восстановление VDU начинается, если срабатывают все указанные внешние триггеры.
  • <имя триггера> – автоматическое восстановление VDU начинается, если срабатывает указанный внешний триггер.

triggers

Внешние триггеры.

 

- name

Имя внешнего триггера. Возможные значения:

  • unreachable;
  • scale_up;
  • scale_down.

action_set

Действие, которое выполняется при срабатывании внешнего триггера.

 

- type

Тип действия. Возможные значения:

  • reboot – перезагрузить VDU;
  • script – запустить указанный скрипт.

configuration_name_ref

Имя скрипта из блока configurations, который запускается при срабатывании внешнего триггера.

Этот параметр необходимо указать, если для параметра - type вы указали значение script.

Пример блока

vdus:

- name: vgw

password_rules:

length: 12

use_upper_case: true

use_lower_case: true

use_digits: true

specific_symbols: .?$#@![]-{}

specific_symbols_min_usage: 2

check_connection_mode: none

zabbix_template: Template OS Linux

monitoring_type: agent

ssh_port: 22

configurations:

- config_1

- config_2

backups:

- backup_config

def_user: root

def_password: p@ssw0rd

password_authentication: yes

network_interfaces:

- name: eth

type: data

description: eth0

connection_point_ref: WAN

auto_healing:

triggers_set: any

triggers:

- name: unreachable

action_set:

- type: reprovision

scaling

Блок scaling имеет следующую структуру:

Параметр

Описание

scale_up_status

Вертикальное масштабирование до варианта развертывания с более низким порядковым номером. Возможные значения:

  • permit;
  • deny.

scale_down_status

Вертикальное масштабирование до варианта развертывания с более высоким порядковым номером. Возможные значения:

  • permit;
  • deny.

Пример блока

scaling:

scale_in_status: permit

scale_out_status: permit

user_configurations

Блок user_configurations имеет следующую структуру:

Блок/параметр

Описание

tab

Вкладки, которые добавляются в область настройки физической сетевой функции.

- name

Имя вкладки.

 

variables

Элементы веб-интерфейса оркестратора, которые отображаются на вкладке.

- name

Имя элемента веб-интерфейса оркестратора.

 

description

Краткое описание элемента веб-интерфейса оркестратора.

input_type

Тип элемента веб-интерфейса оркестратора. Возможные значения:

  • input – поле.
  • dropdown – раскрывающийся список.

default_value

Значение по умолчанию в поле.

Этот параметр можно указать, если для параметра input_type вы указали значение input.

values

Значения, которые отображаются в раскрывающемся списке.

Этот блок можно указать, если для параметра input_type вы указали значение dropdown.

- value

Имя значения.

 

is_default

Значение по умолчанию. Возможные значения:

  • true;
  • false.

Необязательный параметр.

required

Обязательный элемент веб-интерфейса оркестратора. Возможные значения:

  • true;
  • false.

Необязательный параметр.

type

Тип значения, которое может быть указано для элемента веб-интерфейса оркестратора.

Необязательный параметр.

example

Подсказка, которая отображается при изменении значения элемента веб-интерфейса оркестратора.

Необязательный параметр.

update_configuration_name

Имена скриптов из блока configurations, которые запускаются при изменении значения элемента веб-интерфейса оркестратора. Вам нужно указать список значений, например:

update_configuration_name:

- config_1

- config_2

Пример блока

user_configurations:

tab:

- name: GW

variables:

- name: "gw_ip"

description: IP

input_type: input

required: true

type: string

default_value: 192.168.0.1

example: 192.168.0.1

- name: direction

description: traffic direction

input_type: dropdown

required: true

type: string

values:

- value: in

is_default: true

- value: out

update_configuration_name:

- update_var

- change

backups

Блок backups имеет следующую структуру:

Блок/параметр

Описание

- name

Имя задания резервного копирования.

 

description

Краткое описание задания резервного копирования.

backup

Параметры резервного копирования.

 

path

Путь к директории физической сетевой функции, в которой содержатся файлы для резервного копирования.

interval

Интервал времени в секундах для резервного копирования.

store_config

Количество хранимых резервных копий.

backup_type

Тип резервного копирования.

authentication

Метод аутентификации VNFM в физической сетевой функции для запуска скриптов. Возможные значения:

  • key – аутентифицировать VNFM в физической сетевой функции по ключу, который генерируется при развертывании физической сетевой функции. Вам нужно получить ключ с помощью скрипта из блока configurations.
  • password – аутентифицировать VNFM в физической сетевой функции по имени и паролю учетной записи из блока flavours → vdus.

configuration_name_ref

Имя скрипта из блока configurations, который запускается перед резервным копированием.

restore

Параметры восстановления из резервной копии.

 

path

Путь к директории физической сетевой функции, в которую помещаются восстановленные файлы.

backup_type

Тип резервного копирования.

authentication

Метод аутентификации VNFM в физической сетевой функции для запуска скриптов. Возможные значения:

  • key – аутентифицировать VNFM в физической сетевой функции по ключу, который генерируется при развертывании физической сетевой функции. Вам нужно получить ключ с помощью скрипта из блока configurations.
  • password – аутентифицировать VNFM в физической сетевой функции по имени и паролю учетной записи из блока flavours → vdus.

configuration_name_ref

Имя скрипта из блока configurations, который запускается после восстановления резервной копии.

Пример блока

backups:

- name: backup_config

description: backup/etc/config

backup:

path: /root/config.thz

interval: 600

store_configs: 10

backup_type: vnfm_scp

authentication: key

configuration_name_ref: backup

restore:

path: /tmp/config.tgz

backup_type: vnfm_scp

authentication: password

configuration_name_ref: restore

В начало
[Topic 287355]

Защита пакетов VNF и PNF от подмены и изменения

Часть файлов пакетов VNF и PNF помещается в локальную директорию Docker-контейнера оркестратора, и вы можете защитить их от подмены и изменения. Когда пакеты VNF и PNF защищены, оркестратор автоматически считает их хеш-сумму SHA256 при загрузке в веб-интерфейс оркестратора. При обращении к файлам в локальной директории Docker-контейнера оркестратор сравнивает их текущую хеш-сумму SHA256 с ранее сохраненной. Если хеш-суммы SHA256 не совпадают, оркестратор лишает пользователей возможности выполнять действия с сетевой функцией, например добавлять ее в топологию сетевого сервиса.

Чтобы защитить пакеты VNF и PNF от подмены и изменения:

  1. В нижней части меню нажмите на значок настройки → Безопасность хранилища.
  2. В открывшемся окне установите флажок Вычислять хеш-сумму SHA256 для файлов VNF/PNF в хранилище. По умолчанию флажок снят.

Пакеты VNF и PNF будут защищены от подмены и изменения.

В начало
[Topic 275010]

Загрузка пакета VNF или PNF в веб-интерфейс оркестратора

Чтобы загрузить пакет VNF или PNF в веб-интерфейс оркестратора:

  1. В меню перейдите в раздел Каталог.

    Отобразится страница управления сетевыми сервисами.

  2. В верхней части страницы нажмите на кнопку + VNF или + PNF.
  3. В открывшемся окне выберите пакет VNF или PNF.
  4. Если вы хотите проверить целостность пакета VNF или PNF, в поле Хэш-сумма SHA256 введите его хеш-сумму SHA256. Максимальная длина: 64 символа.
  5. Нажмите на кнопку Сохранить.

Пакет VNF или PNF будет загружен в веб-интерфейс оркестратора. VNF или PNF отобразится в панели Каталог. Если вы ввели хеш-сумму SHA256 пакета VNF или PNF, оркестратор сравнит введенное значение с реальной хеш-суммой SHA256. При несовпадении хеш-сумм SHA256 пакет VNF или PNF не будет загружен.

См. также

Сценарий: развертывание экземпляра SD-WAN для тенанта

В начало
[Topic 265540]