Docs: PE 2.0 » Cloud Provisioning » Man » node_aws


PE 2.0 » Cloud Provisioning » Man » node_aws


Cloud Provisioning: Man Page: puppet node_vmwareIndexCloud Provisioning: Man Page: puppet node


Man Page: node_aws

NAME

puppet-node_aws - View and manage Amazon AWS EC2 nodes.

SYNOPSIS

puppet node_aws action

DESCRIPTION

This subcommand provides a command line interface to work with Amazon EC2 machine instances. The goal of these actions is to easily create new machines, install Puppet onto them, and tear them down when they're no longer required.

OPTIONS

Note that any configuration parameter that's valid in the configuration file is also a valid long argument, although it may or may not be relevant to the present action. For example, server is a valid configuration parameter, so you can specify --server <servername> as an argument.

See the configuration file documentation at http://docs.puppetlabs.com/references/stable/configuration.html for the full list of acceptable parameters. A commented list of all configuration options can also be generated by running puppet with --genconfig.

--mode MODE
The run mode to use for the current action. Valid modes are user, agent, and master.
--render-as FORMAT
The format in which to render output. The most common formats are json, s (string), yaml, and console, but other options such as dot are sometimes available.
--verbose
Whether to log verbosely.
--debug
Whether to log debug information.

ACTIONS

bootstrap - Create and initialize an EC2 instance using Puppet.

SYNOPSIS

puppet node_aws bootstrap [--platform=] [--region=] --image= | -i= --type= --keyname= [--group= | -g= | --security-group=] --login= | -l= | --username= --keyfile= [--installer-payload=] [--installer-answers=] [--puppetagent-certname=] [--install-script=] [--puppet-version=] [--pe-version=] [--facter-version=] [--enc-ssl] [--enc-server=] [--enc-port=] [--enc-auth-user=] [--enc-auth-passwd=] [--node-group= | --as=]

DESCRIPTION

Creates an instance, classifies it, and signs its certificate. The classification is currently done using Puppet Dashboard or Puppet Enterprise's console.

OPTIONS

--enc-auth-passwd= - PE's console and Puppet Dashboard can be secured using HTTP authentication. If the console or dashboard is configured with HTTP authentication, use this option to supply credentials for accessing it.

Note: This option will default to the PUPPET_ENC_AUTH_PASSWD environment variable. Please use this environment variable if you are concerned about usernames and passwords being exposed via the Unix process table.

--enc-auth-user= - PE's console and Puppet Dashboard can be secured using HTTP authentication. If the console or dashboard is configured with HTTP authentication, use this option to supply credentials for accessing it.

Note: This option will default to the PUPPET_ENC_AUTH_USER environment variable. Please use this environment variable if you are concerned about usernames and passwords being exposed via the Unix process table.

--enc-port= - The port of the External Node Classifier. This currently only supports Puppet Enterprise's console and Puppet Dashboard as external node classifiers.

--enc-server= - The hostname of the external node classifier. This currently only supports Puppet Enterprise's console and Puppet Dashboard as external node classifiers.

--enc-ssl - By default, we do not connect to the ENC over SSL. This option configures all HTTP connections to the ENC to use SSL in order to provide encryption. This option should be set when using Puppet Enterprise 2.0 and higher.

--facter-version= - The version of facter that should be installed. This only makes sense in open source installation mode.

--group= | -g= | --security-group= - The security group(s) that the machine will be associated with. A security group determines the rules for both inbound and outbound connections.

Multiple groups can be specified as a colon-separated list.

--image= | -i= - The pre-configured operating system image to use when creating this machine instance. Currently, only AMI images are supported. Example of a Redhat 5.6 32bit image: ami-b241bfdb

--install-script= - Name of the installation template to use when installing Puppet. The current list of supported templates is: gems, puppet-enterprise

--installer-answers= - Location of the answers file that should be copied to the machine to install Puppet Enterprise.

--installer-payload= - Location of the Puppet enterprise universal tarball to be used for the installation. Can be a local file path or a URL. This option is only required if Puppet should be installed on the machine. The tarball specified must be gzipped.

--keyfile= - The filesystem path to a local private key that can be used to SSH into the node. If the node was created with the node_aws create action, this should be the path to the private key file downloaded from the Amazon EC2 interface.

Specify 'agent' if you have the key loaded in ssh-agent and available via the SSH_AUTH_SOCK variable.

--keyname= - The name of the SSH key pair to use, as listed in the Amazon AWS console. When creating the instance, Amazon will install the requested SSH public key into the instance's authorized_keys file. Not to be confused with the --keyfile option of the node subcommand's install action.

You can use the list_keynames action to get a list of valid key pairs.

--login= | -l= | --username= - The name of the user Puppet should use when logging in to the node. This user should configured to allow passwordless access via the SSH key supplied in the --keyfile option.

This is usually the root user.

--node-group= | --as= - The PE console or Puppet Dashboard group to associate the node with. The group must already exist in the ENC, or an error will be returned. If the node has not been registered with the ENC, it will automatically be registered when assigning it to a group.

--pe-version= - Version of Puppet Enterprise to be passed to the installer script. Defaults to 1.1.

--platform= - The Cloud platform used to create new machine instances. Currently, AWS (Amazon Web Services) is the only supported platform.

--puppet-version= - Version of Puppet to be installed. This version is passed to the Puppet installer script.

--puppetagent-certname= - This option allows you to specify an optional puppet agent certificate name to configure on the target system. This option applies to the puppet-enterprise and puppet-enterprise-http installation scripts. If provided, this option will replace any puppet agent certificate name provided in the puppet enterprise answers file. This certificate name will show up in the console (or Puppet Dashboard) when the agent checks in for the first time.

--region= - The instance may run in any region EC2 operates within. The regions at the time of this documentation are: US East (Northern Virginia), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), and Asia Pacific (Tokyo).

The region names for this command are: eu-west-1, us-east-1, ap-northeast-1, us-west-1, ap-southeast-1

Note: to use another region, you will need to copy your keypair and reconfigure the security groups to allow SSH access.

--type= - Type of instance to be launched. The type specifies characteristics that a machine will have, such as architecture, memory, processing power, storage, and IO performance. The type selected will determine the cost of a machine instance. Supported types are: 'm1.small','m1.large','m1.xlarge','t1.micro','m2.xlarge', 'm2.2xlarge','x2.4xlarge','c1.medium','c1.xlarge','cc1.4xlarge'.

create - Create a new EC2 machine instance.

SYNOPSIS

puppet node_aws create [--platform=] [--region=] --image= | -i= --type= --keyname= [--group= | -g= | --security-group=]

DESCRIPTION

This action launches a new Amazon EC2 instance and returns the public DNS name suitable for SSH access.

A newly created system may not be immediately ready after launch while it boots. You can use the fingerprint action to wait for the system to become ready after launch.

If creation of the instance fails, Puppet will automatically clean up after itself and tear down the instance.

OPTIONS

--group= | -g= | --security-group= - The security group(s) that the machine will be associated with. A security group determines the rules for both inbound and outbound connections.

Multiple groups can be specified as a colon-separated list.

--image= | -i= - The pre-configured operating system image to use when creating this machine instance. Currently, only AMI images are supported. Example of a Redhat 5.6 32bit image: ami-b241bfdb

--keyname= - The name of the SSH key pair to use, as listed in the Amazon AWS console. When creating the instance, Amazon will install the requested SSH public key into the instance's authorized_keys file. Not to be confused with the --keyfile option of the node subcommand's install action.

You can use the list_keynames action to get a list of valid key pairs.

--platform= - The Cloud platform used to create new machine instances. Currently, AWS (Amazon Web Services) is the only supported platform.

--region= - The instance may run in any region EC2 operates within. The regions at the time of this documentation are: US East (Northern Virginia), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), and Asia Pacific (Tokyo).

The region names for this command are: eu-west-1, us-east-1, ap-northeast-1, us-west-1, ap-southeast-1

Note: to use another region, you will need to copy your keypair and reconfigure the security groups to allow SSH access.

--type= - Type of instance to be launched. The type specifies characteristics that a machine will have, such as architecture, memory, processing power, storage, and IO performance. The type selected will determine the cost of a machine instance. Supported types are: 'm1.small','m1.large','m1.xlarge','t1.micro','m2.xlarge', 'm2.2xlarge','x2.4xlarge','c1.medium','c1.xlarge','cc1.4xlarge'.

fingerprint - Make a best effort to securely obtain the SSH host key fingerprint.

SYNOPSIS

puppet node_aws fingerprint [--platform=] [--region=] instance_name

DESCRIPTION

This action attempts to retrieve a host key fingerprint by using the EC2 API to search the console output. This provides a secure way to retrieve the fingerprint from an EC2 instance. You should run the fingerprint action immediately after creating an instance, as you wait for it to finish booting.

This action can only retrieve a fingerprint if the instance's original image was configured to print the fingerprint to the system console. Note that many machine images do not print the fingerprint to the console. If this action is unable to find a fingerprint, it will display a warning.

In either case, if this command returns without an error, then the instance being checked is ready for use.

OPTIONS

--platform= - The Cloud platform used to create new machine instances. Currently, AWS (Amazon Web Services) is the only supported platform.

--region= - The instance may run in any region EC2 operates within. The regions at the time of this documentation are: US East (Northern Virginia), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), and Asia Pacific (Tokyo).

The region names for this command are: eu-west-1, us-east-1, ap-northeast-1, us-west-1, ap-southeast-1

Note: to use another region, you will need to copy your keypair and reconfigure the security groups to allow SSH access.

list - List AWS EC2 machine instances.

SYNOPSIS

puppet node_aws list [--platform=] [--region=]

DESCRIPTION

This action obtains a list of instances from the cloud provider and displays them on the console output. For EC2 instances, only the instances in a specific region are provided.

OPTIONS

--platform= - The Cloud platform used to create new machine instances. Currently, AWS (Amazon Web Services) is the only supported platform.

--region= - The instance may run in any region EC2 operates within. The regions at the time of this documentation are: US East (Northern Virginia), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), and Asia Pacific (Tokyo).

The region names for this command are: eu-west-1, us-east-1, ap-northeast-1, us-west-1, ap-southeast-1

Note: to use another region, you will need to copy your keypair and reconfigure the security groups to allow SSH access.

RETURNS

Array of attribute hashes containing information about each EC2 instance.

list_keynames - List available AWS EC2 key names.

SYNOPSIS

puppet node_aws list_keynames [--platform=] [--region=]

DESCRIPTION

This action lists the available AWS EC2 key names and their fingerprints. Any key name from this list is a valid argument for the create action's --keyname option.

OPTIONS

--platform= - The Cloud platform used to create new machine instances. Currently, AWS (Amazon Web Services) is the only supported platform.

--region= - The instance may run in any region EC2 operates within. The regions at the time of this documentation are: US East (Northern Virginia), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), and Asia Pacific (Tokyo).

The region names for this command are: eu-west-1, us-east-1, ap-northeast-1, us-west-1, ap-southeast-1

Note: to use another region, you will need to copy your keypair and reconfigure the security groups to allow SSH access.

RETURNS

Array of attribute hashes containing information about each key pair

terminate - Terminate an EC2 machine instance.

SYNOPSIS

puppet node_aws terminate [--region=] [--platform=] [--force | -f] instance_name

DESCRIPTION

Terminate the instance identified by instance_name.

OPTIONS

--force | -f - Forces termination of an instance. --platform= - The Cloud platform used to create new machine instances. Currently, AWS (Amazon Web Services) is the only supported platform.

--region= - The instance may run in any region EC2 operates within. The regions at the time of this documentation are: US East (Northern Virginia), US West (Northern California), EU (Ireland), Asia Pacific (Singapore), and Asia Pacific (Tokyo).

The region names for this command are: eu-west-1, us-east-1, ap-northeast-1, us-west-1, ap-southeast-1

Note: to use another region, you will need to copy your keypair and reconfigure the security groups to allow SSH access.

EXAMPLES

list

List every instance in the US East region:

$ puppet node_aws list --region=us-east-1
i-e8e04588:
  created_at: Tue Sep 13 01:21:16 UTC 2011
  dns_name: ec2-184-72-85-208.compute-1.amazonaws.com
  id: i-e8e04588
  state: running

list_keynames

List the available key pairs:

$ puppet node_aws list_keynames
cody (58:c6:4f:3e:b5:51:e0:ec:49:55:4e:98:43:8f:28:f3:9a:14:c8:a3)
jeff (6e:b6:0a:27:5b:67:cd:8b:47:74:9c:f7:b2:b0:b9:ab:3a:25:d0:28)
matt (4b:8c:8d:a9:e5:88:6a:47:b7:8b:97:c5:77:e7:b7:6f:fd:b9:64:b3)

Get the key pair list as an array of JSON hashes:

$ puppet node_aws list_keynames --render-as json
[{"name":"cody","fingerprint":"58:c6:4f:3e:b5:51:e0:ec:49:55:4e:98:43:8f:28:f3:9a:14:c8:a3"},
 {"name":"jeff","fingerprint":"6e:b6:0a:27:5b:67:cd:8b:47:74:9c:f7:b2:b0:b9:ab:3a:25:d0:28"},
 {"name":"matt","fingerprint":"4b:8c:8d:a9:e5:88:6a:47:b7:8b:97:c5:77:e7:b7:6f:fd:b9:64:b3"}]

Copyright 2011 by Puppet Labs Apache 2 license; see COPYING


Cloud Provisioning: Man Page: puppet node_vmwareIndexCloud Provisioning: Man Page: puppet node


↑ Back to top