cloudfoundry warden安装和配置

cloudfoundry warden安装和配置
 
warden安装
 
apt-get install -y linux-image
apt-get install -y build-essential debootstrap
apt-get install -y cgroup-bin

gem install bundle
gem sources -a http://ruby.taobao.org/
gem sources --remove http://rubygems.org/
gem install gem-fast

cd  warden/warden
bundle
bundle exec rake setup[config/linux.yml]

在上述配置过程中,rake setup会通过下面的命令在/tmp/warden/rootfs/目录下安装一个基本系统,并作一些简单配置(具体的脚本为root/linux/base/setup.sh)
 
packages="openssh-server,rsync"
suite="precise"
mirror=$(grep "^deb" /etc/apt/sources.list | head -n1 | cut -d" " -f2)
target="/tmp/warden/rootfs/"
$(which debootstrap) --verbose --include $packages $suite $target $mirror
 
 
配置容器的默认密码
 
chroot /tmp/warden/rootfs/
passwd设置密码
新建vcap用户并设置密码
 
     这两个密码会在create容器的时候用到,也可以用于登陆容器
 
{"timestamp":1348730196.9785028,"message":"Wrote bind mount commands","log_level":"debug2","source":"Warden::Container::Linux","data":{"handle":"16al6hojp15"},"thread_id":19912820,"fiber_id":26904200,"process_id":12879,"file":"/usr/src/warden/warden/lib/warden/container/linux.rb","lineno":81,"method":"do_create"}
{"timestamp":1348730196.9787943,"message":"Wrote /etc/security/limits.conf","log_level":"debug2","source":"Warden::Container::Linux","data":{"handle":"16al6hojp15"},"thread_id":19912820,"fiber_id":26904200,"process_id":12879,"file":"/usr/src/warden/warden/lib/warden/container/linux.rb","lineno":84,"method":"do_create"}
root@10.254.0.18's password:     [此处输入密码]
vcap@10.254.0.18's password:     [此处输入密码]
 
启动warden:

    bundle exec rake warden:start[config/linux.yml]

与Warden交互:

    bundle exec bin/warden-repl
     键入create后就可以创建一个容器了
 
在创建容器时候可以传入一个grace_time参数,如果不传的话,默认5分钟没有客户连接容器就会自动删除:

If specified, this setting overrides the default time of a container not
being referenced by any client until it is destroyed. The value can
either be the number of seconds as floating point number or integer, or
the `null` value to completely disable the grace time.
原文地址:https://www.cnblogs.com/feisky/p/2706114.html