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 完成以后以上步驟后, 就可以按照部署完成的提示,開始使用藍鯨智雲社區版基礎包了。