Chef CentOS: различия между версиями
Sirmax (обсуждение | вклад) (→rps) |
Sirmax (обсуждение | вклад) |
||
(не показано 8 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
+ | [[Категория:Chef]] |
||
+ | [[Категория:Linux]] |
||
+ | [[Категория:Autodeploy]] |
||
+ | [[Категория:Ruby]] |
||
=Chef on CentOS 6.3= |
=Chef on CentOS 6.3= |
||
Тут коротко об установке chef на CentOS 6.3 |
Тут коротко об установке chef на CentOS 6.3 |
||
+ | |||
+ | <B>Похоже что эта статья полностью устарела</B><BR> |
||
+ | Новая версия тут: http://wiki.sirmax.noname.com.ua/index.php?title=Chef_CentOS_v11 |
||
==rps== |
==rps== |
||
Строка 13: | Строка 20: | ||
У меня вылезло много косяков которые в один ход лечатся вот так: (судя по всему гемы из рпм старые или слегка кривые) |
У меня вылезло много косяков которые в один ход лечатся вот так: (судя по всему гемы из рпм старые или слегка кривые) |
||
<PRE> |
<PRE> |
||
− | sudo gem install rubygems-update |
+ | sudo gem install rubygems-update |
sudo update_rubygems |
sudo update_rubygems |
||
</PRE> |
</PRE> |
||
+ | |||
+ | Ставим chef через gem |
||
+ | <PRE> |
||
+ | sudo gem install chef --no-ri --no-rdoc |
||
+ | </PRE> |
||
+ | |||
На этой стадии у меня заработал chef-solo |
На этой стадии у меня заработал chef-solo |
||
Далее небольшая копипаста из документации |
Далее небольшая копипаста из документации |
||
Строка 28: | Строка 41: | ||
sudo mkdir /etc/chef/ |
sudo mkdir /etc/chef/ |
||
</PRE> |
</PRE> |
||
+ | ===/etc/chef/solo.rb=== |
||
Now create a chef-solo configuration file. Save it as /etc/chef/solo.rb. |
Now create a chef-solo configuration file. Save it as /etc/chef/solo.rb. |
||
− | + | /etc/chef/solo.rb |
|
<PRE> |
<PRE> |
||
file_cache_path "/tmp/chef-solo" |
file_cache_path "/tmp/chef-solo" |
||
cookbook_path "/tmp/chef-solo/cookbooks" |
cookbook_path "/tmp/chef-solo/cookbooks" |
||
⚫ | |||
</PRE> |
</PRE> |
||
⚫ | |||
+ | |||
Chef can use JSON data passed to Solo or the Client to specify a certain list of recipes to run and specific Attributes to configure on the system. We're going to configure the node with a JSON file particular to whether it will be a Chef Server or a Chef Client. Create the file ~/chef.json with the applicable contents below. |
Chef can use JSON data passed to Solo or the Client to specify a certain list of recipes to run and specific Attributes to configure on the system. We're going to configure the node with a JSON file particular to whether it will be a Chef Server or a Chef Client. Create the file ~/chef.json with the applicable contents below. |
||
Строка 61: | Строка 76: | ||
Важно! |
Важно! |
||
*http://wiki.opscode.com/display/chef/Installing+Chef+Server+using+Chef+Solo#InstallingChefServerusingChefSolo-CentOS/RHELInstallationNotes |
*http://wiki.opscode.com/display/chef/Installing+Chef+Server+using+Chef+Solo#InstallingChefServerusingChefSolo-CentOS/RHELInstallationNotes |
||
+ | |||
+ | |||
+ | |||
+ | ~/chef.json |
||
+ | <PRE> |
||
+ | { |
||
+ | "chef_server": { |
||
+ | "server_url": "http://localhost:4000", |
||
+ | "webui_enabled": true |
||
+ | }, |
||
+ | "build-essential": { |
||
+ | "compiletime": true |
||
+ | }, |
||
+ | "run_list": [ "recipe[build-essential]","recipe[chef-server::rubygems-install]" ] |
||
+ | } |
||
+ | </PRE> |
||
+ | |||
+ | Засускаем chef-solo |
||
+ | <PRE> |
||
+ | sudo chef-solo -c /etc/chef/solo.rb -j ~/chef.json -r http://s3.amazonaws.com/chef-solo/bootstrap-latest.tar.gz |
||
+ | </PRE> |
||
На данной стадии сервер вроде-бы работает |
На данной стадии сервер вроде-бы работает |
Текущая версия на 21:13, 16 февраля 2013
Chef on CentOS 6.3
Тут коротко об установке chef на CentOS 6.3
Похоже что эта статья полностью устарела
Новая версия тут: http://wiki.sirmax.noname.com.ua/index.php?title=Chef_CentOS_v11
rps
Подключить epel
wget http://ftp.tlk-l.net/pub/mirrors/fedora-epel/6/i386/epel-release-6-8.noarch.rpm rpm -ivh epel-release-6-8.noarch.rpm yum list | grep rubygem | awk '{ print $1 }' | xargs -I {} yum -y install {} yum -y install openssl-devel ruby-ri ruby-libs ruby-irb gcc ruby-devel make autoconf automake
У меня вылезло много косяков которые в один ход лечатся вот так: (судя по всему гемы из рпм старые или слегка кривые)
sudo gem install rubygems-update sudo update_rubygems
Ставим chef через gem
sudo gem install chef --no-ri --no-rdoc
На этой стадии у меня заработал chef-solo Далее небольшая копипаста из документации
Установка сервера
Solo Configuration File: solo.rb
We're going to use Chef Solo to run the bootstrap recipes, so it needs to be configured to point the right locations.
First, create a chef directory in /etc
sudo mkdir /etc/chef/
/etc/chef/solo.rb
Now create a chef-solo configuration file. Save it as /etc/chef/solo.rb. /etc/chef/solo.rb
file_cache_path "/tmp/chef-solo" cookbook_path "/tmp/chef-solo/cookbooks"
Chef Solo Attributes Configuration: chef.json
Chef can use JSON data passed to Solo or the Client to specify a certain list of recipes to run and specific Attributes to configure on the system. We're going to configure the node with a JSON file particular to whether it will be a Chef Server or a Chef Client. Create the file ~/chef.json with the applicable contents below.
Chef Server with no webui: Server Attributes (API Only)
{ "chef_server": { "server_url": "http://localhost:4000" }, "run_list": [ "recipe[chef-server::rubygems-install]" ] }
Chef Server with the webui installed and enabled: Server Attributes (API and WebUI) { "chef_server": { "server_url": "http://localhost:4000", "webui_enabled": true }, "run_list": [ "recipe[chef-server::rubygems-install]" ] }
Важно!
~/chef.json
{ "chef_server": { "server_url": "http://localhost:4000", "webui_enabled": true }, "build-essential": { "compiletime": true }, "run_list": [ "recipe[build-essential]","recipe[chef-server::rubygems-install]" ] }
Засускаем chef-solo
sudo chef-solo -c /etc/chef/solo.rb -j ~/chef.json -r http://s3.amazonaws.com/chef-solo/bootstrap-latest.tar.gz
На данной стадии сервер вроде-бы работает