Keyname Required Type Description capability no The optional reserved keyname used to provide the name of either a: Capability definition within a target node template that can fulfill the requirement. Capability Type that the provider will use to select a target node template to fulfill the requirement at runtime. node no The optional reserved keyname used to identify the target node of a relationship. specifically, it is used to provide either a: Node Template name that can fulfill the target node requirement. Node Type name that the provider will use to select a node template to fulfill the requirement at runtime. relationship no The optional reserved keyname used to provide the name of either a: Relationship Template to use to relate the source node to the (capability in the) target node when fulfilling the requirement. Relationship Type that the provider will use to select a relationship template to relate the source node to the target node at runtime. node_filter no The optional filter definition that TOSCA orchestrators or providers would use to select a type-compatible target node that can fulfill the associated abstract requirement at runtime. The following is the list of recognized keynames for a TOSCA requirement assignment’s relationship keyname which is used when Property assignments need to be provided to inputs of declared interfaces or their operations: Keyname Required Type Description type no The optional reserved keyname used to provide the name of the Relationship Type for the requirement assignment’s relationship keyname. properties no list of The optional reserved keyname used to reference declared interface definitions of the corresponding Relationship Type in order to provide Property assignments for these interfaces or operations of these interfaces. Grammar Named requirement assignments have one of the following grammars: Short notation: The following single-line grammar may be used if only a concrete Node Template for the target node needs to be declared in the requirement: <>: <> This notation is only valid if the corresponding Requirement definition in the Node Template’s parent Node Type declares (at a minimum) a valid Capability Type which can be found in the declared target Node Template. A valid capability definition always needs to be provided in the requirement declaration of the source node to identify a specific capability definition in the target node the requirement will form a TOSCA relationship with.
cpu_frequency no greater_or_equal: 0.1 GHz Specifies the operating frequency of CPU's core. This property expresses the expected frequency of one (1) CPU as provided by the property “num_cpus”. disk_size no greater_or_equal: 0 MB Size of the local disk available to applications running on the Compute node (default unit is MB). mem_size no greater_or_equal: 0 MB Size of memory available to applications running on the Compute node (default unit is MB). Definition tosca.capabilities.Compute: derived_from: properties: name: type: required: false num_cpus: type: required: false constraints: - greater_or_equal: 1 cpu_frequency: type: required: false constraints: - greater_or_equal: 0.1 GHz disk_size: type: required: false constraints: - greater_or_equal: 0 MB mem_size: type: required: false constraints: - greater_or_equal: 0 MB The Storage capability, when included on a Node Type or Template definition, indicates that the node can provide addressiblity for the resource a named network with the specified ports. Shorthand Name Network Type Qualified Name tosca:Network Type URI tosca.capabilities.Network
no 0 default: 0 The order of the NIC on the compute instance (e.g. eth2). Note: when binding more than one port to a single compute (aka multi vNICs) and ordering is desired, it is *mandatory* that all ports will be set with an order value and. The order values must represent a positive, arithmetic progression that starts with 0 (e.g. 0, 1, 2, …, n). is_default no default: false Set is_default=true to apply a default gateway route on the running compute instance to the associated network gateway. Only one port that is associated to single compute node can set as default=true. ip_range_start no None Defines the starting IP of a range to be allocated for the compute instances that are associated by this Port. Without setting this property the IP allocation is done from the entire CIDR block of the network. ip_range_end no None Defines the ending IP of a range to be allocated for the compute instances that are associated by this Port. Without setting this property the IP allocation is done from the entire CIDR block of the network. Attributes Name Required Type Constraints Description ip_address no None The IP address would be assigned to the associated compute instance. Definition tosca.nodes.network.Port: derived_from: tosca.nodes.Root properties: ip_address: type: required: false order: type: required: true default: 0 constraints: - greater_or_equal: 0 is_default: type: required: default: false ip_range_start: type: required: false
mysql_dbms_install.sh yum -y install mysql mysql-server # Use systemd to start MySQL server at system boot time systemctl enable mysqld.service mysql_dbms_start.sh # Start the MySQL service (NOTE: may already be started at image boot time) systemctl start mysqld.service mysql_dbms_configure # Set the MySQL server root password mysqladmin -u root password db_root_password webserver_install.sh yum -y install httpd systemctl enable httpd.service webserver_start.sh # Start the httpd service (NOTE: may already be started at image boot time) systemctl httpd.service WebServer-DBMS 2: Nodejs with PayPal Sample App and MongoDB on separate instances Description This use case Instantiates a 2-tier application with Nodejs and its (PayPal sample) WebApplication on one tier connects a MongoDB database (which stores its application data) using a ConnectsTo relationship. Logical Diagram Sample YAML tosca_definitions_version: tosca_simple_yaml_1_0 description: > TOSCA simple profile with a nodejs web server hosting a PayPal sample application which connects to a mongodb database. imports: - custom_types/paypalpizzastore_nodejs_app.yaml dsl_definitions: