associate_node

associate_node(**kwargs)

Associates a new node with the server. For more information about how to disassociate a node, see DisassociateNode.

On a Chef server: This command is an alternative to knife bootstrap .

Example (Chef): aws opsworks-cm associate-node --server-name MyServer--node-name MyManagedNode--engine-attributes "Name=CHEF_ORGANIZATION,Value=default" "Name=CHEF_NODE_PUBLIC_KEY,Value=public-key-pem"

On a Puppet server, this command is an alternative to the puppet cert sign command that signs a Puppet node CSR.

Example (Puppet): aws opsworks-cm associate-node --server-name MyServer--node-name MyManagedNode--engine-attributes "Name=PUPPET_NODE_CSR,Value=csr-pem"

A node can can only be associated with servers that are in a HEALTHY state. Otherwise, an InvalidStateException is thrown. A ResourceNotFoundException is thrown when the server does not exist. A ValidationException is raised when parameters of the request are not valid. The AssociateNode API call can be integrated into Auto Scaling configurations, AWS Cloudformation templates, or the user data of a server's instance.

See also: AWS API Documentation

Request Syntax

response = client.associate_node(
    ServerName='string',
    NodeName='string',
    EngineAttributes=[
        {
            'Name': 'string',
            'Value': 'string'
        },
    ]
)
Parameters
  • ServerName (string) --

    [REQUIRED]

    The name of the server with which to associate the node.

  • NodeName (string) --

    [REQUIRED]

    The name of the node.

  • EngineAttributes (list) --

    [REQUIRED]

    Engine attributes used for associating the node.

    Attributes accepted in a AssociateNode request for Chef
    • CHEF_ORGANIZATION : The Chef organization with which the node is associated. By default only one organization named default can exist.
    • CHEF_NODE_PUBLIC_KEY : A PEM-formatted public key. This key is required for the chef-client agent to access the Chef API.
    Attributes accepted in a AssociateNode request for Puppet
    • PUPPET_NODE_CSR : A PEM-formatted certificate-signing request (CSR) that is created by the node.
    • (dict) --

      A name and value pair that is specific to the engine of the server.

      • Name (string) --

        The name of the engine attribute.

      • Value (string) --

        The value of the engine attribute.

Return type

dict

Returns

Response Syntax

{
    'NodeAssociationStatusToken': 'string'
}

Response Structure

  • (dict) --

    • NodeAssociationStatusToken (string) --

      Contains a token which can be passed to the DescribeNodeAssociationStatus API call to get the status of the association request.

Exceptions

  • OpsWorksCM.Client.exceptions.InvalidStateException
  • OpsWorksCM.Client.exceptions.ResourceNotFoundException
  • OpsWorksCM.Client.exceptions.ValidationException