SlideShare una empresa de Scribd logo
1 de 16
Descargar para leer sin conexión
hbstudy#37 x IDCF クラウドハンズオン



Chef Server および knife-cloudstack-fog
             導入手順書




               2012 年 9 月 1 日

                    初版




            @tafujish @anikundesu
Chef Server および knife-cloudstack-fog 導入手順書

目次
1. この文書について .................................................................. 3
2. IDCF クラウド上に仮想マシン作成.................................................... 4
 1)    CloudPortal から Chef Server 用の仮想マシンを作成 ............................... 4
 2)    SSH 接続するためのネットワーク設定 ............................................. 4
3. Chef Server の構築 ................................................................ 5
 1)    Chef Server 用 VM(CentOS 6.1)に SSH ログイン .................................... 5
 2)    Chef Server を導入 ............................................................. 5
4. Chef Workstation(knife-cloudstack-fog 実行環境)の構築 .............................. 7
 1)    Chef Workstation 操作用ユーザーの作成 .......................................... 7
 2)    Ruby コンパイル用パッケージ導入 ................................................ 7
 3)    Chef Workstation 環境の前提ソフトウェア導入 .................................... 7
 4)    knife-cloudstack-fog の各種設定 ................................................ 8
5. knife-cloudstack-fog から仮想マシン作成........................................... 11
 1)    knife-cloudstack-fog を使った VM 構築自動化 .................................... 11
6. Template ID、Service Offering ID、VM のインスタンス ID、Zone ID の調べ方 ........... 15
付録)公式の knife-cloudstack-fog をインストール ...................................... 16




                                        2 / 16
Chef Server および knife-cloudstack-fog 導入手順書


1. この文書について
この文書は、 フロンティアのクラウドサービス セルフタイプ
      IDC                    (以下、IDCF クラウド)において、
Chef Server を構築し、knife-cloudstack-fog による VM 作成から Chef Server 管理下に登録するま
での手順を説明したものです。
検証は行っておりますが、動作を保証するものではありません。また、本手順書に従って操作をし
たことによって不利益、損害等が発生した場合でも、一切保証は致しません。




                                  3 / 16
Chef Server および knife-cloudstack-fog 導入手順書


2. IDCF クラウド上に仮想マシン作成
 ※IDCF クラウドの操作方法については、エントリーガイド(pp.21-27)を参照してください

1) CloudPortal から Chef Server 用の仮想マシンを作成
 https://noahcloud.jp/ へアクセスし、配布したユーザ名/パスワードにてログインします。
 以下の設定で仮想マシンを作成します。


    テンプレート             [LATEST] CentOS 6.1 64-bit
    VM タイプ             M4 ( Hourly ) 2CPU, 4GB RAM
    ディスク選択             必要ありません
    仮想マシン名             任意
    グループ名              任意
    SSH Keys           SSH 鍵生成
                       ※生成後、秘密鍵をローカルにコピーしてください



2) SSH 接続するためのネットワーク設定
 CloudPortal で TCP22 番を開放するようポートフォーワーディングルールとファイアウォールを
設定します。


 ※ここでの設定は、仮想マシン作成後(ステータスが Runnning)になった後に実施してください


 「リソース」>「ネットワーク」>「ポートフォーワーディング」にて、TCP22 番を転送します。
 「リソース」>「ネットワーク」>「ファイアウォール」にて、TCP22 番を開けます。




                                  4 / 16
Chef Server および knife-cloudstack-fog 導入手順書


3. Chef Server の構築

1) Chef Server 用 VM(CentOS 6.1)に SSH ログイン
  ローカルの環境から、作成した仮想マシンに SSH 接続します。



2) Chef Server を導入
以下のコマンドで、RBEL リポジトリを追加後、yum コマンドで Chef サーバをインストールします。
その後、Chef Server のセットアップスクリプトを実行します。


# rpm -Uvh http://rbel.co/rbel6
# yum install rubygem-chef-server
# setup-chef-server.sh


ここで、chef-server-webui サービスが正常に立ち上がりません。以下のコマンドで、Chef Server
のサービスが起動しているか確認します。


# service chef-server status
chef-server (pid   ####) を実行中...
# service chef-server-webui status
chef-server-webui が停止していますが PID ファイルが残っています


実行中、という表示なら問題なし。検証時は『chef-server-webui が停止していますが PID ファイ
ルが残っています』というエラーが初回は必ず出てしまいます。この時は以下のコマンドを実行し、
プロセス再起動を行います。


# service chef-server-webui restart


ここで、CloudPortal の画面から「リソース」>「ネットワーク」>「ポートフォーワーディング」
と「ファイアウォール」にて、TCP/4040 を公開します。




                                      5 / 16
Chef Server および knife-cloudstack-fog 導入手順書




次に、Chef-Server の Web 画面にアクセスできるか確認します。
URL およびログイン情報は以下の通りです。


    URL              http://(4040 番ポートを開放したグローバル IP):4040/
    User 名           admin
    パスワード(初期設定) chef321go




ログイン直後、強制的にパスワード変更を求められるので、任意のパスワードに変更します。




                               6 / 16
Chef Server および knife-cloudstack-fog 導入手順書


4. Chef Workstation(knife-cloudstack-fog 実行環境)の構築

1) Chef Workstation 操作用ユーザーの作成
Chef Workstation で操作を行うための一般ユーザーを作成し、パスワード設定と、SSH ログインの
ための公開鍵を登録します。


# useradd hoge
# passwd hoge    (念のためパスワードを設定)
# mkdir /home/hoge/.ssh
# cp /root/.ssh/authorized_keys /home/hoge/.ssh/
# chown -R hoge:hoge /home/hoge/.ssh



2) Ruby コンパイル用パッケージ導入
次に Ruby をコンパイルするために必要なパッケージをインストールします。また、git も利用する
のでインストールします。


# yum install gcc make openssl-devel readline-devel libxslt-devel git



3) Chef Workstation 環境の前提ソフトウェア導入
SSH で先ほど作成したユーザーでログインします。


・RVM の導入
CentOS6 の OS 標準の Ruby は 1.8.7 ですが、この後使う knife-cloudstack-fog では Ruby 1.9.3 を利
用する必要があります。そのため、Chef Workstation ユーザー専用の Ruby 環境を、RVM を用いて構
築します。


下記コマンドを実行すると、RVM のインストール、および Ruby 1.9.3-p194 がソースコードからコン
パイルされ、インストールされます。


# su - hoge
$ curl -L https://get.rvm.io | bash -s stable --ruby
※ruby 1.9.3 のコンパイルが行われるため、完了まで 10 分程度かかります。




                                         7 / 16
Chef Server および knife-cloudstack-fog 導入手順書

インストール後、.bash_profile に rvm 用設定が追記されたことを確認します。


$ cat ~/.bash_profile
(以下の行があることを確認)
[[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm"


確認後、.bash_profile をロードします。その後、rvm コマンド、および ruby –v で Ruby 1.9.3 が
利用されていることを確認します。


$ source ~/.bash_profile
$ rvm list
rvm rubies


=* ruby-1.9.3-p194 [ x86_64 ]


$ ruby -v
ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux]



4) knife-cloudstack-fog の各種設定
ruby-gem で knife-cloudstack-fog をインストールします。ただし、公開されている
knife-cloudstack-fog では、SSH 鍵認証に関連した機能の不足があるため、機能を追加したバージ
ョンを導入します。


(knife-cloudstack-fog のソース入手と gem ファイルのビルド)
$ cd ~
$ wget https://github.com/anikundesu/knife-cloudstack-fog/zipball/master -O
knife-cloudstack-fog.zip
$ unzip -q knife-cloudstack-fog.zip
$ cd anikundesu-knife-cloudstack-fog-(コミット番号)/
$ gem build knife-cloudstack-fog.gemspec
(gem で Chef と knife-cloudstack-fog のインストール)
$ gem install chef --no-ri --no-rdoc
$ gem install fog --no-ri --no-rdoc
$ gem install --local knife-cloudstack-fog-0.2.15.gem




                                           8 / 16
Chef Server および knife-cloudstack-fog 導入手順書



・knife ツール用の Directory 構造の準備
Knife コマンドを実行するために、ホームディレクトリの下に、chef-repo ディレクトリを作成しま
す。さらに knife コマンド実行に必要なファイル群を展開します。その後、knife 設定ファイルを置
く chef-repo/.chef ディレクトリを作成します。


$ cd ~
$ git clone git://github.com/opscode/chef-repo.git
$ mkdir -p ~/chef-repo/.chef



・knife 用の環境セットアップ
まず、root ユーザーにて Chef Server で Default で作成されている validation ユーザー、および
webui ユーザーの秘密鍵をコピーします。


$ su -
(以下、root での作業)
# cp /etc/chef/validation.pem /etc/chef/webui.pem /home/hoge/chef-repo/.chef/
(validation.pem と webui.pem をコピー)
# chown -R hoge:hoge /home/hoge/chef-repo/.chef
# exit
$



次に、Chef Server、Workstation の初期設定を行います。


$ knife configure -i
WARNING: No knife configuration file found
Where should I put the config file? [/home/hoge/.chef/knife.rb]
/home/hoge/chef-repo/.chef/knife.rb
Please enter the chef server URL: [http://i-???-?????-VM.cs???cloud.internal:4000]
Please enter a clientname for the new client: [hoge](chef server で作るユーザー名)
Please enter the existing admin clientname: [chef-webui]
Please enter the location of the existing admin client's private key: [/etc/chef/webui.pem]
/home/hoge/chef-repo/.chef/webui.pem
Please enter the validation clientname: [chef-validator]
Please enter the location of the validation key: [/etc/chef/validation.pem]
/home/hoge/chef-repo/.chef/validation.pem

                                            9 / 16
Chef Server および knife-cloudstack-fog 導入手順書

Please enter the path to a chef repository (or leave blank): /home/hoge/chef-repo
Creating initial API user...
Created client[hoge]
Configuration file written to /home/hoge/chef-repo/.chef/knife.rb



さらに、knife-cloudstack-fog で利用するための CloudStack API 情報、API エンドポイント URL 情
報を、~/chef-repo/.chef/knife.rb に追記します。


$ vi ~/chef-repo/.chef/knife.rb
(以下の行を追加)
knife[:cloudstack_access_key_id]     = "API キー"
knife[:cloudstack_secret_access_key] = "秘密鍵"
knife[:cloudstack_api_endpoint] = "https://api.noahcloud.jp/portal/client/api"


API キーおよび秘密鍵は、IDCF クラウドのポータル右上の「マイプロファイル」をクリックすると
表示されます。(最新のエンドポイントの情報は FAQ を参照します)




・knife-cloudstack-fog の動作確認
以下のコマンドを実行し、knife-cloudstack-fog が正常に動作していることを確認します。
$ cd ~/chef-repo
$ knife cloudstack zone list
ID                 Name             Network Type      Security Groups?
1                  jp-east-t1v      Advanced          No

                                         10 / 16
Chef Server および knife-cloudstack-fog 導入手順書


5. knife-cloudstack-fog から仮想マシン作成

1) knife-cloudstack-fog を使った VM 構築自動化

・SSH キーペアの準備
これから knife-cloudstack-fog にて新規作成する VM に SSH ログインするためのキーペアを準備し
ます。(1)~(3)のいずれかの方法で、キーペアを用意します。


(1) 仮想マシン作成時に作成した SSH 鍵を利用する場合


  ローカルに保存した秘密鍵を、仮想マシンへ SCP ファイル転送やテキストコピーで作成します。


(2) CloudStack にて生成させる場合


$ knife cloudstack keypair create -k (Key の名前) -o (生成する秘密鍵ファイル名)
$ mv (秘密鍵) ~/chef-repo/.chef/
$ chmod 400 ~/chef-repo/.chef/(秘密鍵)


(3)ローカルで生成した SSH キーを登録する場合


$ ssh-keygen –b 2048
(パスフレーズは無しで作成すること)
$ knife cloudstack keypair create -k (Key の名前) -p "(公開鍵を 1 行で) "



・キーペアが登録されていることを確認
以下のコマンドで、keypair が CloudStack に登録されていることを確認します。


$ knife cloudstack keypair list
Name       Fingerprint                     Private Key
(Key の名前)        37:7f:d8:8d:ee:13:06:42:12:48:47:ff:eb:e0:05:15




                                         11 / 16
Chef Server および knife-cloudstack-fog 導入手順書



・bootstrap スクリプトの作成
VM 作成後、Chef Client として動作するための一連の設定を行うスクリプト(bootstrap)を準備し
ます。拡張後の knife-cloudstack-fog の中に、CentOS 6 用の bootstrap があるのでコピーします。


$ cd ~/chef-repo/.chef
$ mkdir bootstrap
$ cd bootstrap
$ cp ~/anikundesu-knife-cloudstack-fog-fbdcfea/erb/centos6.erb ./



・cookbook の入手と Chef Server へのアップロード
下記サイトに Chef のコミュニティにより作成された Cookbook のリストがあるので、好きなものを
選んで導入することができます。
http://community.opscode.com/cookbooks


Cookbook のアップロードをするために、~/chef-repo ディレクトリで以下を実行します。


$ knife cookbook site install (cookbook 名)
$ knife cookbook upload (cookbook 名)



ここでは、例として getting-started、apache2 という 2 つの cookbook をアップロードします。


$ cd ~/chef-repo
$ git init
$ knife cookbook site install getting-started
$ knife cookbook site install apache2
$ knife cookbook upload -a
※site install にてローカルにダウンロードした cookbook すべてをアップロード


アップロード後、Chef Server の Web UI の「Cookbooks」タブに、upload した cookbook が表示され
ることを確認します。




                                         12 / 16
Chef Server および knife-cloudstack-fog 導入手順書




・VM の作成
knife-cloudstack-fog は knife コマンドに”cloudstack”から始まるサブコマンドを渡すことで実
行できます。


利用可能なサブコマンド一覧、および各コマンドに渡す引数は以下のように調べることができます。
                                利用可能サブコマンド一覧
$ knife cloudstack
knife cloudstack
FATAL: Cannot find sub command for: 'cloudstack'
Available cloudstack subcommands: (for details, knife SUB-COMMAND --help)


** CLOUDSTACK COMMANDS **
knife cloudstack template list (options)
knife cloudstack volume list (options)
knife cloudstack securitygroup list (options)
knife cloudstack server list (options)
knife cloudstack keypair list (options)
knife cloudstack keypair create (options)
knife cloudstack server delete INSTANCE_ID [INSTANCE_ID] (options)
knife cloudstack server stop INSTANCE_ID [INSTANCE_ID] (options)
knife cloudstack server create (options)
knife cloudstack zone list (options)
knife cloudstack diskofferings list (options)
knife cloudstack networks list (options)
knife cloudstack serviceoffering list (options)

                                            13 / 16
Chef Server および knife-cloudstack-fog 導入手順書

                       server create サブコマンドのオプション(--help)
$ knife cloudstack server create --help
knife cloudstack server create (options)
        --server-url URL             Chef Server URL
        --key KEY                    API Client Key
 ~略~


仮想マシンを作成する際には、以下のような引数を渡すことで、VM 作成と、Chef Server 管理下へ
の追加、および Cookbook に含まれる Recipe を実行してくれます。


$ knife cloudstack server create 
   -s (service offering ID) -t (template ID) -z (zone ID) -d (bootstrap script) 
   -i (SSH Private key of keypair) -k (CloudStack keypair name) 
   -N (displayname on Chef Server/CloudStack UI) 
   -r '[RECIPE1]', '[RECIPE2]',・・・


以下は、IDCF クラウド上で CentOS 6.1 64bit の仮想マシンを作り、getting-started と apache2 の
Recipe を実行します。また、Service Offering として『S2』を指定しています。


(CentOS 6.1 64bit で VM を作る場合)
$ cd ~/chef-repo
$ knife cloudstack server create -s 30 -t 1021 -z 1 -d centos6 
   -i ~/chef-repo/.chef/srv2clt.pem -k srv2clt -N ChefClient3 
   -r 'recipe[getting-started]','recipe[apache2]'



・cookbook が実行されていることの確認
SSH で作成した client にログインします。
Root のホームディレクトリに chef-getting-started.txt があることを確認し、内容も確認。


[Workstation]$ ssh –i ~/chef-repo/.chef/(秘密鍵) root@(作成した仮想マシンの IP)
[Chef Client]$ ls ~/
[Chef Client]$ cat chef-getting-started.txt




                                           14 / 16
Chef Server および knife-cloudstack-fog 導入手順書

Chef Server の Web UI の「Nodes」タブに、作成した仮想マシン(Node)が表示されることを確認し
ます。




6. Template ID、Service Offering ID、 のインスタンス ID、
                                   VM          Zone

   ID の調べ方

いずれも knife cloudstack のサブコマンドで調べることができます。


$ knife cloudstack template list
(テンプレート一覧)
$ knife cloudstack serviceoffering list
(サービスオファリング一覧)
$ knife cloudstack server list
(作成したサーバ一覧)
$ knife cloudstack zone list
(ゾーン一覧)




参考 LINK
  knife-cloudstack-fog 公式
  http://rubygems.org/gems/knife-cloudstack-fog


  IDCF クラウド対応 knife-cloudstack-fog 作成者 anikundesu
  https://github.com/anikundesu/
                                          15 / 16
Chef Server および knife-cloudstack-fog 導入手順書


付録)公式の knife-cloudstack-fog をインストール

公式の knife-cloudstack-fog をインストールするには、現在インストールされている
knife-cloudstack-fog をアンインストールした後、gem インストールします。


$ gem uninstall knife-cloudstack-fog
Successfully uninstalled knife-cloudstack-fog-0.2.15
$ gem install knife-cloudstack-fog
Fetching: knife-cloudstack-fog-0.2.15.gem (100%)
Successfully installed knife-cloudstack-fog-0.2.15
1 gem installed
Installing ri documentation for knife-cloudstack-fog-0.2.15...
Installing RDoc documentation for knife-cloudstack-fog-0.2.15...




                                         16 / 16

Más contenido relacionado

La actualidad más candente

「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)さくらインターネット株式会社
 
Okinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - AnsibleOkinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - AnsibleHideki Saito
 
あの日実行したコンテナの名前を僕達はまだ知らない。
あの日実行したコンテナの名前を僕達はまだ知らない。あの日実行したコンテナの名前を僕達はまだ知らない。
あの日実行したコンテナの名前を僕達はまだ知らない。Masahito Zembutsu
 
Wocker 秒速で WordPress 開発環境を構築する
Wocker 秒速で WordPress 開発環境を構築するWocker 秒速で WordPress 開発環境を構築する
Wocker 秒速で WordPress 開発環境を構築するKite Koga
 
aws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみたaws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみたkokuboyuichi
 
OpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? WayOpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? Wayロフト くん
 
Rancher command line interface
Rancher command line interfaceRancher command line interface
Rancher command line interfaceMasahito Zembutsu
 
使ってわかる 今どきのdocker超入門
使ってわかる 今どきのdocker超入門使ってわかる 今どきのdocker超入門
使ってわかる 今どきのdocker超入門Kazuhide Okamura
 
On-premise コンテナ基盤と Hardware LB を使った "type LoadBalancer"
On-premise コンテナ基盤と Hardware LB を使った "type LoadBalancer"On-premise コンテナ基盤と Hardware LB を使った "type LoadBalancer"
On-premise コンテナ基盤と Hardware LB を使った "type LoadBalancer"Masaya Aoyama
 
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1Hidetoshi Hirokawa
 
Chef社内勉強会(第1回)
Chef社内勉強会(第1回)Chef社内勉強会(第1回)
Chef社内勉強会(第1回)Yoshinori Nakanishi
 
Dive into dockerネットワーク
Dive into dockerネットワークDive into dockerネットワーク
Dive into dockerネットワークKazuyuki Mori
 
開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみた開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみたpyar6329
 
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Daisuke Hiraoka
 
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築Chefで始めるWindows Server構築
Chefで始めるWindows Server構築Takashi Kanai
 
BOSH-lite で 1VM Cloud Foundry
BOSH-lite で 1VM Cloud FoundryBOSH-lite で 1VM Cloud Foundry
BOSH-lite で 1VM Cloud Foundryi_yudai
 

La actualidad más candente (20)

「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
「さくらのクラウド」スタートアップスクリプトを作ってみよう! - concrete5を題材に -(オープンソースカンファレンス2014 Shimane)
 
Okinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - AnsibleOkinawa Open Days 2015 Handson - Ansible
Okinawa Open Days 2015 Handson - Ansible
 
あの日実行したコンテナの名前を僕達はまだ知らない。
あの日実行したコンテナの名前を僕達はまだ知らない。あの日実行したコンテナの名前を僕達はまだ知らない。
あの日実行したコンテナの名前を僕達はまだ知らない。
 
Wocker 秒速で WordPress 開発環境を構築する
Wocker 秒速で WordPress 開発環境を構築するWocker 秒速で WordPress 開発環境を構築する
Wocker 秒速で WordPress 開発環境を構築する
 
aws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみたaws上でcloud foundryを構築してみた
aws上でcloud foundryを構築してみた
 
OpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? WayOpenShift from Easy way to Hard ? Way
OpenShift from Easy way to Hard ? Way
 
Docker 1.12 の衝撃
Docker 1.12 の衝撃Docker 1.12 の衝撃
Docker 1.12 の衝撃
 
Twemproxy (nutcracker)
Twemproxy (nutcracker)Twemproxy (nutcracker)
Twemproxy (nutcracker)
 
Rancher command line interface
Rancher command line interfaceRancher command line interface
Rancher command line interface
 
使ってわかる 今どきのdocker超入門
使ってわかる 今どきのdocker超入門使ってわかる 今どきのdocker超入門
使ってわかる 今どきのdocker超入門
 
On-premise コンテナ基盤と Hardware LB を使った "type LoadBalancer"
On-premise コンテナ基盤と Hardware LB を使った "type LoadBalancer"On-premise コンテナ基盤と Hardware LB を使った "type LoadBalancer"
On-premise コンテナ基盤と Hardware LB を使った "type LoadBalancer"
 
Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1Ansible 2.0を使って組む kubernetesクラスタ vol.1
Ansible 2.0を使って組む kubernetesクラスタ vol.1
 
20170124 linux basic_2
20170124 linux basic_220170124 linux basic_2
20170124 linux basic_2
 
Chef社内勉強会(第1回)
Chef社内勉強会(第1回)Chef社内勉強会(第1回)
Chef社内勉強会(第1回)
 
Dive into dockerネットワーク
Dive into dockerネットワークDive into dockerネットワーク
Dive into dockerネットワーク
 
20170124 linux basic_1
20170124 linux basic_120170124 linux basic_1
20170124 linux basic_1
 
開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみた開発環境をVagrantからdockerに移行してみた
開発環境をVagrantからdockerに移行してみた
 
Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!Appsody でnodejsのアプリを立ち上げよう!
Appsody でnodejsのアプリを立ち上げよう!
 
Chefで始めるWindows Server構築
Chefで始めるWindows Server構築Chefで始めるWindows Server構築
Chefで始めるWindows Server構築
 
BOSH-lite で 1VM Cloud Foundry
BOSH-lite で 1VM Cloud FoundryBOSH-lite で 1VM Cloud Foundry
BOSH-lite で 1VM Cloud Foundry
 

Destacado

サーバー初心者のためのWordPressサイト構築手順〜付録〜 MacターミナルやTera Termを使用したSSH接続方法など
サーバー初心者のためのWordPressサイト構築手順〜付録〜 MacターミナルやTera Termを使用したSSH接続方法などサーバー初心者のためのWordPressサイト構築手順〜付録〜 MacターミナルやTera Termを使用したSSH接続方法など
サーバー初心者のためのWordPressサイト構築手順〜付録〜 MacターミナルやTera Termを使用したSSH接続方法などIDC Frontier
 
SCALR アカウント登録手順
SCALR アカウント登録手順SCALR アカウント登録手順
SCALR アカウント登録手順mnarita
 
SCALR OSS版のインストール手順のご紹介 20131204 01
SCALR OSS版のインストール手順のご紹介 20131204 01SCALR OSS版のインストール手順のご紹介 20131204 01
SCALR OSS版のインストール手順のご紹介 20131204 01Haruhiko KAJIKAWA
 
Idcfクラウドクイズ
IdcfクラウドクイズIdcfクラウドクイズ
IdcfクラウドクイズSanae Taniguchi
 
僕はまだ10%しかIDCFクラウドを理解していなかった
僕はまだ10%しかIDCFクラウドを理解していなかった僕はまだ10%しかIDCFクラウドを理解していなかった
僕はまだ10%しかIDCFクラウドを理解していなかったFujishiro Takuya
 
(Vulsで)脆弱性対策をもっと楽に!
(Vulsで)脆弱性対策をもっと楽に!(Vulsで)脆弱性対策をもっと楽に!
(Vulsで)脆弱性対策をもっと楽に!hogehuga
 
サーバー初心者のためのWordPressサイト構築手順
サーバー初心者のためのWordPressサイト構築手順サーバー初心者のためのWordPressサイト構築手順
サーバー初心者のためのWordPressサイト構築手順IDC Frontier
 
Aerospike on IDCF Cloud
Aerospike on IDCF CloudAerospike on IDCF Cloud
Aerospike on IDCF CloudIDC Frontier
 

Destacado (12)

Scalr hands on
Scalr hands onScalr hands on
Scalr hands on
 
サーバー初心者のためのWordPressサイト構築手順〜付録〜 MacターミナルやTera Termを使用したSSH接続方法など
サーバー初心者のためのWordPressサイト構築手順〜付録〜 MacターミナルやTera Termを使用したSSH接続方法などサーバー初心者のためのWordPressサイト構築手順〜付録〜 MacターミナルやTera Termを使用したSSH接続方法など
サーバー初心者のためのWordPressサイト構築手順〜付録〜 MacターミナルやTera Termを使用したSSH接続方法など
 
Hbstudy41 auto scaling
Hbstudy41 auto scalingHbstudy41 auto scaling
Hbstudy41 auto scaling
 
SCALR アカウント登録手順
SCALR アカウント登録手順SCALR アカウント登録手順
SCALR アカウント登録手順
 
SCALR OSS版のインストール手順のご紹介 20131204 01
SCALR OSS版のインストール手順のご紹介 20131204 01SCALR OSS版のインストール手順のご紹介 20131204 01
SCALR OSS版のインストール手順のご紹介 20131204 01
 
hbstudy37 slide
hbstudy37 slidehbstudy37 slide
hbstudy37 slide
 
Idcfクラウドクイズ
IdcfクラウドクイズIdcfクラウドクイズ
Idcfクラウドクイズ
 
僕はまだ10%しかIDCFクラウドを理解していなかった
僕はまだ10%しかIDCFクラウドを理解していなかった僕はまだ10%しかIDCFクラウドを理解していなかった
僕はまだ10%しかIDCFクラウドを理解していなかった
 
脆弱性情報はこうしてやってくる
脆弱性情報はこうしてやってくる脆弱性情報はこうしてやってくる
脆弱性情報はこうしてやってくる
 
(Vulsで)脆弱性対策をもっと楽に!
(Vulsで)脆弱性対策をもっと楽に!(Vulsで)脆弱性対策をもっと楽に!
(Vulsで)脆弱性対策をもっと楽に!
 
サーバー初心者のためのWordPressサイト構築手順
サーバー初心者のためのWordPressサイト構築手順サーバー初心者のためのWordPressサイト構築手順
サーバー初心者のためのWordPressサイト構築手順
 
Aerospike on IDCF Cloud
Aerospike on IDCF CloudAerospike on IDCF Cloud
Aerospike on IDCF Cloud
 

Similar a hbstudy37 doc

ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefnpsg
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!Midori Oge
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1Kotaro Noyama
 
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略Hiroshi SHIBATA
 
ビルドサーバで使うDocker
ビルドサーバで使うDockerビルドサーバで使うDocker
ビルドサーバで使うDockerMasashi Shinbara
 
Server side Swift & Photo Booth
Server side Swift & Photo Booth Server side Swift & Photo Booth
Server side Swift & Photo Booth LINE Corporation
 
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介Midori Oge
 
Dockerでlamp環境を作って見る
Dockerでlamp環境を作って見るDockerでlamp環境を作って見る
Dockerでlamp環境を作って見るzhengen lin
 
S16 Microsoft Azure 上での Chef 環境の構成
S16 Microsoft Azure 上での Chef 環境の構成S16 Microsoft Azure 上での Chef 環境の構成
S16 Microsoft Azure 上での Chef 環境の構成Microsoft Azure Japan
 
Webサーバーの構築
Webサーバーの構築Webサーバーの構築
Webサーバーの構築Kiyokazu Kaba
 
Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編
 Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編 Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編
Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編Masahito Zembutsu
 
Docker & Kubernetes基礎
Docker & Kubernetes基礎Docker & Kubernetes基礎
Docker & Kubernetes基礎Daisuke Hiraoka
 
Idcfクラウドで始める構築自動化
Idcfクラウドで始める構築自動化Idcfクラウドで始める構築自動化
Idcfクラウドで始める構築自動化智之 大野
 
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまでDockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまでRyo Nakamaru
 
オトナのDocker入門
オトナのDocker入門オトナのDocker入門
オトナのDocker入門Tsukasa Kato
 
サーバー設定自動化は経営課題
サーバー設定自動化は経営課題 サーバー設定自動化は経営課題
サーバー設定自動化は経営課題 Maho Takara
 
(続) はじめてのCloud Foundry
(続) はじめてのCloud Foundry(続) はじめてのCloud Foundry
(続) はじめてのCloud FoundryTomohiro Ichimura
 
Docker講習会資料
Docker講習会資料Docker講習会資料
Docker講習会資料teruyaono1
 
Circle ci and docker+serverspec
Circle ci and docker+serverspecCircle ci and docker+serverspec
Circle ci and docker+serverspecTsuyoshi Yamada
 

Similar a hbstudy37 doc (20)

ネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chefネットワークエンジニアのための Puppet / Chef
ネットワークエンジニアのための Puppet / Chef
 
Lxc on cloud
Lxc on cloudLxc on cloud
Lxc on cloud
 
20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!20140612_Docker上でCloudStackを動かしてみる!!
20140612_Docker上でCloudStackを動かしてみる!!
 
CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1CloudFoundry 2 on Apache CloudStack 4.2.1
CloudFoundry 2 on Apache CloudStack 4.2.1
 
成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略成長を加速する minne の技術基盤戦略
成長を加速する minne の技術基盤戦略
 
ビルドサーバで使うDocker
ビルドサーバで使うDockerビルドサーバで使うDocker
ビルドサーバで使うDocker
 
Server side Swift & Photo Booth
Server side Swift & Photo Booth Server side Swift & Photo Booth
Server side Swift & Photo Booth
 
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
第20回CloudStackユーザ会_ApacheCloudStack4.4新機能紹介
 
Dockerでlamp環境を作って見る
Dockerでlamp環境を作って見るDockerでlamp環境を作って見る
Dockerでlamp環境を作って見る
 
S16 Microsoft Azure 上での Chef 環境の構成
S16 Microsoft Azure 上での Chef 環境の構成S16 Microsoft Azure 上での Chef 環境の構成
S16 Microsoft Azure 上での Chef 環境の構成
 
Webサーバーの構築
Webサーバーの構築Webサーバーの構築
Webサーバーの構築
 
Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編
 Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編 Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編
Rancher/Kubernetes入門ハンズオン資料~第2回さくらとコンテナの夕べ #さくらの夕べ 番外編
 
Docker & Kubernetes基礎
Docker & Kubernetes基礎Docker & Kubernetes基礎
Docker & Kubernetes基礎
 
Idcfクラウドで始める構築自動化
Idcfクラウドで始める構築自動化Idcfクラウドで始める構築自動化
Idcfクラウドで始める構築自動化
 
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまでDockerを使ったローカルでの開発から本番環境へのデプロイまで
Dockerを使ったローカルでの開発から本番環境へのデプロイまで
 
オトナのDocker入門
オトナのDocker入門オトナのDocker入門
オトナのDocker入門
 
サーバー設定自動化は経営課題
サーバー設定自動化は経営課題 サーバー設定自動化は経営課題
サーバー設定自動化は経営課題
 
(続) はじめてのCloud Foundry
(続) はじめてのCloud Foundry(続) はじめてのCloud Foundry
(続) はじめてのCloud Foundry
 
Docker講習会資料
Docker講習会資料Docker講習会資料
Docker講習会資料
 
Circle ci and docker+serverspec
Circle ci and docker+serverspecCircle ci and docker+serverspec
Circle ci and docker+serverspec
 

Más de Fujishiro Takuya

ベアメタルサーバー/オンプレミスと実現するハイブリッドクラウド
ベアメタルサーバー/オンプレミスと実現するハイブリッドクラウドベアメタルサーバー/オンプレミスと実現するハイブリッドクラウド
ベアメタルサーバー/オンプレミスと実現するハイブリッドクラウドFujishiro Takuya
 
オートスケールアップ Powered by Mackerel
オートスケールアップ Powered by Mackerelオートスケールアップ Powered by Mackerel
オートスケールアップ Powered by MackerelFujishiro Takuya
 
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方Fujishiro Takuya
 
Rancher ではじめる マルチクラウドコンテナー
Rancher ではじめる マルチクラウドコンテナーRancher ではじめる マルチクラウドコンテナー
Rancher ではじめる マルチクラウドコンテナーFujishiro Takuya
 
●●●の知らないSBCの世界
●●●の知らないSBCの世界●●●の知らないSBCの世界
●●●の知らないSBCの世界Fujishiro Takuya
 
Loves Baremetal-servers, Loves POWER
Loves Baremetal-servers, Loves POWERLoves Baremetal-servers, Loves POWER
Loves Baremetal-servers, Loves POWERFujishiro Takuya
 
おこづかいが足りないのでIDCFクラウドで自サイトを作ってみた話
おこづかいが足りないのでIDCFクラウドで自サイトを作ってみた話おこづかいが足りないのでIDCFクラウドで自サイトを作ってみた話
おこづかいが足りないのでIDCFクラウドで自サイトを作ってみた話Fujishiro Takuya
 
IDCFクラウド MeetUp2 LT
IDCFクラウド MeetUp2 LTIDCFクラウド MeetUp2 LT
IDCFクラウド MeetUp2 LTFujishiro Takuya
 
MaxScaleを触ってみた
MaxScaleを触ってみたMaxScaleを触ってみた
MaxScaleを触ってみたFujishiro Takuya
 

Más de Fujishiro Takuya (10)

ベアメタルサーバー/オンプレミスと実現するハイブリッドクラウド
ベアメタルサーバー/オンプレミスと実現するハイブリッドクラウドベアメタルサーバー/オンプレミスと実現するハイブリッドクラウド
ベアメタルサーバー/オンプレミスと実現するハイブリッドクラウド
 
オートスケールアップ Powered by Mackerel
オートスケールアップ Powered by Mackerelオートスケールアップ Powered by Mackerel
オートスケールアップ Powered by Mackerel
 
実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方実践!DBベンチマークツールの使い方
実践!DBベンチマークツールの使い方
 
Rancher ではじめる マルチクラウドコンテナー
Rancher ではじめる マルチクラウドコンテナーRancher ではじめる マルチクラウドコンテナー
Rancher ではじめる マルチクラウドコンテナー
 
●●●の知らないSBCの世界
●●●の知らないSBCの世界●●●の知らないSBCの世界
●●●の知らないSBCの世界
 
Loves Baremetal-servers, Loves POWER
Loves Baremetal-servers, Loves POWERLoves Baremetal-servers, Loves POWER
Loves Baremetal-servers, Loves POWER
 
おこづかいが足りないのでIDCFクラウドで自サイトを作ってみた話
おこづかいが足りないのでIDCFクラウドで自サイトを作ってみた話おこづかいが足りないのでIDCFクラウドで自サイトを作ってみた話
おこづかいが足りないのでIDCFクラウドで自サイトを作ってみた話
 
IDCFクラウド MeetUp2 LT
IDCFクラウド MeetUp2 LTIDCFクラウド MeetUp2 LT
IDCFクラウド MeetUp2 LT
 
MaxScaleを触ってみた
MaxScaleを触ってみたMaxScaleを触ってみた
MaxScaleを触ってみた
 
Hbstudy41 slide
Hbstudy41 slideHbstudy41 slide
Hbstudy41 slide
 

Último

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNetToru Tamaki
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものですiPride Co., Ltd.
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...Toru Tamaki
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)Hiroki Ichikura
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A surveyToru Tamaki
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムsugiuralab
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdftaisei2219
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略Ryo Sasaki
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Yuma Ohgami
 

Último (9)

論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet論文紹介:Automated Classification of Model Errors on ImageNet
論文紹介:Automated Classification of Model Errors on ImageNet
 
SOPを理解する 2024/04/19 の勉強会で発表されたものです
SOPを理解する       2024/04/19 の勉強会で発表されたものですSOPを理解する       2024/04/19 の勉強会で発表されたものです
SOPを理解する 2024/04/19 の勉強会で発表されたものです
 
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
論文紹介:Content-Aware Token Sharing for Efficient Semantic Segmentation With Vis...
 
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
【早稲田AI研究会 講義資料】3DスキャンとTextTo3Dのツールを知ろう!(Vol.1)
 
論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey論文紹介:Semantic segmentation using Vision Transformers: A survey
論文紹介:Semantic segmentation using Vision Transformers: A survey
 
スマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システムスマートフォンを用いた新生児あやし動作の教示システム
スマートフォンを用いた新生児あやし動作の教示システム
 
TSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdfTSAL operation mechanism and circuit diagram.pdf
TSAL operation mechanism and circuit diagram.pdf
 
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
[DevOpsDays Tokyo 2024] 〜デジタルとアナログのはざまに〜 スマートビルディング爆速開発を支える 自動化テスト戦略
 
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
Open Source UN-Conference 2024 Kawagoe - 独自OS「DaisyOS GB」の紹介
 

hbstudy37 doc

  • 1. hbstudy#37 x IDCF クラウドハンズオン Chef Server および knife-cloudstack-fog 導入手順書 2012 年 9 月 1 日 初版 @tafujish @anikundesu
  • 2. Chef Server および knife-cloudstack-fog 導入手順書 目次 1. この文書について .................................................................. 3 2. IDCF クラウド上に仮想マシン作成.................................................... 4 1) CloudPortal から Chef Server 用の仮想マシンを作成 ............................... 4 2) SSH 接続するためのネットワーク設定 ............................................. 4 3. Chef Server の構築 ................................................................ 5 1) Chef Server 用 VM(CentOS 6.1)に SSH ログイン .................................... 5 2) Chef Server を導入 ............................................................. 5 4. Chef Workstation(knife-cloudstack-fog 実行環境)の構築 .............................. 7 1) Chef Workstation 操作用ユーザーの作成 .......................................... 7 2) Ruby コンパイル用パッケージ導入 ................................................ 7 3) Chef Workstation 環境の前提ソフトウェア導入 .................................... 7 4) knife-cloudstack-fog の各種設定 ................................................ 8 5. knife-cloudstack-fog から仮想マシン作成........................................... 11 1) knife-cloudstack-fog を使った VM 構築自動化 .................................... 11 6. Template ID、Service Offering ID、VM のインスタンス ID、Zone ID の調べ方 ........... 15 付録)公式の knife-cloudstack-fog をインストール ...................................... 16 2 / 16
  • 3. Chef Server および knife-cloudstack-fog 導入手順書 1. この文書について この文書は、 フロンティアのクラウドサービス セルフタイプ IDC (以下、IDCF クラウド)において、 Chef Server を構築し、knife-cloudstack-fog による VM 作成から Chef Server 管理下に登録するま での手順を説明したものです。 検証は行っておりますが、動作を保証するものではありません。また、本手順書に従って操作をし たことによって不利益、損害等が発生した場合でも、一切保証は致しません。 3 / 16
  • 4. Chef Server および knife-cloudstack-fog 導入手順書 2. IDCF クラウド上に仮想マシン作成 ※IDCF クラウドの操作方法については、エントリーガイド(pp.21-27)を参照してください 1) CloudPortal から Chef Server 用の仮想マシンを作成 https://noahcloud.jp/ へアクセスし、配布したユーザ名/パスワードにてログインします。 以下の設定で仮想マシンを作成します。 テンプレート [LATEST] CentOS 6.1 64-bit VM タイプ M4 ( Hourly ) 2CPU, 4GB RAM ディスク選択 必要ありません 仮想マシン名 任意 グループ名 任意 SSH Keys SSH 鍵生成 ※生成後、秘密鍵をローカルにコピーしてください 2) SSH 接続するためのネットワーク設定 CloudPortal で TCP22 番を開放するようポートフォーワーディングルールとファイアウォールを 設定します。 ※ここでの設定は、仮想マシン作成後(ステータスが Runnning)になった後に実施してください 「リソース」>「ネットワーク」>「ポートフォーワーディング」にて、TCP22 番を転送します。 「リソース」>「ネットワーク」>「ファイアウォール」にて、TCP22 番を開けます。 4 / 16
  • 5. Chef Server および knife-cloudstack-fog 導入手順書 3. Chef Server の構築 1) Chef Server 用 VM(CentOS 6.1)に SSH ログイン ローカルの環境から、作成した仮想マシンに SSH 接続します。 2) Chef Server を導入 以下のコマンドで、RBEL リポジトリを追加後、yum コマンドで Chef サーバをインストールします。 その後、Chef Server のセットアップスクリプトを実行します。 # rpm -Uvh http://rbel.co/rbel6 # yum install rubygem-chef-server # setup-chef-server.sh ここで、chef-server-webui サービスが正常に立ち上がりません。以下のコマンドで、Chef Server のサービスが起動しているか確認します。 # service chef-server status chef-server (pid ####) を実行中... # service chef-server-webui status chef-server-webui が停止していますが PID ファイルが残っています 実行中、という表示なら問題なし。検証時は『chef-server-webui が停止していますが PID ファイ ルが残っています』というエラーが初回は必ず出てしまいます。この時は以下のコマンドを実行し、 プロセス再起動を行います。 # service chef-server-webui restart ここで、CloudPortal の画面から「リソース」>「ネットワーク」>「ポートフォーワーディング」 と「ファイアウォール」にて、TCP/4040 を公開します。 5 / 16
  • 6. Chef Server および knife-cloudstack-fog 導入手順書 次に、Chef-Server の Web 画面にアクセスできるか確認します。 URL およびログイン情報は以下の通りです。 URL http://(4040 番ポートを開放したグローバル IP):4040/ User 名 admin パスワード(初期設定) chef321go ログイン直後、強制的にパスワード変更を求められるので、任意のパスワードに変更します。 6 / 16
  • 7. Chef Server および knife-cloudstack-fog 導入手順書 4. Chef Workstation(knife-cloudstack-fog 実行環境)の構築 1) Chef Workstation 操作用ユーザーの作成 Chef Workstation で操作を行うための一般ユーザーを作成し、パスワード設定と、SSH ログインの ための公開鍵を登録します。 # useradd hoge # passwd hoge (念のためパスワードを設定) # mkdir /home/hoge/.ssh # cp /root/.ssh/authorized_keys /home/hoge/.ssh/ # chown -R hoge:hoge /home/hoge/.ssh 2) Ruby コンパイル用パッケージ導入 次に Ruby をコンパイルするために必要なパッケージをインストールします。また、git も利用する のでインストールします。 # yum install gcc make openssl-devel readline-devel libxslt-devel git 3) Chef Workstation 環境の前提ソフトウェア導入 SSH で先ほど作成したユーザーでログインします。 ・RVM の導入 CentOS6 の OS 標準の Ruby は 1.8.7 ですが、この後使う knife-cloudstack-fog では Ruby 1.9.3 を利 用する必要があります。そのため、Chef Workstation ユーザー専用の Ruby 環境を、RVM を用いて構 築します。 下記コマンドを実行すると、RVM のインストール、および Ruby 1.9.3-p194 がソースコードからコン パイルされ、インストールされます。 # su - hoge $ curl -L https://get.rvm.io | bash -s stable --ruby ※ruby 1.9.3 のコンパイルが行われるため、完了まで 10 分程度かかります。 7 / 16
  • 8. Chef Server および knife-cloudstack-fog 導入手順書 インストール後、.bash_profile に rvm 用設定が追記されたことを確認します。 $ cat ~/.bash_profile (以下の行があることを確認) [[ -s "$HOME/.rvm/scripts/rvm" ]] && source "$HOME/.rvm/scripts/rvm" 確認後、.bash_profile をロードします。その後、rvm コマンド、および ruby –v で Ruby 1.9.3 が 利用されていることを確認します。 $ source ~/.bash_profile $ rvm list rvm rubies =* ruby-1.9.3-p194 [ x86_64 ] $ ruby -v ruby 1.9.3p194 (2012-04-20 revision 35410) [x86_64-linux] 4) knife-cloudstack-fog の各種設定 ruby-gem で knife-cloudstack-fog をインストールします。ただし、公開されている knife-cloudstack-fog では、SSH 鍵認証に関連した機能の不足があるため、機能を追加したバージ ョンを導入します。 (knife-cloudstack-fog のソース入手と gem ファイルのビルド) $ cd ~ $ wget https://github.com/anikundesu/knife-cloudstack-fog/zipball/master -O knife-cloudstack-fog.zip $ unzip -q knife-cloudstack-fog.zip $ cd anikundesu-knife-cloudstack-fog-(コミット番号)/ $ gem build knife-cloudstack-fog.gemspec (gem で Chef と knife-cloudstack-fog のインストール) $ gem install chef --no-ri --no-rdoc $ gem install fog --no-ri --no-rdoc $ gem install --local knife-cloudstack-fog-0.2.15.gem 8 / 16
  • 9. Chef Server および knife-cloudstack-fog 導入手順書 ・knife ツール用の Directory 構造の準備 Knife コマンドを実行するために、ホームディレクトリの下に、chef-repo ディレクトリを作成しま す。さらに knife コマンド実行に必要なファイル群を展開します。その後、knife 設定ファイルを置 く chef-repo/.chef ディレクトリを作成します。 $ cd ~ $ git clone git://github.com/opscode/chef-repo.git $ mkdir -p ~/chef-repo/.chef ・knife 用の環境セットアップ まず、root ユーザーにて Chef Server で Default で作成されている validation ユーザー、および webui ユーザーの秘密鍵をコピーします。 $ su - (以下、root での作業) # cp /etc/chef/validation.pem /etc/chef/webui.pem /home/hoge/chef-repo/.chef/ (validation.pem と webui.pem をコピー) # chown -R hoge:hoge /home/hoge/chef-repo/.chef # exit $ 次に、Chef Server、Workstation の初期設定を行います。 $ knife configure -i WARNING: No knife configuration file found Where should I put the config file? [/home/hoge/.chef/knife.rb] /home/hoge/chef-repo/.chef/knife.rb Please enter the chef server URL: [http://i-???-?????-VM.cs???cloud.internal:4000] Please enter a clientname for the new client: [hoge](chef server で作るユーザー名) Please enter the existing admin clientname: [chef-webui] Please enter the location of the existing admin client's private key: [/etc/chef/webui.pem] /home/hoge/chef-repo/.chef/webui.pem Please enter the validation clientname: [chef-validator] Please enter the location of the validation key: [/etc/chef/validation.pem] /home/hoge/chef-repo/.chef/validation.pem 9 / 16
  • 10. Chef Server および knife-cloudstack-fog 導入手順書 Please enter the path to a chef repository (or leave blank): /home/hoge/chef-repo Creating initial API user... Created client[hoge] Configuration file written to /home/hoge/chef-repo/.chef/knife.rb さらに、knife-cloudstack-fog で利用するための CloudStack API 情報、API エンドポイント URL 情 報を、~/chef-repo/.chef/knife.rb に追記します。 $ vi ~/chef-repo/.chef/knife.rb (以下の行を追加) knife[:cloudstack_access_key_id] = "API キー" knife[:cloudstack_secret_access_key] = "秘密鍵" knife[:cloudstack_api_endpoint] = "https://api.noahcloud.jp/portal/client/api" API キーおよび秘密鍵は、IDCF クラウドのポータル右上の「マイプロファイル」をクリックすると 表示されます。(最新のエンドポイントの情報は FAQ を参照します) ・knife-cloudstack-fog の動作確認 以下のコマンドを実行し、knife-cloudstack-fog が正常に動作していることを確認します。 $ cd ~/chef-repo $ knife cloudstack zone list ID Name Network Type Security Groups? 1 jp-east-t1v Advanced No 10 / 16
  • 11. Chef Server および knife-cloudstack-fog 導入手順書 5. knife-cloudstack-fog から仮想マシン作成 1) knife-cloudstack-fog を使った VM 構築自動化 ・SSH キーペアの準備 これから knife-cloudstack-fog にて新規作成する VM に SSH ログインするためのキーペアを準備し ます。(1)~(3)のいずれかの方法で、キーペアを用意します。 (1) 仮想マシン作成時に作成した SSH 鍵を利用する場合 ローカルに保存した秘密鍵を、仮想マシンへ SCP ファイル転送やテキストコピーで作成します。 (2) CloudStack にて生成させる場合 $ knife cloudstack keypair create -k (Key の名前) -o (生成する秘密鍵ファイル名) $ mv (秘密鍵) ~/chef-repo/.chef/ $ chmod 400 ~/chef-repo/.chef/(秘密鍵) (3)ローカルで生成した SSH キーを登録する場合 $ ssh-keygen –b 2048 (パスフレーズは無しで作成すること) $ knife cloudstack keypair create -k (Key の名前) -p "(公開鍵を 1 行で) " ・キーペアが登録されていることを確認 以下のコマンドで、keypair が CloudStack に登録されていることを確認します。 $ knife cloudstack keypair list Name Fingerprint Private Key (Key の名前) 37:7f:d8:8d:ee:13:06:42:12:48:47:ff:eb:e0:05:15 11 / 16
  • 12. Chef Server および knife-cloudstack-fog 導入手順書 ・bootstrap スクリプトの作成 VM 作成後、Chef Client として動作するための一連の設定を行うスクリプト(bootstrap)を準備し ます。拡張後の knife-cloudstack-fog の中に、CentOS 6 用の bootstrap があるのでコピーします。 $ cd ~/chef-repo/.chef $ mkdir bootstrap $ cd bootstrap $ cp ~/anikundesu-knife-cloudstack-fog-fbdcfea/erb/centos6.erb ./ ・cookbook の入手と Chef Server へのアップロード 下記サイトに Chef のコミュニティにより作成された Cookbook のリストがあるので、好きなものを 選んで導入することができます。 http://community.opscode.com/cookbooks Cookbook のアップロードをするために、~/chef-repo ディレクトリで以下を実行します。 $ knife cookbook site install (cookbook 名) $ knife cookbook upload (cookbook 名) ここでは、例として getting-started、apache2 という 2 つの cookbook をアップロードします。 $ cd ~/chef-repo $ git init $ knife cookbook site install getting-started $ knife cookbook site install apache2 $ knife cookbook upload -a ※site install にてローカルにダウンロードした cookbook すべてをアップロード アップロード後、Chef Server の Web UI の「Cookbooks」タブに、upload した cookbook が表示され ることを確認します。 12 / 16
  • 13. Chef Server および knife-cloudstack-fog 導入手順書 ・VM の作成 knife-cloudstack-fog は knife コマンドに”cloudstack”から始まるサブコマンドを渡すことで実 行できます。 利用可能なサブコマンド一覧、および各コマンドに渡す引数は以下のように調べることができます。 利用可能サブコマンド一覧 $ knife cloudstack knife cloudstack FATAL: Cannot find sub command for: 'cloudstack' Available cloudstack subcommands: (for details, knife SUB-COMMAND --help) ** CLOUDSTACK COMMANDS ** knife cloudstack template list (options) knife cloudstack volume list (options) knife cloudstack securitygroup list (options) knife cloudstack server list (options) knife cloudstack keypair list (options) knife cloudstack keypair create (options) knife cloudstack server delete INSTANCE_ID [INSTANCE_ID] (options) knife cloudstack server stop INSTANCE_ID [INSTANCE_ID] (options) knife cloudstack server create (options) knife cloudstack zone list (options) knife cloudstack diskofferings list (options) knife cloudstack networks list (options) knife cloudstack serviceoffering list (options) 13 / 16
  • 14. Chef Server および knife-cloudstack-fog 導入手順書 server create サブコマンドのオプション(--help) $ knife cloudstack server create --help knife cloudstack server create (options) --server-url URL Chef Server URL --key KEY API Client Key ~略~ 仮想マシンを作成する際には、以下のような引数を渡すことで、VM 作成と、Chef Server 管理下へ の追加、および Cookbook に含まれる Recipe を実行してくれます。 $ knife cloudstack server create -s (service offering ID) -t (template ID) -z (zone ID) -d (bootstrap script) -i (SSH Private key of keypair) -k (CloudStack keypair name) -N (displayname on Chef Server/CloudStack UI) -r '[RECIPE1]', '[RECIPE2]',・・・ 以下は、IDCF クラウド上で CentOS 6.1 64bit の仮想マシンを作り、getting-started と apache2 の Recipe を実行します。また、Service Offering として『S2』を指定しています。 (CentOS 6.1 64bit で VM を作る場合) $ cd ~/chef-repo $ knife cloudstack server create -s 30 -t 1021 -z 1 -d centos6 -i ~/chef-repo/.chef/srv2clt.pem -k srv2clt -N ChefClient3 -r 'recipe[getting-started]','recipe[apache2]' ・cookbook が実行されていることの確認 SSH で作成した client にログインします。 Root のホームディレクトリに chef-getting-started.txt があることを確認し、内容も確認。 [Workstation]$ ssh –i ~/chef-repo/.chef/(秘密鍵) root@(作成した仮想マシンの IP) [Chef Client]$ ls ~/ [Chef Client]$ cat chef-getting-started.txt 14 / 16
  • 15. Chef Server および knife-cloudstack-fog 導入手順書 Chef Server の Web UI の「Nodes」タブに、作成した仮想マシン(Node)が表示されることを確認し ます。 6. Template ID、Service Offering ID、 のインスタンス ID、 VM Zone ID の調べ方 いずれも knife cloudstack のサブコマンドで調べることができます。 $ knife cloudstack template list (テンプレート一覧) $ knife cloudstack serviceoffering list (サービスオファリング一覧) $ knife cloudstack server list (作成したサーバ一覧) $ knife cloudstack zone list (ゾーン一覧) 参考 LINK knife-cloudstack-fog 公式 http://rubygems.org/gems/knife-cloudstack-fog IDCF クラウド対応 knife-cloudstack-fog 作成者 anikundesu https://github.com/anikundesu/ 15 / 16
  • 16. Chef Server および knife-cloudstack-fog 導入手順書 付録)公式の knife-cloudstack-fog をインストール 公式の knife-cloudstack-fog をインストールするには、現在インストールされている knife-cloudstack-fog をアンインストールした後、gem インストールします。 $ gem uninstall knife-cloudstack-fog Successfully uninstalled knife-cloudstack-fog-0.2.15 $ gem install knife-cloudstack-fog Fetching: knife-cloudstack-fog-0.2.15.gem (100%) Successfully installed knife-cloudstack-fog-0.2.15 1 gem installed Installing ri documentation for knife-cloudstack-fog-0.2.15... Installing RDoc documentation for knife-cloudstack-fog-0.2.15... 16 / 16