Base node types

Dell Cloud Manager provides the following base node types which are defined in a file named base_types.yaml.

Example

The example below shows a Server node defined from the base type dcm.nodes.Server. Nodes are defined in the node_templates: section.

  node_templates:
    vm:
        type: dcm.nodes.Server
        properties:
          name: "test-server"
          cloud: { get_input: [account_region_zone_selector, cloud] }              # Retrieve cloud from the AccountRegionSelector
          cloudAccountId: { get_input: [account_region_zone_selector, accountId] } # Retrieve the cloud account ID from the AccountRegionSelector
          region: { get_input: [account_region_zone_selector, region] }            # Retrieve region from the AccountRegionSelector
          zone: { get_input: [account_region_zone_selector, zone] }                # Retrieve zone from the AccountRegionSelector
          platform: { get_input: [product_selector, platform] }                    # Retrieve platform from the Product selector
          architecture: { get_input: [product_selector, architecture] }            # Retrieve architecture from the Product selector
          product: { get_input: [product_selector, product] }                      # Retrieve product from the Product selector
          image: { get_input: [product_selector, image] }                          # Retrieve machine from the Product selector
          serverProductId: { get_input: [product_selector, serverProductId] }      # Retrieve server product id from the Product selector
          startupScript: |
              #!/bin/bash
              ##########################################################################################################################################
              # Install the Dell Cloud Manager agent, point it to the Dell Cloud Manager server and configure it to startup at boot time.
              ##########################################################################################################################################
              export DCM_URL=${dcm.callback.url}

              ##########################################################################################################################################
              # The -Z argument configures the Dell Cloud Manager agent and allows it to accept unknown certificates. 
              # This is only recommended for testing and should not be done in a production environment.
              ##########################################################################################################################################
              curl -L --retry 10 https://linux-stable-agent.enstratius.com/installer.sh | bash -s - --url $DCM_URL --on-boot -Z

              ##########################################################################################################################################
              # Start the Dell Cloud Manager agent.
              ##########################################################################################################################################
              /etc/init.d/dcm-agent start

        requirements:                                                   # This virtual machine node has a requirement on a firewall
          - firewall: vm_firewall_rules                                 # The firewall statement is named "vm_firewall_rules"
            relationship_type: tosca.relationships.DependsOn