Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
Newer
Older
100644 88 lines (52 sloc) 4.617 kb
b54358f @danielsdeleo Initial import of Knife EC2 Commands
danielsdeleo authored
1 = Knife EC2
2
ccdb3f8 @schisamo assorted enhancements:
schisamo authored
3 = DESCRIPTION:
4
5 This is the official Opscode Knife plugin for EC2. This plugin gives knife the ability to create, bootstrap, and manage EC2 instances.
6
7 = INSTALLATION:
8
ea3b1e5 Added the Chef 0.10 requirement to this doc
Jessica Bourne authored
9 Be sure you are running the latest version Chef. Versions earlier than 0.10.0 don't support plugins:
10
11 gem install chef
12
b54358f @danielsdeleo Initial import of Knife EC2 Commands
danielsdeleo authored
13 This plugin is distributed as a Ruby Gem. To install it, run:
14
ccdb3f8 @schisamo assorted enhancements:
schisamo authored
15 gem install knife-ec2
16
17 Depending on your system's configuration, you may need to run this command with root privileges.
18
19 = CONFIGURATION:
20
21 In order to communicate with the Amazon's EC2 API you will have to tell Knife about your AWS Access Key and Secret Access Key. The easiest way to accomplish this is to create some entries in your <tt>knife.rb</tt> file:
22
23 knife[:aws_access_key_id] = "Your AWS Access Key ID"
24 knife[:aws_secret_access_key] = "Your AWS Secret Access Key"
25
26 If your knife.rb file will be checked into a SCM system (ie readable by others) you may want to read the values from environment variables:
27
28 knife[:aws_access_key_id] = "#{ENV['AWS_ACCESS_KEY_ID']}"
29 knife[:aws_secret_access_key] = "#{ENV['AWS_SECRET_ACCESS_KEY']}"
30
31 You also have the option of passing your AWS API Key/Secret into the individual knife subcommands using the <tt>-A</tt> (or <tt>--aws-access-key-id</tt>) <tt>-K</tt> (or <tt>--aws-secret-access-key</tt>) command options
32
33 # provision a new m1.small Ubuntu 10.04 webserver
ae352a4 @stevendanna Minor correction to example command in README
stevendanna authored
34 knife ec2 server create -r 'role[webserver]' -I ami-7000f019 -f m1.small -A 'Your AWS Access Key ID' -K "Your AWS Secret Access Key"
ccdb3f8 @schisamo assorted enhancements:
schisamo authored
35
36 Additionally the following options may be set in your `knife.rb`:
37
38 * flavor
39 * image
3655ba8 @danielsdeleo Add basic configuration info to README
danielsdeleo authored
40 * availability_zone
41 * aws_ssh_key_id
42 * region
ccdb3f8 @schisamo assorted enhancements:
schisamo authored
43 * distro
44 * template_file
45
46 = SUBCOMMANDS:
47
48 This plugin provides the following Knife subcommands. Specific command options can be found by invoking the subcommand with a <tt>--help</tt> flag
49
50 == knife ec2 server create
51
52 Provisions a new server in the Amazon EC2 and then perform a Chef bootstrap (using the SSH protocol). The goal of the bootstrap is to get Chef installed on the target system so it can run Chef Client with a Chef Server. The main assumption is a baseline OS installation exists (provided by the provisioning). It is primarily intended for Chef Client systems that talk to a Chef server. By default the server is bootstrapped using the {ubuntu10.04-gems}[https://github.com/opscode/chef/blob/master/chef/lib/chef/knife/bootstrap/ubuntu10.04-gems.erb] template. This can be overridden using the <tt>-d</tt> or <tt>--template-file</tt> command options.
53
54 == knife ec2 server delete
55
3216adc @christophermaier Optionally destroy node and client with server.
christophermaier authored
56 Deletes an existing server in the currently configured AWS account. <b>PLEASE NOTE</b> - By default, this does not delete the associated node and client objects from the Chef server. To do so, add the <tt>--purge</tt> flag.
ccdb3f8 @schisamo assorted enhancements:
schisamo authored
57
58 == knife ec2 server list
59
60 Outputs a list of all servers in the currently configured AWS account. <b>PLEASE NOTE</b> - this shows all instances associated with the account, some of which may not be currently managed by the Chef server.
61
62 == knife ec2 instance data
63
64 Generates instance metadata in meant to be used with Opscode's custom AMIs. This will read your knife configuration <tt>~/.chef/knife.rb</tt> for the validation certificate and Chef server URL to use and output in JSON format. The subcommand also accepts a list of roles/recipes that will be in the node's initial run list.
65
66 <b>PLEASE NOTE</b> - Using Opscode's custom AMIs reflect an older way of launching instances in EC2 for Chef and should be considered DEPRECATED. Leveraging this plugins's <tt>knife ec2 server create</tt> subcommands with a base AMIs directly from your Linux distribution (ie Ubuntu AMIs from Canonical) is much preferred and more flexible. Although this subcommand will remain, the Opscode custom AMIs are currently out of date.
67
68 In-depth usage instructions can be found on the {Chef Wiki}[http://wiki.opscode.com/display/chef/Amazon+EC2+AMIs+with+Chef].
69
70 = LICENSE:
71
72 Author:: Adam Jacob (<adam@opscode.com>)
73 Copyright:: Copyright (c) 2009-2011 Opscode, Inc.
74 License:: Apache License, Version 2.0
3655ba8 @danielsdeleo Add basic configuration info to README
danielsdeleo authored
75
ccdb3f8 @schisamo assorted enhancements:
schisamo authored
76 Licensed under the Apache License, Version 2.0 (the "License");
77 you may not use this file except in compliance with the License.
78 You may obtain a copy of the License at
b54358f @danielsdeleo Initial import of Knife EC2 Commands
danielsdeleo authored
79
ccdb3f8 @schisamo assorted enhancements:
schisamo authored
80 http://www.apache.org/licenses/LICENSE-2.0
b54358f @danielsdeleo Initial import of Knife EC2 Commands
danielsdeleo authored
81
ccdb3f8 @schisamo assorted enhancements:
schisamo authored
82 Unless required by applicable law or agreed to in writing, software
83 distributed under the License is distributed on an "AS IS" BASIS,
84 WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
85 See the License for the specific language governing permissions and
86 limitations under the License.
b54358f @danielsdeleo Initial import of Knife EC2 Commands
danielsdeleo authored
87
Something went wrong with that request. Please try again.