- Created by Marian Darula, last modified by Zu Qiang on Jan 24, 2022
You are viewing an old version of this page. View the current version.
Compare with Current View Page History
« Previous Version 29 Next »
tosca.datatypes.asd.extCpdData Expand source
tosca.datatypes.asd.extCpdData: version: 0.1 derived_from: tosca.datatypes.Root description: "Describes the datatype for external connection point definition data" properties: id: description: "The identifier of this extCpdData" required: true type: string description: description: > This property describes for a particular ExtCpd instance what service it exposes. required: true type: string virtual_link_requirement: description: > Refers in an abstract way to the network or multiple networks that the ExtCpd shall be exposed on (ex: OAM, EndUser, backhaul, LI, etc) required: true type: string network_interface_realization_requirements: description: > Details container implementation specific requirements on the NetworkAttachmentDefinition required: false type: tosca.datatypes.asd.networkInterfaceRequirements input_param_mappings: description: > Information on what helm chart input parameters that are required to be configured for this extCpd required: false type: tosca.datatypes.asd.paramMappings resource_mapping: description: > Kubernetes API resource name for the resource manifest for the service, ingress controller or pod required: false type: string
tosca.datatypes.asd.networkInterfaceRequirements Expand source
tosca.datatypes.asd.networkInterfaceRequirements: derived_from: tosca.datatypes.Root version: 0.1 description: "Describes the datatype for network interface requirements" properties: trunk_mode: description: > Information about whether the CP instantiated from this Cp is in Trunk mode (802.1Q or other). When operating in "trunk mode", the Cp is capable of carrying traffic for several VLANs. Absence of this property implies that trunkMode is not configured for the Cp i.e. It is equivalent to boolean value "false". required: true type: boolean default: false ipam: description: > Identifies whether application expects IP address assignment to be managed by the cluster infrastructure (CNI IPAM plugin), or configured by orchestrator via for example helm input parameter, or if IP assignment is handled by the application itself. required: true type: string constraints: - valid_values: ["infraProvided", "orchestrated", "userManaged"] default: "infraProvided" interface_type: description: > Indicates what type of network interface the application expects. Kernel based virtual netdev based on CNIs such as ovs | bridge | macvlan | ipvlan, or PCIe dev directly visible in application namespace with kernel or userspace driver or bonded with the Bond CNI, or userspace-CNI based network interface (requires DPDK-OVS/VPP vSwitch). required: true type: string constraints: - valid_values: ["kernel.netdev", "direct.userdriver", "direct.kerneldriver", "direct.bond", "userspace"] default: "kernel.netdev" interface_option: description: > This attribute describes verified realization options for the network interface in question. Currently listed options (virtio and memif) are applicable for the interfaceType “userspace”. required: false type: list entry_schema: type: string constraints: - valid_values: [“virtio", "memif“] interface_redundancy: description: > Identifies switch-plane redundancy method the application uses, and that node infrastructure is required to comply with. "infraProvided", “left” and “right”: The container sees a single vNIC that a) the infrastructure bonds over both switchplanes or b) that is connected to the network via only left or right the switchplane. The other cases are for a mated pair of vnics connecting to same network, but where one vNIC connects via left switch plane and the other via right switch plane, and where the application manages the redundancy. "activePassiveBond": the application bonds with move of MAC address. "activeActiveBond“: bonded left/right links must be part of a multi-chassis LAG "activePassiveL3": application will move application IP address between the vNICs. "activeActiveL3": the application uses anycast/ECMP. required: true type: string constraints: - valid_values: ["infraProvided", "actPassBond", "actActBond", "actPassL3", "actActL3", "Left", "Right"] default: "infraProvided" nic_options: description: > Identifies for the direct.userdriver interface type, the physical nics the driver is verified to work with. Allowed values for nic types must be handled via a registry or be standardized. required: false type: list entry_schema: type: string
tosca.datatypes.asd.paramMappings Expand source
tosca.datatypes.asd.paramMappings: version: 0.1 derived_from: tosca.datatypes.Root description: "Describes the datatype for parameter mapping" properties: loadbalancer_IP: description: > When present, this attribute specifies the name of the deployment artifact input parameter through which the orchestrator can configure the loadbalancerIP parameter of the K8s service or ingress controller that the ExtCpd represents. required: false type: string external_IPs: description: > When present, this attribute specifies the name of the deployment artifact input parameter through which the orchestrator can configure the extermalIPs parameter of the K8s service or ingress controller, or the pod network interface annotation, that the ExtCpd represents. required: false type: list entry_schema: type: string nad_names: description: > Specifies, for an ExtCpd respesenting a secondary network interface, the name(s) of the NetworkAttachmentDefinitions the orchestrator has created as base for the network interface the ExtCpd represents. required: false type: list entry_schema: type: string nad_namespace: description: > Specifies, for an asdExtCpd respesenting a secondary network interface, the namespace where the NetworkAttachmentDefinitions (NADs) are located. Attribute may be omitted if the namespace is same as the application namespace. required: false type: string
tosca.datatypes.asd.enhancedClusterCapabilities Expand source
tosca.datatypes.asd.enhancedClusterCapabilities: version: 0.1 derived_from: tosca.datatypes.Root description: "Describes the datatype for parameter mapping" properties: min_kernel_version: description: > Describes the minimal required Kernel version, e.g. 4.15.0. Coded as displayed by linux command uname –r required: true type: string required_kernel_modules: description: > Required kernel modules are coded as listed by linux lsmod command, e.g. ip6_tables, cryptd, nf_nat etc. required: false type: list entry_schema: type: string conflicting_kernel_modules: description: > Kernel modules, which must not be present in the target environment. The kernel modules are coded as listed by linux lsmod command, e.g., ip6_tables, cryptd, nf_nat etc. Example: Linux kernel SCTP module, which would conflict with use of proprietary user space SCTP stack provided by the application. required: false type: list entry_schema: type: string required_custom_resources: description: > List the custom resource kinds required to be supported in the target environment. The list shall include those custom resource kinds which are not delivered with the application. required: false type: list entry_schema: type: tosca.datatypes.asd.customResourceRequirement cluster_labels: description: > This attribute allows to associate arbitrary labels to clusters. These can indicate special infrastructure capabilities (e.g., NW acceleration, GPU compute, etc.). The intent of these labels is to serve as a set of values that can help in application placement decisions. clusterLabels follow the Kubernetes label key-value-nomenclature (https://kubernetes.io/docs/concepts/overview/working-with-objects/labels/). It is recommended that labels follow a standardized meaning e.g. for node features (https://kubernetes-sigs.github.io/node-feature-discovery/v0.9/get-started/features.html#table-of-contents). Example: ClusterLabels - feature.node.kubernetes.io/cpu-cpuid.AESNI: true required: false type: list entry_schema: type: string required_plugin: description: a list of the name of the required K8s plugin required: false type: list entry_schema: type: tosca.datatypes.asd.requiredPlugin
tosca.datatypes.asd.customResourceRequirement Expand source
tosca.datatypes.asd.customResourceRequirement: version: 0.1 derived_from: tosca.datatypes.Root description: > kind: "Redis", apiVersion: "kubedb.com/v1alpha1" properties: kind: description: "the name of the custom resource requirement" type: string required: true api_version: description: "the api version of the custom resource requirement" type: string required: true
tosca.datatypes.asd.requiredPlugin Expand source
tosca.datatypes.asd.requiredPlugin: version: 0.1 derived_from: tosca.datatypes.Root description: "the required K8s plugin" properties: name: description: "the name of the required K8s plugin" type: string required: true version: description: "the version of the required K8s plugin" type: string required: true
- No labels