230 lines
6.7 KiB
YAML
230 lines
6.7 KiB
YAML
tosca_definitions_version: tosca_simple_yaml_1_2
|
|
|
|
description: Simple deployment flavour for Sample VNF
|
|
|
|
imports:
|
|
- etsi_nfv_sol001_common_types.yaml
|
|
- etsi_nfv_sol001_vnfd_types.yaml
|
|
- sample_kubernetes_types.yaml
|
|
|
|
topology_template:
|
|
inputs:
|
|
descriptor_id:
|
|
type: string
|
|
descriptor_version:
|
|
type: string
|
|
provider:
|
|
type: string
|
|
product_name:
|
|
type: string
|
|
software_version:
|
|
type: string
|
|
vnfm_info:
|
|
type: list
|
|
entry_schema:
|
|
type: string
|
|
flavour_id:
|
|
type: string
|
|
flavour_description:
|
|
type: string
|
|
|
|
substitution_mappings:
|
|
node_type: company.provider.VNF
|
|
properties:
|
|
flavour_id: complex
|
|
requirements:
|
|
virtual_link_external1_1: [ masterNode_CP1, virtual_link ]
|
|
virtual_link_external1_2: [ workerNode_CP1, virtual_link ]
|
|
|
|
node_templates:
|
|
VNF:
|
|
type: company.provider.VNF
|
|
properties:
|
|
flavour_description: A complex flavour
|
|
interfaces:
|
|
Vnflcm:
|
|
instantiate_end:
|
|
implementation: mgmt-drivers-kubernetes
|
|
heal_start:
|
|
implementation: mgmt-drivers-kubernetes
|
|
heal_end:
|
|
implementation: mgmt-drivers-kubernetes
|
|
scale_start:
|
|
implementation: mgmt-drivers-kubernetes
|
|
scale_end:
|
|
implementation: mgmt-drivers-kubernetes
|
|
artifacts:
|
|
mgmt-drivers-kubernetes:
|
|
description: Management driver for kubernetes cluster
|
|
type: tosca.artifacts.Implementation.Python
|
|
file: ../Scripts/kubernetes_mgmt_v2.py
|
|
|
|
masterNode:
|
|
type: tosca.nodes.nfv.Vdu.Compute
|
|
properties:
|
|
name: masterNode
|
|
description: masterNode compute node
|
|
vdu_profile:
|
|
min_number_of_instances: 3
|
|
max_number_of_instances: 3
|
|
sw_image_data:
|
|
name: masterNode-image
|
|
version: '22.04'
|
|
checksum:
|
|
algorithm: sha-512
|
|
hash: 7273f6c927c2fccb31ac1398da7c30dc9265f7c51896e41d062f9426afd061326947c9af442df6b0eddd04bca7c29239baaccf2dec4ace19a39bcdb74bbb4758
|
|
container_format: bare
|
|
disk_format: qcow2
|
|
min_disk: 0 GB
|
|
size: 2 GB
|
|
artifacts:
|
|
sw_image:
|
|
type: tosca.artifacts.nfv.SwImage
|
|
file: ../Files/images/ubuntu-22.04-server-cloudimg-amd64.img
|
|
capabilities:
|
|
virtual_compute:
|
|
properties:
|
|
requested_additional_capabilities:
|
|
properties:
|
|
requested_additional_capability_name: m1.medium
|
|
support_mandatory: true
|
|
target_performance_parameters:
|
|
entry_schema: test
|
|
virtual_memory:
|
|
virtual_mem_size: 4 GB
|
|
virtual_cpu:
|
|
num_virtual_cpu: 2
|
|
virtual_local_storage:
|
|
- size_of_storage: 45 GB
|
|
|
|
workerNode:
|
|
type: tosca.nodes.nfv.Vdu.Compute
|
|
properties:
|
|
name: workerNode
|
|
description: workerNode compute node
|
|
vdu_profile:
|
|
min_number_of_instances: 2
|
|
max_number_of_instances: 4
|
|
sw_image_data:
|
|
name: workerNode-image
|
|
version: '22.04'
|
|
checksum:
|
|
algorithm: sha-512
|
|
hash: 7273f6c927c2fccb31ac1398da7c30dc9265f7c51896e41d062f9426afd061326947c9af442df6b0eddd04bca7c29239baaccf2dec4ace19a39bcdb74bbb4758
|
|
container_format: bare
|
|
disk_format: qcow2
|
|
min_disk: 0 GB
|
|
size: 2 GB
|
|
artifacts:
|
|
sw_image:
|
|
type: tosca.artifacts.nfv.SwImage
|
|
file: ../Files/images/ubuntu-22.04-server-cloudimg-amd64.img
|
|
capabilities:
|
|
virtual_compute:
|
|
properties:
|
|
requested_additional_capabilities:
|
|
properties:
|
|
requested_additional_capability_name: m1.medium
|
|
support_mandatory: true
|
|
target_performance_parameters:
|
|
entry_schema: test
|
|
virtual_memory:
|
|
virtual_mem_size: 4 GB
|
|
virtual_cpu:
|
|
num_virtual_cpu: 2
|
|
virtual_local_storage:
|
|
- size_of_storage: 45 GB
|
|
|
|
masterNode_CP1:
|
|
type: tosca.nodes.nfv.VduCp
|
|
properties:
|
|
layer_protocols: [ ipv4 ]
|
|
order: 0
|
|
requirements:
|
|
- virtual_binding: masterNode
|
|
|
|
workerNode_CP1:
|
|
type: tosca.nodes.nfv.VduCp
|
|
properties:
|
|
layer_protocols: [ ipv4 ]
|
|
order: 0
|
|
requirements:
|
|
- virtual_binding: workerNode
|
|
|
|
policies:
|
|
- scaling_aspects:
|
|
type: tosca.policies.nfv.ScalingAspects
|
|
properties:
|
|
aspects:
|
|
workerNode_scale:
|
|
name: workerNode_scale
|
|
description: workerNode scaling aspect
|
|
max_scale_level: 2
|
|
step_deltas:
|
|
- delta_1
|
|
|
|
- masterNode_initial_delta:
|
|
type: tosca.policies.nfv.VduInitialDelta
|
|
properties:
|
|
initial_delta:
|
|
number_of_instances: 3
|
|
targets: [ masterNode ]
|
|
|
|
- workerNode_initial_delta:
|
|
type: tosca.policies.nfv.VduInitialDelta
|
|
properties:
|
|
initial_delta:
|
|
number_of_instances: 2
|
|
targets: [ workerNode ]
|
|
|
|
- workerNode_scaling_aspect_deltas:
|
|
type: tosca.policies.nfv.VduScalingAspectDeltas
|
|
properties:
|
|
aspect: workerNode_scale
|
|
deltas:
|
|
delta_1:
|
|
number_of_instances: 1
|
|
targets: [ workerNode ]
|
|
|
|
- instantiation_levels:
|
|
type: tosca.policies.nfv.InstantiationLevels
|
|
properties:
|
|
levels:
|
|
instantiation_level_1:
|
|
description: Smallest size
|
|
scale_info:
|
|
workerNode_scale:
|
|
scale_level: 0
|
|
instantiation_level_2:
|
|
description: Largest size
|
|
scale_info:
|
|
workerNode_scale:
|
|
scale_level: 2
|
|
default_level: instantiation_level_1
|
|
|
|
- masterNode_instantiation_levels:
|
|
type: tosca.policies.nfv.VduInstantiationLevels
|
|
properties:
|
|
levels:
|
|
instantiation_level_1:
|
|
number_of_instances: 3
|
|
instantiation_level_2:
|
|
number_of_instances: 3
|
|
targets: [ masterNode ]
|
|
|
|
- workerNode_instantiation_levels:
|
|
type: tosca.policies.nfv.VduInstantiationLevels
|
|
properties:
|
|
levels:
|
|
instantiation_level_1:
|
|
number_of_instances: 2
|
|
instantiation_level_2:
|
|
number_of_instances: 4
|
|
targets: [ workerNode ]
|
|
|
|
- policy_antiaffinity_group:
|
|
type: tosca.policies.nfv.AntiAffinityRule
|
|
targets: [ workerNode ]
|
|
properties:
|
|
scope: nfvi_node
|