環境准備
官方建議
- 准備至少3台 CentOS 7 以上操作系統的機器
- 最低配置:2核4G
- 建議配置: 4核12G 以上
- 部署前關閉待安裝主機之間防火牆,保證藍鯨主機之間通信無礙
- 部署前關閉SELinux
- 系統的ulimit -n需要大於1024,建議102400以上。
- NTP保持時間同步一致
- 檢查系統的umask,建議設為0022
- 主機有 rsync 命令
- 檢查系統是否有配置全局的HTTP代理,如果有,部署前先取消。
- 如非特別說明,安裝過程中均使用root賬號操作
(以下內容在每台主機上都要操作)
#更新軟件包 [root@localhost ~]# yum -y update # 安裝常用命令 root@localhost ~# yum -y install rsync wget curl vim 關閉防火牆: # 檢查SELinux的狀態,如果它已經禁用,可以跳過后面的命令 sestatus # 通過命令禁用SELinux setenforce 0 # 或者修改配置文件 sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/sysconfig/selinux #檢查默認防火牆狀態, 如果返回not running,可以跳過后面的命令 firewall-cmd --state # 停止firewalld systemctl stop firewalld # 禁用firewall開機啟動 systemctl disable firewalld # 禁用NetworkManager開機啟動 systemctl disable NetworkManager # 停止NetworkManager systemctl stop NetworkManager 調整最大連接數: #檢查連接數 ulimit -n #調整連接數 ulimit -n 102400 #修改配置文件添加如下內容 vim /etc/security/limits.d/99-nofile.conf root soft nofile 102400 root hard nofile 102400 同步時間: #查看當前時間 date -R Wed, 30 Jan 2019 12:25:10 +0800 #如時間不一致,需要同步 ntpdate cn.pool.ntp.org 檢查是否存在http代理: #藍鯨服務器之間會有的http請求,如果存在http代理,且未能正確代理這些請求,會發生不可預見的錯誤。 # 檢查http_proxy https_proxy變量是否設置,若為空可以跳過后面的操作 echo "$http_proxy" "$https_proxy" 配置YUM源: mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup yum -y install epel-release yum clean all yum makecache yum -y update
下載安裝包
(以下內容任選一台操作)
下載地址: http://bk.tencent.com/download/
將下載的藍鯨社區版完整包上傳到中控機,並解壓到 同級 目錄下。以解壓到/data 目錄為例:
mkdir /data tar xf bkce_src-4.1.16.tgz -C /data/
解壓之后, 得到兩個目錄: src, install
- src: 存放藍鯨產品軟件, 以及依賴的開源組件
- install: 存放安裝部署腳本、安裝時的參數配置、日常運維腳本等
修改配置文件
在 install 目錄下, 共有三個配置
- install.config
- globals.env
- ports.env
install.config 主配置文件,用於描述在哪些機器上安裝哪些服務。 每行兩列,第一列是IP地址;第二列是以英文逗號分隔的服務名稱。 詳情參考install.config.3IP.sample文件可將install.config.3IP.sample 復制為install.config)
cd /data/install/ mv install.config.3IP.sample install.config vim install.config #根據實際情況協調 10.128.120.231 kafka,zk,es,consul,rabbitmq 10.128.120.232 kafka,zk,es,consul,mysql,beanstalk,mongodb 10.128.120.233 kafka,zk,es,consul,influxdb 10.128.120.237 bkdata,fta,paas,appt,nginx 10.128.120.238 appo,job,cmdb,gse,license,redis
說明:
- 該配置文件,ip 后面使用空格與服務名稱隔開,含有多個內網 ip 的機器,默認使用 /sbin/ifconfig 輸出中的第一個內網ip, 在 ip 后面寫上該機器要安裝的服務列表即可, 部署過程中默認使用標准私有地址, 若企業環境使用非標准私有地址, 請參考非標准內網ip處理的處理方法。
- zk 表示 zookeeper, es 表示 elasticsearch
- gse 與 redis 需要部署在同一台機器上
- gse 若需要跨雲支持, gse 所在機器必須有外網 IP
- 增加機器數量時, 可以將以上配置中的服務挪到新的機器上。 要保證: kafka, es, zk 的每個組件的總數量為3
該文件定義了各類組件的賬號密碼信息. 功能開關控制選項等. 可根據實際情況進行修改.
配置項含義, 請查看文件中的注釋
- 該文件含密碼信息,請保證除了root用戶外,其他用戶不可讀。
- 各類賬號密碼建議修改, 注意設置的各類密碼不能有 / $ ` < > &等特殊字符
- 配置HTTP代理: 若公司不能訪問外網, 但有自己的 proxy, 在該配置文件的 BK_PROXY 選項中指定代理地址.
- 若需要跨雲管理功能(服務器在不同的 IDC, 內網不互通的情況):
- 若GSE 所在機器不能訪問外網, 則需要把 gse 所在機器的外網IP填到該文件中 GSE_WAN_IP 配置項中的括號里 如: export GSE_WAN_IP=(1.2.3.4), 若沒有外網IP 則留空
- 若 GSE 所在機器能訪問外網, 則配置 export AUTO_GET_WANIP=1 即可
- HAS_DNS_SERVER 配置默認為0,表示配置的藍鯨域名需要通過/etc/hosts來解析,此時部署腳本會自動修改每台機器的/etc/hosts添加相關域名。如果想走自己的dns配置,改為非0即可。
該配置文件中提供了訪問藍鯨三大平台的域名配置, 需要提前准備好.
[root@localhost install]# vim globals.env # 域名信息 export BK_DOMAIN="bkpro.com" # 藍鯨根域名(不含主機名) export PAAS_FQDN="paas.$BK_DOMAIN" # PAAS 完整域名 export CMDB_FQDN="cmdb.$BK_DOMAIN" # CMDB 完整域名 export JOB_FQDN="job.$BK_DOMAIN" # JOB 完整域名 export APPO_FQDN="o.$BK_DOMAIN" # 正式環境完整域名 export APPT_FQDN="t.$BK_DOMAIN" # 測試環境完整域名
端口定義。 默認情況下, 不用修改。特殊場景下,若有端口沖突,可以自行定義。
在線安裝時,依賴pip,需要配置可用的 pip 源。
vi src/.pip/pip.conf [global] index-url = https://pypi.tuna.tsinghua.edu.cn/simple
獲取證書
- 通過ifconfig或者ip addr命令獲取install.config文件中,license和gse模塊所在服務器的第一個內網網卡的MAC地址。如果分別屬於兩台服務器,那么兩個的MAC地址以英文;分隔。
- 在官網證書生成頁面根據輸入框提示填入MAC地址,生成並下載證書。
上傳證書到中控機,並解壓到 src/cert 目錄下
tar xf ssl_certificates.tar.gz -C /data/src/cert/
配置 SSH 免密登陸
登錄到中控機,執行以下操作
cd /data/install bash configure_ssh_without_pass # 根據提示輸入各主機的 root 密碼完成免密登陸配置
安裝前校驗環境是否滿足
按文檔要求做完環境和部署的配置后,准備開始安裝前,請運行以下腳本,來校驗是否滿足:
cd /data/install bash precheck.sh start <<check_ssh_nopass>> ... [OK] start <<check_password>> ... [OK] start <<check_cert_mac>> ... [OK] start <<check_selinux>> ... [OK] start <<check_umask>> ... [OK] start <<check_get_lan_ip>> ... [OK] start <<check_http_proxy>> ... [OK] start <<check_open_files_limit>> ... [OK] start <<check_domain>> ... [OK] start <<check_networkmanager>> ... [OK]
如果發現有[FAIL]的報錯,按照提示和本文檔修復。修復后,可繼續跑precheck.sh腳本,直到不再出現[FAIL]。如果需要從頭開始檢查,請使用 precheck.sh -r 參數。
正式部署
環境准備后, 可以開始安裝藍鯨平台。
以下步驟若有報錯/失敗,需要根據提示修復錯誤后,在重新執行相同的命令(斷點續裝)。
每一個步驟執行如果有報錯,需要修復錯誤,保證安裝成功后,才可以繼續。因為安裝藍鯨平台的順序是有依賴關系的。 前面的平台沒有成功,如果繼續往下安裝,會遇到更多的報錯。修復錯誤所需要了解的相關命令,請參考維護文檔。
模塊安裝
cd /data/install # 該步驟后,可以打開 paas 平台 ./bk_install paas # 安裝paas 平台及其依賴服務 # 該步驟完成后, 可以打開 cmdb, 看到藍鯨業務及示例業務 ./bk_install cmdb # 安裝 cmdb 及其依賴服務 # 該步驟完成后, 可以打開作業平台, 並執行作業 # 同時在配置平台中可以看到藍鯨的模塊下加入了主機 ./bk_install job # 安裝作業平台及其依賴組件,並在安裝藍鯨的服務器上裝好 gse_agent 供驗證 # 該步驟完成后可以在開發者中心的 服務器信息 和 第三方服務信息 中看到已經成功激活的服務器 # 同時也可以進行 saas 應用(除藍鯨監控和日志檢索)的上傳部署 ./bk_install app_mgr # 部署正式環境及測試環境 # 安裝該模塊后,可以開始安 saas 應用: 藍鯨監控及日志檢索 ./bk_install bkdata # 安裝藍鯨數據平台基礎模塊及其依賴服務 # 安裝 fta 后台 ./bk_install fta # 安裝故障自愈的后台服務 # 重裝一下 gse_agent 並注冊正確的集群模塊到配置平台 ./bkcec install gse_agent # 部署官方SaaS到正式環境(通過命令行從/data/src/official_saas/目錄自動部署SaaS) ./bkcec install saas-o
測試
改一下本地host文件:即可使用。 10.128.120.237 paas.bkpro.com 10.128.120.237 cmdb.bkpro.com 10.128.120.237 job.bkpro.com 在瀏覽器訪問以下鏈接: http://paas.bkpro.com:80 登陸用戶名: admin 登陸密碼: xXM7]GI0W

