serverapps:configmgmt:chef:knife
knife
knife-xenserver
インストール
root ユーザでログインし、gem でインストール
# /opt/chef/embedded/bin/gem install knife-xenserver --no-ri --no-rdoc
こんな感じでエラーが出ました
Running 'configure' for libxml2 2.8.0... ERROR, review 'tmp//ports/libxml2/2.8.0/configure.log' to see what happened.
*** extconf.rb failed ***
Could not create Makefile due to some reason, probably lack of
necessary libraries and/or headers. Check the mkmf.log file for more
details. You may need configuration options.
Provided configuration options:
--with-opt-dir
--with-opt-include
--without-opt-include=${opt-dir}/include
--with-opt-lib
--without-opt-lib=${opt-dir}/lib
--with-make-prog
--without-make-prog
--srcdir=.
--curdir
--ruby=/opt/chef/embedded/bin/ruby
/opt/chef/embedded/lib/ruby/gems/1.9.1/gems/mini_portile-0.5.3/lib/mini_portile.rb:278:in `block in execute': Failed to complete configure task (RuntimeError)
from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/mini_portile-0.5.3/lib/mini_portile.rb:270:in `chdir'
from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/mini_portile-0.5.3/lib/mini_portile.rb:270:in `execute'
from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/mini_portile-0.5.3/lib/mini_portile.rb:65:in `configure'
from /opt/chef/embedded/lib/ruby/gems/1.9.1/gems/mini_portile-0.5.3/lib/mini_portile.rb:108:in `cook'
from extconf.rb:101:in `block in <main>'
from extconf.rb:119:in `call'
from extconf.rb:119:in `block in <main>'
from extconf.rb:109:in `tap'
from extconf.rb:109:in `<main>'
NOKOGIRI_USE_SYSTEM_LIBRARIES=1 /opt/chef/embedded/bin/gem install nokogiri
いろいろ調べたところ
- libxml2とlibxsltをインストールする
- NOKOGIRI_USE_SYSTEM_LIBRARIES=YES でシステムのライブラリを使う
- grepがBSD版なのでgnu版にする
- 環境変数のcolorが悪さをしている
などが引っかかりましたがいずれも違ってました…
で、奥のほうにあるconfigure.log 1)をのぞいたら………
(;゚д゚)アッ…
………ありましたよ奥さん。………ていうか、cがねーよと言われてます
configure: error: no acceptable C compiler found in $PATH
証拠隠滅
# yum -y install gcc
orz
root ユーザでログインし、gem でインストール
# /opt/chef/embedded/bin/gem install knife-xenserver --no-ri --no-rdoc Fetching: terminal-table-1.4.5.gem (100%) <省略…> Successfully installed knife-xenserver-1.4.3 13 gems installed
確認してみます
# su - chefユーザ $ knife xenserver --help
使用方法が表示されたらOK
XenServerへの接続
接続情報を~/.chef/knife.rbへ追加します2)
knife[:xenserver_password] = 'password' knife[:xenserver_username] = 'root' knife[:xenserver_host] = '192.168.xxx.xxx'
ホストリストの表示をしてみます
$ knife xenserver host list Connecting to XenServer host 192.168.xxx.xxx... +-----------------------------+--------------------------------------+ | NAME | UUID | +-----------------------------+--------------------------------------+ | XenServer-Dom0 | 9546a5d-41f7-4125-xxxx-xxxxxxxxxxxx | +-----------------------------+--------------------------------------+
VMを作成する
knife xenserver vm create --vm-template 776cd54d-917c-de8a-xxxx-xxxxxxxxxxxx --vm-name hoge
VMの削除
knife xenserver vm delete hoge
serverapps/configmgmt/chef/knife.txt · 最終更新: by 127.0.0.1
