在Vagrant部署多个dea节点
下面开始验证router,确实可以做到负载均衡,就是将一个应用的两个不同的实例,分别部署到2个dea节点上。首先,一个dea对应于一个warden容器?。**上层DEA通过warden client来调用warden server提供的api创建并控制container,container可以添加诸多限制,且container之间互相隔离**dea启动时,会向router去注册
·
下面开始验证router,确实可以做到负载均衡,就是将一个应用的两个不同的实例,分别部署到2个dea节点上。
首先,一个dea对应于一个warden容器?。
**上层DEA通过warden client来调用warden server提供的api创建并控制container,container可以添加诸多限制,且container之间互相隔离**
dea启动时,会向router去注册自己。
每个dea都对应于一个单独的warden-server
直接先部署第二个warden容器。
warden.yml中的health_check_server???端口号设置的是2345?改?
看一下源码:在server.rb中,是启动了一个监听本地的端口的HealthCheck进程,EM.start
修改pool_start_address,depot_path,rootfs_path
在lib/warden/config.rb中,默认unix_domain_path是/tmp/warden.sock改?
这个在配置文件中无法修改。所以改源码?因为dea的配置文件中,也需要指明该参数。
在lib/warden/repl/repl_v2.rb中,也有提到"/tmp/warden.sock"
应该是要在config.yml文件中动态指定的参数。
如果要改,就一起改。
还有一个pool_network,这里默认是10.254.0.0/24,我还不清楚用途。
sudo bundle exec rake setup[config/linux.yml]
成功setup后,启动warden-server,
sudo bundle exec rake warden:start[config/linux.yml]
通过warden-client,进行一些简单的验证:应该没什么问题。
----------
dea的配置文件中,会指明自己的ip,pid_filename, indexx ?,这里的index是dea作为一个Component,调用VCAP::Component.register时用到的,姑且+1。
相应的warden ** socket**。改为/tmp/warden2.sock
配置direcotry server时,同样将端口号,都+1
v1_port,v2_port,file_api_port(目录 验证服务器).
file_server调用sepc/bin/file_server.rb
部署目录设置的是/tmp/dea,且端口开在9999。要改?
warden启动成功后,启动dea,file-server,directory-server。
第二个dea在运行:caught exception:script exited with status 127
staging_task.rb: 124行,promise_unpack_app,
原因是warden容器unzip:command not found.
进入rootfs
cd /var/warden/rootfs2,
sudo chroot .
apt-get update
apt-get install gcc这个装了。
apt-get install zip果然没装
apt-get install quota同样没装
至于ruby和jvm嘛。。。还是要手动安装
如果下载比较慢的话,直接通过文件拷贝的形式将ruby包,拷贝到/var/warden/rootfs中
ruby安装成功后,再次尝试部署,成功!
router确实是做了负载均衡。
更多推荐
已为社区贡献2条内容
所有评论(0)