cookbook 'etcd', '= 2.2.2'
etcd
(93) Versions
2.2.2
-
-
9.1.34
-
9.1.33
-
9.1.31
-
9.1.30
-
9.1.29
-
9.1.28
-
9.1.27
-
9.1.26
-
9.1.25
-
9.1.24
-
9.1.23
-
9.1.22
-
9.1.21
-
9.1.20
-
9.1.19
-
9.1.18
-
9.1.17
-
9.1.16
-
9.1.15
-
9.1.14
-
9.1.13
-
9.1.12
-
9.1.11
-
9.1.10
-
9.1.9
-
9.1.8
-
9.1.7
-
9.1.6
-
9.1.5
-
9.1.4
-
9.1.3
-
9.1.2
-
9.1.1
-
9.1.0
-
9.0.1
-
9.0.0
-
8.0.0
-
7.0.3
-
7.0.2
-
7.0.1
-
7.0.0
-
6.3.0
-
6.2.0
-
6.1.0
-
6.0.0
-
5.6.3
-
5.6.2
-
5.6.1
-
5.6.0
-
5.5.1
-
5.5.0
-
5.4.0
-
5.3.1
-
5.3.0
-
5.2.1
-
5.1.0
-
5.0.0
-
4.1.1
-
4.1.0
-
4.0.0
-
3.2.5
-
3.2.4
-
3.2.3
-
3.2.2
-
3.2.1
-
3.2.0
-
3.1.6
-
3.1.5
-
3.1.4
-
3.1.3
-
3.1.2
-
3.1.1
-
3.1.0
-
3.0.0
-
2.2.2
-
2.2.1
-
2.2.0
-
2.1.3
-
2.1.2
-
2.1.1
-
2.0.1
-
2.0.0
-
1.3.5
-
1.3.4
-
1.3.3
-
1.3.1
-
1.2.4
-
1.2.3
-
1.2.2
-
1.2.1
-
1.1.1
-
1.1.0
-
1.0.0
Follow10
- 9.1.34
- 9.1.33
- 9.1.31
- 9.1.30
- 9.1.29
- 9.1.28
- 9.1.27
- 9.1.26
- 9.1.25
- 9.1.24
- 9.1.23
- 9.1.22
- 9.1.21
- 9.1.20
- 9.1.19
- 9.1.18
- 9.1.17
- 9.1.16
- 9.1.15
- 9.1.14
- 9.1.13
- 9.1.12
- 9.1.11
- 9.1.10
- 9.1.9
- 9.1.8
- 9.1.7
- 9.1.6
- 9.1.5
- 9.1.4
- 9.1.3
- 9.1.2
- 9.1.1
- 9.1.0
- 9.0.1
- 9.0.0
- 8.0.0
- 7.0.3
- 7.0.2
- 7.0.1
- 7.0.0
- 6.3.0
- 6.2.0
- 6.1.0
- 6.0.0
- 5.6.3
- 5.6.2
- 5.6.1
- 5.6.0
- 5.5.1
- 5.5.0
- 5.4.0
- 5.3.1
- 5.3.0
- 5.2.1
- 5.1.0
- 5.0.0
- 4.1.1
- 4.1.0
- 4.0.0
- 3.2.5
- 3.2.4
- 3.2.3
- 3.2.2
- 3.2.1
- 3.2.0
- 3.1.6
- 3.1.5
- 3.1.4
- 3.1.3
- 3.1.2
- 3.1.1
- 3.1.0
- 3.0.0
- 2.2.2
- 2.2.1
- 2.2.0
- 2.1.3
- 2.1.2
- 2.1.1
- 2.0.1
- 2.0.0
- 1.3.5
- 1.3.4
- 1.3.3
- 1.3.1
- 1.2.4
- 1.2.3
- 1.2.2
- 1.2.1
- 1.1.1
- 1.1.0
- 1.0.0
Installs and configures etcd
cookbook 'etcd', '= 2.2.2', :supermarket
knife supermarket install etcd
knife supermarket download etcd
etcd cookbook - installs coreos/etcd on centos/ubuntu boxen
Supported Platforms
Centos/rhat 6+ & ubuntu with upstart
Recipes
Name | Description |
---|---|
default |
Install and setup the service |
binary_install |
Installs the binary of etcd from github release tarballs |
cluster |
Recipe to aide in the building of multi-node etcd clusters |
compile_time |
Install and configure etcd during chef compile phase |
source_install |
Compiles the binary of etcd from a specificed github repo/revision |
_service |
Recipe used by default for setting up the service |
Attributes
attribute | default setting | description |
---|---|---|
default[:etcd][:install_method] |
binary |
Right now only binary and source are supported. In the future this will probably go away as there are actual distro packages |
default[:etcd][:version] |
0.3.0 |
The release versions to install. binary install will assemble a github url to grab this version |
default[:etcd][:sha256] |
726bd3.. |
The Sha256 hash of the tarball specified by the version or URL attribute |
default[:etcd][:url] |
nil |
override the internal generated url to specify your own binary tarball. see the .kitchen.yml for example override |
default[:etcd][:state_dir] |
/var/cache/etcd/state |
Where etcd will store its state |
default[:etcd][:search_cook] |
'etcd\:\:cluster' |
The cookbook that should be searched for on the nodes recipes to detect if it is also running etcd |
default[:etcd][:trigger_restart] |
true |
Make etcd restart if the init config is updated |
default[:etcd][:upstart][:start_on] |
started networking |
When to start the etcd service using upstart |
default[:etcd][:upstart][:stop_on] |
shutdown |
When to stop the etcd service using upstart |
These attributes control the startup/cmdline args for etcd:
attribute | default setting | description |
---|---|---|
default[:etcd][:name] |
nil |
The name etcd uses inthe cluster. By default we use the first available value from node[:fqdn] , node[:hostname] , or node[:name] . Set this to something else to override. |
default[:etcd][:snapshot] |
true |
This is really important to get good memory usage. If you're running this in product, you probably want this set to true
|
default[:etcd][:seed_node] |
nil |
The seed node for initial cluster setup. This node will start as the master, but restarts will rejoin the raft cluster. This needs to be set when using cluster recipe otherwise the cluster will not initialize. |
default[:etcd][:nodes] |
[] |
Array of hostnames in cluster. This provides an alternative method to using Chef's partial_search for specifying nodes in cluster (useful if using chef-solo ) |
default[:etcd][:addr] |
node.ipaddress:4001 |
address the adress that etcd uses publically. defaults to node.ipaddress:4001 |
default[:etcd][:peer_addr] |
node.ipaddress:7001 |
address to announce to peers specified as ip:port or ip when empty string it will set to node.ipaddress:7001 |
default[:etcd][:discovery] |
'' |
Discovery address/token see: https://coreos.com/docs/cluster-management/setup/etcd-cluster-discovery/ for more info |
default[:etcd][:env_scope] |
true |
Set the search in cluster recipe to restrict to nodes in the same environment |
default[:etcd][:args] |
'' |
Extra arguments to pass to etcd when starting the service. if you specify something that is computed they will be passed twice. This is here to handle where you want to setup other things. |
Usage
Default single instance single node:
Simply add etcd to your runlist
run_list[etcd]
Setup a cluster
NOTE: setting node[:etcd][:addr]
and [:etcd][:peer_addr]
is important when using a cluster where nodes might have many adresses. Make sure they advertise an adress that is reachable by other members.
Using Seed node
In a role or wrapper cookbook setup the seed_node attribute and add the cluster recipe to each node in the cluster.
If you use a wrapper cookbook set node[:etcd][:search_cook]
to the wrapper cookboks name
run_list[etcd::cluster]
example wrapper can be seen here
Using Discovery
To use discovery simply goto https://discovery.etcd.io/new and get a url then set node[:etd][:discovery]
to that url. This can also be your own etcd instance and a key.
Then use etcd::cluster
recipe to build out the cluster.
License and Author
Original Author | Jesse Nelson |
Contributor | Soulou |
Contributor | Aaron O'Mullan |
Contributor | Anthony Scalisi |
Contributor | Robert Coleman |
Contributor | James Gregory |
Copyright | Copyright (c) 2013, Jesse Nelson |
Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an "AS IS" BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
Dependent cookbooks
ark >= 0.0.0 |
partial_search ~> 1.0.6 |
git >= 0.0.0 |
chef-sugar >= 0.0.0 |
Contingent cookbooks
2.2.2
- update to etcd 0.4.6
- adds debian support
2.2.1
- update to etcd 0.4.5
- Add centos 7 support
- Support centos cloud images without tar
- Dry out compile time recipe
- Move to berks3
2.2.0
- update to etcd 0.4.2
- Removed node[:etcd][:local] No longer needed in new etcd. Etcd will default bind :4001 and :7001. The cookbook default is now to use node[:ipaddress] as the addr and peer_addr.
- add auto-respawn instruction in upstart config file
- Fix Gem deps in the ci build
2.1.3
- add peer and peer_addr support / attributes
- add name attribute and computation
- fixup cmdline argument computation
- ensure cluster members are always sorted
- fix spec tests
2.1.2
- fix bug in cluster recipe where Resolv was spelled wrong
- fix kitchen test on cluster to pickup this issue.
- add basic chefspec as well to ensure this sort of issue doesn't occur
- fix bug with name attribute methods
- fix searching for wrong recipe when using cluster recipe
2.1.1
- update to etcd 0.3.0
- Add support for new discovery mode
- refactor common functions into library methods
- Add specs
- Use rubocop to replace tailor/cane
- Fixup testing (add travis integration)
2.0.0
- update to etcd 0.2.0
- remove
name_switch
attribute. It was marked for deprication in 1.3 - enable snapshotting by default
- add optional local listener
- support chef-solo
- Add support of explicitely specifying a cluster's nodes
1.3.5
- silence foodcritic by accessing attributes in a consistent manner,
- trigger a restart when etcd conf is updated
- include git if source install
- metadata depends on git recipe
- Update Documentation
- Update contributors
1.3.4
- fix compile_time to use the right tarball path
1.3.3
- Bump to etcd 1.2
- Added source install recipe
1.3.1
- default binding to node[:ipaddress]
1.2.4
- update to etcd 0.1.1 release
- add compile_time recipe that does the whole bit in chef compile time
1.2.3
- hotfix to add missing
node[:etcd][:env_scope]
attribute - bugfix: use
node[:fqdn]
instead of hostname when matching local machine name
1.2.2
- add cluster recipe for setting up clusters of etcd nodes
- re-add seed-node attribute
1.2.1
- fix the startup args so it is easier to specify custom args
- supports release version and current master on git
- add in tests for both release and git versions of etcd
1.1.1
- Make everything work with release 0.1.0 of etcd
- fixup some syntax issues
1.1.0
- move binary install to using coreos/etcd releases from github
- for now the install locattion is fixed to /usr/local and links in /usr/local/bin
- Use ark for managing tarballs
- move bats tests to using etcdctl instead of curl