OpsAny离线部署v2.0.0¶
注意:离线部署是建立在成功在线部署的基础上的,如果你从来没有在线部署成功过,那请先保证在线部署成功。离线部署本质上是把在线部署需要的软件包,提前下载保存。
OpsAny的安装对于操作系统的依赖主要有以下几种情况:
- 需要安装Docker、Git、MySQl、jq等软件包,所以首先需要解决这些包的安装。
- 会安装几个Python3的模块,用于脚本初始化的时候调用,也需要安装在操作系统上。
- 整个OpsAny都运行在Docker容器中,而且每次发布的更新包中都包含了依赖,原则上不需要联网。
以CentOS为例,如何进行离线安装,需要先在线安装完毕OpsAny。将所有需要的包准备好,即可进行离线安装。
离线环境软件包准备¶
请准备好一台和未来离线安装版本相同的操作系统,请参考在线安装的准备手册。关闭主机的Selinux和firewalld。
在线安装好OpsAny¶
-
打开yum缓存。
[root@linux-node1 ~]# vim /etc/yum.conf [main] cachedir=/var/cache/yum/$basearch/$releasever keepcache=1
-
请根据在线安装手册,安装好OpsAny。(略)
导出安装包¶
1.导出RPM包,需要注意当前准备环境的操作系统需要和离线安装的主机保持一致,不然可能造成无法使用。
[root@linux-node1 ~]# mkdir CentOS-7.9.2009
[root@linux-node1 ~]# find /var/cache/yum/x86_64/7/ -name "*.rpm" -exec mv {} CentOS-7.9.2009/ \;
[root@linux-node1 ~]# tar czf CentOS-7.9.2009.tar.gz CentOS-7.9.2009/
2.导出镜像,当前为1.6.6版本的所有镜像版本。
请手工导出镜像,镜像版本根据实际的版本号进行调整。下方所列的镜像版本需要进行更新后执行。
# 共18个镜像,保存完毕后请进行核对。
mkdir OpsAny-2.0.0 && cd OpsAny-2.0.0
docker save -o opsany-heartbeat.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-heartbeat:7.13.2
docker save -o opsany-proxy.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-paas-proxy:2.0.0
docker save -o opsany-grafana.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-grafana:9.0.2
docker save -o opsany-paas-websocket.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-paas-websocket:2.0.0
docker save -o opsany-paas-paasagent.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-paas-paasagent:v3.2.7
docker save -o opsany-paas-appengine.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-paas-appengine:v3.2.6
docker save -o opsany-paas-login.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-paas-login:v3.2.19
docker save -o opsany-paas-esb.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-paas-esb:v3.2.7
docker save -o opsany-paas-paas.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-paas-paas:v3.2.7
docker save -o elasticsearch.tar registry.cn-beijing.aliyuncs.com/opsany/elasticsearch:7.16.3
docker save -o rabbitmq.tar registry.cn-beijing.aliyuncs.com/opsany/rabbitmq:3.8.9-management-alpine
docker save -o mysql.tar registry.cn-beijing.aliyuncs.com/opsany/mysql:5.6.50
docker save -o zabbix-web-nginx-mysql.tar registry.cn-beijing.aliyuncs.com/opsany/zabbix-web-nginx-mysql:alpine-5.0-latest
docker save -o zabbix-server-mysql.tar registry.cn-beijing.aliyuncs.com/opsany/zabbix-server-mysql:alpine-5.0-st2
docker save -o redis.tar registry.cn-beijing.aliyuncs.com/opsany/redis:6.0.9-alpine
docker save -o mongo.tar registry.cn-beijing.aliyuncs.com/opsany/mongo:5.0.3
docker save -o openresty.tar registry.cn-beijing.aliyuncs.com/opsany/openresty:1.17.8.2-alpine
docker save -o guacd.tar registry.cn-beijing.aliyuncs.com/opsany/guacd:1.5.0
docker save -o rbac.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-rbac:2.0.0
docker save -o workbench.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-workbench:2.0.0
docker save -o cmdb.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-cmdb:2.0.0
docker save -o control.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-control:2.0.0
docker save -o job.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-job:2.0.0
docker save -o monitor.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-monitor:2.0.0
docker save -o cmp.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-cmp:2.0.0
docker save -o bastion.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-bastion:2.0.0
docker save -o devops.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-devops:2.0.0
docker save -o dashboard.tar registry.cn-beijing.aliyuncs.com/opsany/opsany-saas-ce-dashboard:2.0.0
3.离线下载Python依赖包,这些Python包是在线安装的时候,进行初始化的时候使用,所以也需要为离线环境准备好。
mkdir Python-Package && cd Python-Package
pip3 download requests==2.25.1 grafana-api==1.0.3 mysql-connector==2.2.9 SQLAlchemy==1.4.22 bcrypt==3.2.2 -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com
4.离线准备opsany-paas软件包
[root@linux-node1 ~]# cd /opt && git clone https://gitee.com/unixhot/opsany-paas.git
[root@linux-node1 opt]# rm -rf /opt/opsany-paas/.git
5.根据OpsAny的下载通知邮件,或者证书。
截止到这里,离线环境所需的软件包,全部准备完毕,可以全部进行压缩,然后准备一个U盘,把离线环境所有内容都复制进去。
开始离线安装¶
1.离线安装依赖包和Docker
复制对应的操作系统镜像到系统中并解压:
[root@linux-node1 opsany-local]# tar zxf CentOS-7.9.2009-rpm.tar.gz
[root@linux-node1 opsany-local]# cd CentOS-7.9.2009-rpm
[root@linux-node1 CentOS-7.9.2009-rpm]# yum install *.rpm
[root@linux-node1 CentOS-7.9.2009-rpm]# systemctl enable --now docker
2.导入所有Docker镜像
[root@linux-node1 ~]# tar zxf opsany-images.tar.gz
[root@linux-node1 ~]# cd opsany-images
[root@linux-node1 opsany-images]# for i in `ls`;do docker load -i $i;done
3.安装Python依赖包
[root@linux-node1 ~]# tar zxf python-pip.tar.gz
[root@linux-node1 ~]# cd python-pip
[root@linux-node1 python-pip]# pip3 install *
4.部署PaaS
在部署PaaS的时候,就需要依赖之前离线安装的例如MySQL等客户端的软件包,如果失败,PaaS安装也会失败。
[root@linux-node1 opsany-local]# tar zxf opsany-paas.tar.gz
[root@linux-node1 opsany-local]# cd opsany-paas/install/
[root@linux-node1 install]# cp install.config.example install.config
[root@linux-node1 install]# vim install.config
# 安装OpsAny的本机内网IP地址。请批量查找替换将192.168.56.11修改为部署OpsAny的本机IP地址。
LOCAL_IP="192.168.56.11"
# 访问OpsAny的域名,如果是在内网访问请修改为和LOCAL_IP一样,如果是外网访问,请修改为真实访问的域名或者公网IP。
安装后暂不支持修改,此配置会作为Cookie的作用域的域名,所以如果配置的和访问的不同,会导致无法通过验证。官方文档中有修改域名的办法。
DOMAIN_NAME="192.168.56.11"
[root@linux-node1 install]# ./paas-install.sh install
5.部署SaaS
在部署SaaS的时候,就需要通过Python脚本进行初始化,需要依赖之前离线安装的Python模块,如果初始化失败,SaaS安装也会失败。
[root@linux-node1 install]# ./saas-ce-install.sh base
6.解压并部署opsany-agent,将agent目录放置在uploads下面,提供下载。
# 安装Agent文件
cd /opt/opsany/uploads/
wget https://opsany-saas.oss-cn-beijing.aliyuncs.com/opsany-agent-1.6.0.tar.gz
tar zxf opsany-agent-1.6.0.tar.gz
# 安装内置文档
cd /opt/opsany/uploads/
wget https://opsany-saas.oss-cn-beijing.aliyuncs.com/opsany-docs-ce-1.6.6.tar.gz
tar zxf opsany-docs-ce-1.6.6.tar.gz
7.安装完毕之后,访问平台,访问会提示设置License,请填写邮件中的授权人和授权密钥即可,社区版授权为99年,无任何管理数量限制,可以放心使用。
- 用户名:admin
- 密码: 安装完毕之后自动修改并且输出。同时保存在$INSTALL_PATH/conf/.passwd_env文件中
8.现在就可以正式使用OpsAny了,有任何问题,可以在交流群提问。对了,如果要纳管外网主机别忘了开通防火墙80、443、4505、4506、8011、8012。