当前位置: 首页 > 工具软件 > ControlTier > 使用案例 >

持续集成之自动部署-controlTier

东方飞捷
2023-12-01

一、 安装

首先下载ControlTier 3.6Zip安装包,网址http://sourceforge.net/projects/controltier/files/Installer/3.6.0/ControlTier-3.6.0.zip/download

ControlTier安装分2种,Server端安装和client端安装。Server端是ControlTier服务器所在机器。Client是需要执行自动化部署任务的机器。

1Server端安装

1.1 设置ControlTier的根目录环境变量CTIER_ROOT,以及创建根目录下pkgs文件夹。

$ export CTIER_ROOT=~/ctier

$ mkdir -p $CTIER_ROOT/pkgs

1.2 将安装包放入$CTIER_ROOT/pkgs后然后解压。

$ cd $CTIER_ROOT/pkgs

$ unzip ControlTier-3.6.0.zip

1.3设置JAVA_HOME环境变量。(如果已有,可忽略)

$ export JAVA_HOME=/opt/j2sdk1.5.0_15

1.4执行安装脚本

$ cd $CTIER_ROOT/pkgs/ControlTier-3.6.0

$ sh install.sh

1.5安装结束后。修改.bashrc。使用户登录后ControlTier环境变量立即生效执行。

$ vi ~/.bashrc

          if [ -f ~/.ctierrc ]; then

          . ~/.ctierrc

          else

          echo ~/.ctierrc not found 1>&2

          fi

放入~/.bashrc文件末尾。(如果没有设置JAVA_HOME,也可将JAVA_HOME置于此)。

然后立即执行,使环境变量生效。

$ . ~/.bashrc

1.6修改ssh超时,设为0。表示不设置ssh超时时间。

$ vi  $CTIER_ROOT/ctl/etc/framework.properties

找到framework.ssh.timeout,设置值改为0。

1.7 运行ControlTier服务器。

$ jetty.sh start

1.8 检验安装

$ ctl --help

1.9 修改服务器允许的每个进程最大打开文件数目。

编辑/etc/security/limits.conf 文件,追加以下2行。

*  soft  nofile  65535 
*  hard  nofile  65535

解决的问题:linux默认允许每个用户每个进程打开1024个文件(使用ulimit –a查看当前用户允许打开的文件数量)。随着在ControlTier中包以及服务的数量的增大,每次浏览都可能会同时打开超过默认的数量的文件(使用lsof -p 12 | wc -l 查看当前打开的文件数量,12表示当前java的进程id使用ps -ef |grep java 查看java进程id),造成工作台页面异常出错。

2. Client端安装

设置环境变量,解压与Server安装1.1, 1.2, 1.3相同。

2.1 修改/etc/hosts文件

$ vi /etc/hosts

增加ControlTier Serverhost。例如,serverhostnamehc-62, ip192.168.20.62。增加192.168.20.62 hc-62hosts文件。

2.2 Client执行安装脚本

$ cd $CTIER_ROOT/pkgs/ControlTier-3.6.0

$ sh install.sh  --client -Dserver.hostname=<server host>  -Dclient.hostname=<hostname> -Dclient.node.name=<name>

2.3 设置环境变量,于Server安装1.5相同。

2.4检验安装

$ ctl --help

Ssh配置

由于ControlTierServer端通过ssh调用Client的脚本执行部署任务。SSH不能使用密码,因此需要配置public keyControlTier默认使用DSA

ControlTierServer端执行

$ ssh-keygen -t dsa

当有提示时,全部回车。密码为空。产生~/.ssh/id_dsa.pub文件。

ControlTierClient

$ ssh-keygen -t dsa

当有提示时,全部回车。密码为空。

将ControlTier Server端产生的~/.ssh/id_dsa.pub文件复制到Client端的~/.ssh/authorized_keys文件。

设置authorized_keys权限

$ chmod 600 authorized_keys 

设置.ssh目录权限

$ chmod 700 .ssh


 类似资料: