Built-in Node Types
Abstract Types
The following node_types
are basic types from which concrete types with specific plugin implementations are derived.
-
cloudify.nodes.Root
- The base type for all built-in types. Declares the following interfaces:cloudify.interfaces.lifecycle
: An interface for standard life cycle operations (e.g. create, start, stop, etc.). Operations of this interface are called from the built-in install and uninstall workflows.cloudify.interfaces.validation
: An interface for pre-creation and pre-deletion validation operations. These can be called by using the execute_operation built-in workflow or by a custom workflow.cloudify.interfaces.monitoring_agent
: An interface for monitoring agent. Operations of this interface are called from the built-in install and uninstall workflows.cloudify.interfaces.monitoring
: An interface for monitoring configuration. Operations of this interface are called from the built-in install and uninstall workflows.
-
cloudify.nodes.Tier
- A marker for a future scale group. -
cloudify.nodes.Compute
- A compute resource. Either a virtual or a physical host. -
cloudify.nodes.Container
- A logical partition in a host such as Linux container or Docker. -
cloudify.nodes.Network
- A virtual network. -
clouydify.nodes.Subnet
- A virtual segment of an IP addresses in a network. -
cloudify.nodes.Router
- A virtual layer 3 router. -
cloudify.nodes.Port
- An entry in a virtual subnet. Can be used in some Clouds to secure a static private IP. -
cloudify.nodes.VirtualIP
- A virtual IP implemented as NAT, or in another manner. -
cloudify.nodes.SecurityGroup
- A Cloud security group. (VM network access rules) -
cloudify.nodes.LoadBalancer
- A virtualized load balancer. -
cloudify.nodes.Volume
- A persistent block storage volume. -
cloudify.nodes.FileSystem
- A writable file system. This type must be used in conjunction with acloudify.nodes.Volume
type and acloudify.nodes.Compute
type.- relationships: The conjunction stated above is expressed by specifying two mandatory relationships for the file system.
cloudify.relationships.file_system_depends_on_volume
- Used to format and partition the file system on top of the volume. It creates a single partition occupying the entire capacity of the volume.cloudify.relationships.file_system_contained_in_compute
- Used to mount and unmount the file system from the server.
- properties:
use_external_resource
- Enables the use of already formatted volumes. In this case, the formatting part is skipped, and only a mount point id created. Defaults to False. (Boolean)partition_type
- The partition type. Defaults to 83 which is a Linux native partition. (Integer)fs_type
- The type of the File System. Supported types are:ext2
,ext3
,ext4
,fat
,ntfs
,swap
fs_mount_path
- The path of the mount point.
- Example Usage:
volume_fs: type: cloudify.nodes.FileSystem properties: fs_type: ext4 fs_mount_path: /mount-path relationships: - type: cloudify.relationships.file_system_depends_on_volume target: volume - type: cloudify.relationships.file_system_contained_in_compute target: vm
- relationships: The conjunction stated above is expressed by specifying two mandatory relationships for the file system.
-
cloudify.nodes.ObjectStorage
- A BLOB storage segment. -
cloudify.nodes.SoftwareComponent
- A base type for all middleware level types. -
cloudify.nodes.WebServer
- A Web server.- properties:
port
- The Webserver port.
- properties:
-
cloudify.nodes.ApplicationServer
- An application server. -
cloudify.nodes.DBMS
- A database. -
cloudify.nodes.MessageBugServer
- A message BUS server. -
cloudify.nodes.ApplicationModule
- A base type for any application module or artifact.