ETSI API を使用した仮想ネットワーク機能のモニタリング
VNF の導入中に、ESC モニタリング エージェント コンポーネント(MONA)に VNF が正常かどうかを判断する方法を指示するメトリックを定義する必要があります。メトリックの定義は VNFD の重要業績評価指標(KPI)セクション内にあり、MONA は VNF を定期的にモニタして、VNFC ごとに定義された、その健全性とワークロードを確認できます。その後アクションはこれらの KPI に関連付けられ、適切な条件が満たされると実行されます。
ICMP Ping や SNMP など、いくつかの組み込みモニタリングメソッドがあります。構成 VNFC でモニタするメトリックには、次のものがあります。
-
到達可能性
-
リソース使用率(CPU、メモリ、ディスク、ネットワークスループットなど)
展開した VNFC をモニタするには、次の前提条件を満たしている必要があります。
-
展開した VNFC が動作している必要がある
-
モニタリングが有効になっている
-
KPI が設定されている必要がある
例:
vdu1:
type: tosca.nodes.nfv.Vdu.Compute
properties:
name: Example VDU1
description: Example VDU
boot_order:
- boot1-volume
configurable_properties:
additional_vnfc_configurable_properties:
vim_flavor: Automation-Cirros-Flavor
bootup_time: 1800
vm_name_override: my-vdu-1
recovery_action: REBOOT_THEN_REDEPLOY
recovery_wait_time: 100
monitor_on_error: false
max_retries: 2
kpi_data:
VM_ALIVE-1:
event_name: 'VM_ALIVE-1'
metric_value: 1
metric_cond: 'GT'
metric_type: 'UINT32'
metric_occurrences_true: 1
metric_occurrences_false: 30
metric_collector:
type: 'ICMPPing'
nicid: 1
poll_frequency: 10
polling_unit: 'seconds'
continuous_alarm: false
admin_rules:
VM_ALIVE-1:
event_name: 'VM_ALIVE-1'
action:
- 'ALWAYS log'
- 'FALSE recover autohealing'
- 'TRUE esc_vm_alive_notification'
placement_type: zone
placement_target: nova
placement_enforcement: strict
vendor_section:
cisco_esc:
config_data:
example.txt:
file: ../Files/Scripts/example.txt
variables:
DOMAIN_NAME: { get_input: DOMAIN_NAME }
NAME_SERVER: { get_input: NAME_SERVER }
VIP_ADDR: { get_input: VIP_ADDR }
VIP_PREFIX: { get_input: VIP_PREFIX }
vdu_profile:
min_number_of_instances: 1
max_number_of_instances: 1
capabilities:
virtual_compute:
properties:
virtual_cpu:
num_virtual_cpu: 8
virtual_memory:
virtual_mem_size: 16
requirements:
- virtual_storage: cdr1-volume
- virtual_storage: boot1-volume
上記の kpi_data はデフォルトで必要な KPI で、最低でもすべての展開で必要です。これにより、VM_ALIVE メッセージが生成され、VNFC が正常に展開されたことが ESC Manager に通知されます。これは、KPI、その収集方法、および KPI が満たされたときに実行されるアクションで構成されています。
シスコのデータ構造プロパティ
データ タイプ |
プロパティ名 |
説明 |
値 |
---|---|---|---|
cisco.datatypes.nfv.data.Kpi |
KPI ラベル |
ユーザ定義の一意の KPI 名 |
任意 |
cisco.datatypes.nfv.data.Kpi |
monitoring_agent |
ローカルまたは 分散型 MONAなど、VNF のモニタリングエージェントを指定します。 |
エージェントの URI |
cisco.datatypes.nfv.data.Kpi |
event_name |
||
cisco.datatypes.nfv.data.Kpi |
metric_value |
||
cisco.datatypes.nfv.data.Kpi |
metric_cond |
||
cisco.datatypes.nfv.data.Kpi |
metric_type |
||
cisco.datatypes.nfv.data.Kpi |
metric_occurrences_true |
||
cisco.datatypes.nfv.data.Kpi |
metric_occurrences_false |
||
cisco.datatypes.nfv.metric.Collector |
type |
『NETCONF API Guide』を参照してください。 |
『NETCONF API Guide』を参照してください。 |
cisco.datatypes.nfv.metric.Collector |
nicid |
||
cisco.datatypes.nfv.metric.Collector |
poll_frequency |
||
cisco.datatypes.nfv.metric.Collector |
polling_unit |
||
cisco.datatypes.nfv.metric.Collector |
continuous_alarm |
||
cisco.datatypes.nfv.metric.Collector |
property_list |
||
cisco.datatypes.nfv.data.Admin_rules |
ルールラベル |
一意のユーザ定義名 |
任意 |
cisco.datatypes.nfv.data.Admin_rules |
event_name |
この値は、Kpi event_name と一致する必要があります |
|
cisco.datatypes.nfv.data.Admin_rules |
action |
||
cisco.datatypes.nfv.data.Admin_rules |
property_list |
# For notificationType "InfrastructureOperationOccurrenceNotification"
subscription.notifications.infra.filter.operationTypes=MONITORING_MIGRATION
subscription.notifications.infra.filter.operationStates=COMPLETED,FAILED_TEMP,FAILED,ROLLED_BACK
subscription.notifications.infra.callbackUri=http://<nfvoHost>:<nfvoPort>/monitoring/migration/notification # Full URL where the notification will be sent
subscription.notifications.infra.authentication.authType=BASIC # or OAUTH2_CLIENT_CREDENTIALS
# Basic Auth credentials (based on authType)
subscription.notifications.infra.authentication.paramsBasic.userName=nfvo
subscription.notifications.infra.authentication.paramsBasic.password=mypw
# Alternatively, OAUTH 2.0 credentials (based on authType)
#subscription.notifications.infra.authentication.paramsOauth2ClientCredentials.clientId=
#subscription.notifications.infra.authentication.paramsOauth2ClientCredentials.clientPassword=
#subscription.notifications.infra.authentication.paramsOauth2ClientCredentials.tokenEndpoint=
(注) |
前のプロパティが設定されていない場合、これらの通知はすべての通知タイプが適用されるサブスクライバに送信されます。 |
KPI とルールの詳細については、『Cisco Elastic Services Controller User Guide』を参照してください。