めんどうくさくないWardenハンズオン

  • 1,102 views
Uploaded on

Cloud FoundryのコンテナコンポーネントであるWardenのインストール方法から使い方までを簡単に紹介します。

Cloud FoundryのコンテナコンポーネントであるWardenのインストール方法から使い方までを簡単に紹介します。

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
1,102
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
17
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. めんどうくさくないWardenハンズオン岩嵜 雄大NTT Software Innovation Center2012-12-12
  • 2. はじめに 情報は全て資料作成当時のものです – 更新が頻繁なため情報がすぐに古くなります – 必ず最新のソースコードを確認してください Wardenの基本はこちら – http://www.slideshare.net/i_yudai/warden – (情報が少し古くなっています) 2
  • 3. Wardenを使ってみよう Wardenは単体でも使用できる お手軽コンテナとして便利 – アプリ単位で気軽に隔離環境を作れる
  • 4. Ubuntu環境を用意 Ubuntu 12.04 Server 64bit – 実験だけならメモリは2GB程度で十分 – openssh-server は入れておく – Generic以外のflavorは避けるのが無難? • virtualだとカーネルモジュールの準備が面倒 CentOS派の方は – KVMの上にUbuntuを入れましょう
  • 5. パッケージをインストール# 基本的なツールsudo aptitude install -y git ruby1.9.3# Wardenが使うパッケージsudo aptitude install –y build-essentialsudo aptitude install –y debootstrapsudo aptitude install –y quota iptables# Wardenが使うGemsudo gem install bundle
  • 6. リポジトリをクローン# GitHubからクローンしてgit clone https://github.com/cloudfoundry/warden.git# ディレクトリに入るcd warden/warden
  • 7. Wardenをセットアップ  debootstrapが走るので結構時間がかかります – コンテナの土台となる環境を構成するためbundle exec rake "setup[config/linux.yml]"
  • 8. Wardenサーバを起動 動きましたね!sudo bundle exec rake "warden:start[config/linux.yml]"
  • 9. Wardenサーバとのインタラクション# READMEを信じてはいけないbundle exec bin/warden-replsudo bundle exec bin/wardenwarden> createhandle : 16g5e9e3r9jwarden> run --handle 16g5e9e3r9j --script "ps aux"USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDroot 1 0.0 0.0 12744 412 ? S+ 09:17 0:00 wshd: 16g5e9e3r9jvcap 15 0.0 0.0 17704 1188 ? Ss 09:19 0:00 /bin/bashvcap 16 0.0 0.0 15036 1084 ? R 09:19 0:00 ps aux
  • 10. bin/warden v.s. bin/warden-repl bin/wardenはRepl v.2 – こちらが新しい – コードが綺麗 – non-interactiveでの使用も可能 bin/warden-replは Repl v.1 – README.mdの情報は古い
  • 11. Repl v.2 コンテナとの通信にWSHを使用 – SSHの使用は無くなった – WSHDのソケットを使用して通信 WSHD – clone.cの生まれ変わり – execvp(/sbin/init)しなくなった • WSHD自体がPID1で常駐するため,無駄なプロ セスが生成されなくなった
  • 12. Tips  設定は config/linux.yml – デフォルトだとファイルが/tmpに生成さ れるので変えておくと安心  コマンドの引数が array の場合は以 下のように指定するwarden> create --bind_mounts[0].src_path /home/yudai/app --bind_mounts[0].dst_path /app --bind_mounts[0].mode RW