• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
めんどうくさくないWardenハンズオン
 

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

on

  • 1,401 views

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

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

Statistics

Views

Total Views
1,401
Views on SlideShare
1,380
Embed Views
21

Actions

Likes
0
Downloads
15
Comments
0

2 Embeds 21

https://twitter.com 20
http://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

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

    • めんどうくさくないWardenハンズオン岩嵜 雄大NTT Software Innovation Center2012-12-12
    • はじめに 情報は全て資料作成当時のものです – 更新が頻繁なため情報がすぐに古くなります – 必ず最新のソースコードを確認してください Wardenの基本はこちら – http://www.slideshare.net/i_yudai/warden – (情報が少し古くなっています) 2
    • Wardenを使ってみよう Wardenは単体でも使用できる お手軽コンテナとして便利 – アプリ単位で気軽に隔離環境を作れる
    • Ubuntu環境を用意 Ubuntu 12.04 Server 64bit – 実験だけならメモリは2GB程度で十分 – openssh-server は入れておく – Generic以外のflavorは避けるのが無難? • virtualだとカーネルモジュールの準備が面倒 CentOS派の方は – KVMの上にUbuntuを入れましょう
    • パッケージをインストール# 基本的なツール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
    • リポジトリをクローン# GitHubからクローンしてgit clone https://github.com/cloudfoundry/warden.git# ディレクトリに入るcd warden/warden
    • Wardenをセットアップ  debootstrapが走るので結構時間がかかります – コンテナの土台となる環境を構成するためbundle exec rake "setup[config/linux.yml]"
    • Wardenサーバを起動 動きましたね!sudo bundle exec rake "warden:start[config/linux.yml]"
    • 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
    • bin/warden v.s. bin/warden-repl bin/wardenはRepl v.2 – こちらが新しい – コードが綺麗 – non-interactiveでの使用も可能 bin/warden-replは Repl v.1 – README.mdの情報は古い
    • Repl v.2 コンテナとの通信にWSHを使用 – SSHの使用は無くなった – WSHDのソケットを使用して通信 WSHD – clone.cの生まれ変わり – execvp(/sbin/init)しなくなった • WSHD自体がPID1で常駐するため,無駄なプロ セスが生成されなくなった
    • 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