一、安裝環境准備
1.1 安裝說明
- 准備好硬件,安裝完原生 CentOS 系統后。需要對初始系統做一些配置,保證后續安裝過程的順暢和藍鯨平台的運行。
- 系統版本: 推薦 CentOS-7.9
- 建議 4 核 16 G,硬盤 100G 以上(可根據實際情況適當調整配置)
- 機器數量:3 台(假設ip分別為:192.168.137.128,192.168.137.129,192.168.137.130)
- 選擇一台為中控機(假設為 192.168.137.128)進行安裝部署操作,使用 root 賬號登錄
| 分類 | 介質 | 補充說明 |
|---|---|---|
| OS | CentOS 7.9 | MEM>=16G,CPU>=4C, BK_DISK>=100GB |
| OS | bkce_src-6.0.2.tgz | 藍鯨平台安裝文件 |
| \ | Offline-RPM | oniguruma,jq,pssh,parallel,beanstalkd的RPM文件 |
| \ | ssl_certificates.tar.gz | 內網網卡對應的SSL認證文件,配置免密登錄用 |
注:由於是離線安裝,因此上述介質要提前准備好。
注:Offline-RPM中涉及到的RPM版本要兼容操作系統版本。
表中提到的ssl_certificates.tar.gz 的下載地址為:
https://bk.tencent.com/download_ssl/
方法是登陸該網址后,將藍鯨平台所用服務器內網地址MAC列在輸入框中,MAC之間用“;”隔開,輸入完畢后點下載即可。
| 內網ip | 模塊分布 |
|---|---|
| 192.168.137.128 | iam,ssm,usermgr,gse,license,redis,consul,es7,monitorv3(influxdb-proxy),monitorv3(monitor),monitorv3(grafana) |
| 192.168.137.129 | nginx,consul,mongodb,rabbitmq,appo,influxdb(bkmonitorv3),monitorv3(transfer),fta,beanstalk |
| 192.168.137.130 | paas,cmdb,job,mysql,zk(config),kafka(config),appt,consul,log(api),nodeman(nodeman),log(grafana) |
其中192.168.31.106為中控,所有的安裝介質都放在該機器上,BK安裝時的指令也將在該機器上執行,該機器上的BK相關的目錄如下:
| 目錄位置 | 內容說明 |
|---|---|
| /data/software | 藍鯨平台相關的安裝介質 |
| /data/install,/data/src | 藍鯨平台社區版解壓目錄 |
| /data/bkce | 藍鯨平台的安裝位置,其他兩台也會存在該目錄。 |
- 注:以下步驟1.2和1.3需要在所有服務器上執行。
1.2 Yum源的配置
在yum配置前,將CentOS7.9的ISO中的文件復制到/data/software/linuxOS7目錄下,
mount -t auto /root/CentOS-7.9-x86_64-DVD-2009 /mnt
cp -rpf /mnt/* /data/software/linuxOS7
新增文件/etc/yum.repos.d/centos7.repo,文件的內容如下:
[centos7]
name=centos7
baseurl=file:///data/software/linuxOS7
enabled=1
gpgcheck=0
由於是離線安裝,在/etc/yum.repos.d/目錄下只保留centos7.repo,其他的repo文件可以刪除,也可以移動到別處,然后更新YUM的cache信息:
yum clean all && yum makecache
為了方便管理,安裝如下工具包(除rsync,其余的可選):
yum -y install rsync tigervnc-server net-tools
yum -y install ntpdate
yum -y install yum-utils device-mapper-persistent-data lvm2
安裝BK所需的離線工具包(必須):
cd /data/software/offline-rpm
yum install -y beanstalkd-1.10-2.el7.x86_64.rpm
yum install -y oniguruma-6.8.2-1.el7.x86_64.rpm
yum install -y jq-1.6-2.el7.x86_64.rpm
yum install -y parallel-20160222-1.el7.noarch.rpm
yum install -y pssh-2.3.1-5.el7.noarch.rpm

1.3 操作系統配置
操作系統上的配置過程如下:
- A. 關閉selinux,關閉完成后用“sestatus”指令來確認:
sed -i 's/^SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config
setenforce 0
- B. 查看防火牆,關閉完成后確認指令為“firewall-cmd --state”:
systemctl stop firewalld # 停止 firewalld
systemctl disable firewalld # 禁用 firewall 開機啟動
- C. 設置limits.conf,指令如下:
cat << EOF >> /etc/security/limits.conf
soft nofile 204800
hard nofile 204800
EOF
- D. 將IP設置為靜態IP,以192.168.137.128為例:
先將網卡名稱改為eth0,然后將IP改為靜態,以其中一台BK的服務器為例,修改過程如下:
cd /etc/sysconfig/network-scripts
mv ifcfg-ens33 ifcfg-eth0
vi ifcfg-eth0
TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
BOOTPROTO=static
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=eth0
UUID=4e7a86c2-cbda-45c2-9530-933bff35df3b
DEVICE=eth0
ONBOOT=yes
IPADDR=192.168.137.128 ###根據實際修改
PREFIX=24
GATEWAY=192.168.1.1
修改/etc/sysconfig/grub,在CMD哪一行加上“net.ifnames=0 biosdevname=0”完成后的效果如下:
GRUB_CMDLINE_LINUX="crashkernel=auto rd.lvm.lv=ol/root rd.lvm.lv=ol/swap net.ifnames=0 biosdevname=0 rhgb quiet"
執行如下指令重新編譯GRUB:
grub2-mkconfig -o /boot/grub2/grub.cfg
- E. 關閉network manager,關閉完成后用“systemctl status NetworkManager”來確認
systemctl stop NetworkManager && systemctl disable NetworkManager
- F. 修改機器名為預定義的名稱
hostnamectl set-hostname <機器名>
修改/etc/hosts,加入機器名稱的解析。
- G. 同步BK所使用的服務器時間
修改timezone為中國上海:
timedatectl set-timezone Asia/Shanghai
打開虛擬機的設置,勾上“與主機時間同步”,如果是物理機,建議使用ntpdate指令定期和NTP服務器做時間同步。
服務器后台時間不同步會對時間敏感的服務帶來不可預見的后果。務必在安裝和使用藍鯨時保證時間同步。
檢查每台機器當前時間和時區是否一致,若相互之間差別大於3s(考慮批量執行時的時差),建議校時。
date -R
查看和ntp server的時間差異(需要外網訪問,如果內網有ntpd服務器,自行替換域名為該服務的地址)
ntpdate -d cn.pool.ntp.org
- H. 確認是否有proxy在運行,如果有則手工關閉
echo "$http_proxy" "$https_proxy"
/etc/profile、/etc/bashrc、$HOME/.bashrc
- I. 檢查resolv.conf是否有修改權限:
檢查 /etc/resolv.conf 是否被加密無法修改(即便是 root),執行如下命令,檢查是否有“i”加密字樣:
lsattr /etc/resolv.conf
----i--------e-- /etc/resolv.conf
如果有則執行命令則解密處理,執行如下命令:
chattr -i /etc/resolv.conf
平台部署安裝完畢后,確認 resolv.conf 配置文件的首行,即第一個DNS地址需為 127.0.0.1,如下所示:
nameserver 127.0.0.1 ###如果不是則手工添加
安裝前先確認 “修改 /etc/resolv.conf 並重啟主機,是否被還原” 。如果被還原,可以參考以下紅帽官方的文檔解決: https://access.redhat.com/solutions/7412
如果 resolv.conf不應該被通過 DHCP 獲得的 DNS 服務器覆蓋,那么 DHCP 接口應該有 PEERDNS=no在他們的 ifcfg 文件中設置,例如:
生的
$ cat /etc/sysconfig/network-scripts/ifcfg-eth0
TYPE=Ethernet
DEVICE=eth0
BOOTPROTO=dhcp
PEERDNS=no
- J. 執行如下指令,修復安裝的BUG
cd /usr/lib/
ln -s /usr/lib64/mysql
cd /usr/bin
ln -s /usr/sbin/ip ###先確認ip在那個目錄再執行
上述步驟配置完成后,重啟服務器。
二、藍鯨平台的部署和管理
2.1 藍鯨平台安裝前的配置
mkdir -p /data/software/
運行/data/install/的configure腳本自定義域名

將藍鯨平台的安裝介質復制到/data/software/目錄,然后准備好以下的shell腳本進行安裝前的配置。該腳本的功能如下:
- 解壓介質到對應的安裝目錄
- 配置install.config
- 配置admin密碼
- 配置免密登錄
#!/bin/bash
##############By Compard, 2022.02 ###########
##########No parameter, ./lanjing.sh ####
TAR=bkce_basic_suite-6.0.5.tgz
echo begin at `date`
cd /data/software/
tar xf $TAR -C /data
cd /data/src/; for i in *gz;do tar xf $i; done
install -d -m 755 /data/src/cert
tar xf /data/software/ssl_certificates*.tar.gz -C /data/src/cert/
chmod 644 /data/src/cert/*
cp -a /data/src/yum /opt
cd /data/install
cat << EOF >/data/install/install.config
192.168.137.128 iam,ssm,usermgr,gse,license,redis,consul,es7,monitorv3(influxdb-proxy),monitorv3(monitor),monitorv3(grafana)
192.168.137.129 nginx,consul,mongodb,rabbitmq,appo,influxdb(bkmonitorv3),monitorv3(transfer),fta,beanstalk
192.168.137.130 paas,cmdb,job,mysql,zk(config),kafka(config),appt,consul,log(api),nodeman(nodeman),log(grafana)
EOF
sleep 5
#部署前修改 admin 密碼:
#將 blueking 使用自定義的密碼進行替換
cat > /data/install/bin/03-userdef/usermgr.env << EOF
BK_PAAS_ADMIN_PASSWORD="zht123123"
EOF
bash /data/install/configure_ssh_without_pass
echo end at `date` last is :
echo Last Command : /data/install/configure_ssh_without_pass
腳本執行時會有輸入密碼的提示,輸入完畢,沒有任何報錯即可進行下一步。
2.2 安裝藍鯨平台
藍鯨平台包括基礎模塊,平台服務,SAAS-O三大部分,安裝時需要按照順序,以下是具體的步驟:
* 在install目錄執行如下指令安裝藍鯨平台的基礎模塊:
./bk_install common

* 執行如下指令安裝藍鯨平台的模塊及SAAS的后台服務:
./health_check/check_bk_controller.sh ###檢查
./bk_install paas #PaaS平台
./bk_install app_mgr #SaaS 運行環境
./bk_install cmdb #配置平台
./bk_install job #作業平台
./bk_install bknodeman #節點管理,如果報錯見“章節3的說明”
./bk_install bkmonitorv3 #監控平台
./bk_install bklog #日志檢索
./bk_install fta #故障自愈后台
* 執行如下指令部署SAAS-O:
./bk_install saas-o bk_iam # 權限中心
./bk_install saas-o bk_user_manage # 用戶管理
./bk_install saas-o bk_sops # 標准運維
./bk_install saas-o bk_itsm # 服務流程管理
./bk_install saas-o bk_fta_solutions # 故障自愈SaaS,在bk_install fta之后就開始部署
* 完成安裝並確認結果:
./bkcli initdata topo #初始化藍鯨業務拓撲
- 檢測相關服務狀態
source ~/.bashrc
cd /data/install/
echo bkssm bkiam usermgr paas cmdb gse job consul bklog | xargs -n 1 ./bkcli check
整個安裝過程持續時間比較長,因此建議在VNC中執行,等待安裝結束后,查看日志,如果未發現需要關注的問題,則安裝成功,否則需要根據問題來做對應的處理
2.3 訪問藍鯨平台
安裝完畢后,每個藍鯨平台的服務器上和客戶端需要訪問藍鯨平台,在hosts中加入如下信息:
192.168.31.107 aiops.bk.com cmdb.bk.com job.bk.com jobapi.bk.com
192.168.31.108 nodeman.bk.com
然后打開chrome,輸入http://aiops.bk.com來訪問藍鯨平台平台,使用admin用戶登陸.
藍鯨平台默認安裝的SAAS模塊,都部署在appo環境上,官方推薦使用最新版的chrome來訪問藍鯨平台。
三、遇到的問題
3.1 內網訪問itsm無內容
在公司內網部署了itsm,在沒網的情況下,打開itsm是一片空白的,在社區看到有人說需要升級到2.5.9以上的版本。

- 解決
提前准備好需要升級的版本
https://bk.tencent.com/s-mart/application/265/histroy
打開paas平台,選擇開發者中心


3.2 gse檢查出現問題

重新啟動gse服務即可
./bkcli restart gse
