1,安装前准备工作 安装前最少准备3台主机 2,关闭 SELinux # 通过命令临时禁用 SELinux setenforce 0 # 或者修改配置文件 sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config 3,关闭默认防火墙(firewalld) 停止并禁用 firewalld systemctl stop firewalld systemctl disable firewalld 4,安装 rsync 命令 安装脚本依赖 rsync 分发同步文件。 # 安装 rsync yum -y install rsync 5,停止并禁用 NetWorkManager systemctl stop NetworkManager systemctl disable NetworkManager 6,调整最大文件打开数 如果为默认的 1024,建议通过修改配置文件调整为 102400 或更大。 注意: limits.conf 初始文件的备份。 cat << EOF >> /etc/security/limits.conf root soft nofile 102400 root hard nofile 102400 EOF 7,确认服务器时间同步 服务器后台时间不同步会对时间敏感的服务带来不可预见的后果。务必在安装和使用蓝鲸时保证时间同步。 # 检查每台机器当前时间和时区是否一致,若相互之间差别大于3s(考虑批量执行时的时差),建议校时。 date -R # 查看和ntp server的时间差异(需要外网访问,如果内网有ntpd服务器,自行替换域名为该服务的地址) ntpdate -d cn.pool.ntp.org 如果输出的最后一行 offset 大于 1s 建议校时。 # 和 ntp 服务器同步时间 ntpdate cn.pool.ntp.org 8,检查是否存在全局 HTTP 代理 蓝鲸服务器之间会有的 HTTP 请求,如果存在 HTTP 代理,且未能正确代理这些请求,会发生不可预见的错误。 # 检查 http_proxy https_proxy 变量是否设置,若为空可以跳过后面的操作。 echo "$http_proxy" "$https_proxy" 9,选择任意一台机器作为蓝鲸的运维中控机。之后的安装命令执行,如果没有特别说明,均在这台中控机上执行。 将下载的蓝鲸社区版完整包上传到中控机,并解压到 同级 目录下。以解压到 /data 目录为例: mkdir /data tar xf bkce_src-5.1.26.tar.gz -C /data 10,检查resolv.conf是否有修改权限 检查 /etc/resolv.conf 是否被加密无法修改(即便是 root),执行如下命令,检查是否有“i”加密字样: lsattr /etc/resolv.conf ----i--------e-- /etc/resolv.conf 如果有则执行命令,临时解密处理,执行如下命令: chattr -i /etc/resolv.conf 11,将 install.config.3IP.sample 复制为 install.config [root@centos7 install]# cat /data/install/install.config [bkce-basic] 192.168.0.11 nginx,rabbitmq,kafka(config),zk(config),es,appt,fta,consul,bkdata(databus) 192.168.0.12 mongodb,appo,kafka(config),zk(config),es,mysql,consul,bkdata(dataapi),beanstalk 192.168.0.13 paas,cmdb,job,gse,license,kafka(config),zk(config),es,redis,influxdb,consul,bkdata(monitor) [root@centos7 install]# globals.env #配置文件中提供了访问蓝鲸三大平台的域名配置,需要提前准备好。 export BK_DOMAIN="bk.com" # 蓝鲸根域名(不含主机名) export PAAS_FQDN="paas.$BK_DOMAIN" # PAAS 完整域名 export CMDB_FQDN="cmdb.$BK_DOMAIN" # CMDB 完整域名 export JOB_FQDN="job.$BK_DOMAIN" # JOB 完整域名 pip.conf 在线安装时,依赖 pip,需要配置可用的 pip 源。 vim /data/src/.pip/pip.conf [global] index-url = https://mirrors.cloud.tencent.com/pypi/simple trusted-host = mirrors.cloud.tencent.com 12,获取证书 12-1,通过 ifconfig 或者 ip addr 命令获取 install.config 文件中,license 和 gse 模块所在服务器的第一个内网网卡的 MAC 地址。如果分别属于两台服务器,那么两个的 MAC 地址以英文;分隔。 12-2,在官网 证书生成页面 根据输入框提示填入 MAC 地址,生成并下载证书。 12-3,上传证书到中控机,并解压到 src/cert 目录下。 tar xf ssl_certificates.tar.gz -C /data/src/cert/ 13,配置 SSH 免密登陆 登录到中控机,执行以下操作: cd /data/install bash configure_ssh_without_pass # 根据提示输入各主机的 root 密码完成免密登陆配置 14,安装前校验环境是否满足 cd /data/install bash precheck.sh 正常输出如下图所示: start <<check_ssh_nopass>> ... [OK] start <<check_password>> ... [OK] start <<check_cert_mac>> ... [OK] start <<check_get_lan_ip>> ... [OK] start <<check_install_config>> ... [OK] start <<check_selinux>> ... [OK] start <<check_umask>> ... [OK] start <<check_rabbitmq_version>> ... [OK] start <<check_http_proxy>> ... [OK] start <<check_open_files_limit>> ... [OK] start <<check_domain>> ... [OK] start <<check_rsync>> ... [OK] start <<check_service_dir>> ... [OK] start <<check_networkmanager>> ... [OK] start <<check_firewalld>> ... [OK] 如果发现有 [FAIL] 的报错,按照错误提示和本文档修复。修复后,可继续跑 precheck.sh 脚本,直到不再出现 [FAIL]。 如果需要从头开始检查,请使用 precheck.sh -r 参数。 测试发现有报错如下: [root@centos7 install]# bash precheck.sh -r start <<check_ssh_nopass>> ... [OK] start <<check_password>> ... [OK] start <<check_cert_mac>> ... [OK] start <<check_get_lan_ip>> ... [OK] start <<check_install_config>> ... [OK] start <<check_selinux>> ... [OK] start <<check_umask>> ... [OK] start <<check_rabbitmq_version>> ... Error: No matching Packages to list [FAILED] rabbitmq-server version below 3.0 [root@centos7 install]# 解决方式: [root@centos7 install]# find / -name 'rabbit*' /etc/selinux/targeted/active/modules/100/rabbitmq /data/src/service/rabbitmq-server-3.7.0-1.el6.noarch.rpm /data/src/service/rabbitmq-server-3.7.0-1.el7.noarch.rpm /data/src/bkdata/monitor/packages/monitor/components/prometheus/rabbitmq /data/src/open_paas/paas/static/img/resource/rabbitmq.png [root@centos7 install]# yum 安装rabbitMQ 下载rpm仓库:wget http://packages.erlang-solutions.com/erlang-solutions-1.0-1.noarch.rpm && yum install -y epel-release 安装rpm仓库 rpm -Uvh erlang-solutions-1.0-1.noarch.rpm 安装erlang yum -y install erlang yum -y install /data/src/service/rabbitmq-server-3.7.0-1.el6.noarch.rpm 报错解决完成: 验证: [root@centos7 install]# bash precheck.sh -r start <<check_ssh_nopass>> ... [OK] start <<check_password>> ... [OK] start <<check_cert_mac>> ... [OK] start <<check_get_lan_ip>> ... [OK] start <<check_install_config>> ... [OK] start <<check_selinux>> ... [OK] start <<check_umask>> ... [OK] start <<check_rabbitmq_version>> ... [OK] start <<check_http_proxy>> ... [OK] start <<check_open_files_limit>> ... [OK] start <<check_domain>> ... [OK] start <<check_rsync>> ... [OK] start <<check_service_dir>> ... [OK] start <<check_networkmanager>> ... [OK] start <<check_firewalld>> ... [OK] [root@centos7 install]# 15,标准部署 确保已完成 环境准备 操作。 cd /data/install # 安装 PaaS 平台及其依赖服务,该步骤完成后,可以打开 PaaS 平台。 ./bk_install paas # 安装配置平台及其依赖服务,该步骤完成后,可以打开配置平台,看到蓝鲸业务及示例业务。 ./bk_install cmdb # 该步骤完成后,可以打开作业平台,并执行作业。同时在配置平台中可以看到蓝鲸的模块下加入了主机。 # 安装作业平台及其依赖组件,并在安装蓝鲸的服务器上装好 gse_agent 供验证。 ./bk_install job # 部署正式环境及测试环境 # 该步骤完成后可以在开发者中心的服务器信息和第三方服务信息中看到已经成功激活的服务器 # 同时也可以进行 SaaS 应用(除蓝鲸监控和日志检索)的上传部署 ./bk_install app_mgr # 安装蓝鲸数据平台基础模块及其依赖服务。安装该模块后,可以开始安装使用 SaaS 应用: 蓝鲸监控和日志检索 ./bk_install bkdata # 安装故障自愈的后台模块及依赖其服务 # 安装该模块后,可以开始安装使用 SaaS 应用: 故障自愈 ./bk_install fta # 重装 gse_agent 并注册正确的集群模块到配置平台 # 执行完该操作后,可以在配置平台中看到主机按照 install.config 中的配置分布到对应拓扑下 ./bk_install gse_agent #部署官方 SaaS 到正式环境(通过命令行从 /data/src/official_saas/ 目录自动部署 SaaS ) # 执行完该操作后,可以在蓝鲸工作台看到并使用所有官方 SaaS ./bkcec install saas-o 完成以后以上步骤后, 就可以按照部署完成的提示,开始使用蓝鲸智云社区版基础包了。