-
环境准备
准备机器a
- 建议操作系统 :麒麟 V10 ARM 架构
- 建议机器配置
- 推荐配置:
建议 16 核 48G,硬盘 200G 以上
- 推荐配置:
- 机器数量:3 台(标准部署,不含日志模块、报表模块、APM 模块)
- 选择第一台为中控机进行安装部署操作,使用 root 账号登录。
- 在每台机器上创建一个 /data 目录(建议挂载独立的磁盘或者分区)
mkdir /data - 已准备服务器信息如下:
IP 主机名 Mac地址 YUM源(在线/离线) 备注 10.10.24.129 control 00:50:56:93:58:a6 在线 crontrol_ip(中控机) 10.10.24.130 appo 00:50:56:93:e8:61 在线 appo_ip(APPO服务器) 10.10.24.131 appt 00:50:56:93:b6:3a 在线 appt_ip(APPT服务器) 10.10.24.132 log 00:50:56:93:b6:4b 在线 log_ip(日志服务器,需包含日志模块) 准备介质包(上传至中控机)
序号 介质包名 文件名 上传路径 备注 1 平台介质包 cwbkee_product-V4.0.3-ky10_ARM-Canway.tar.gz /data/ 提单走产品包申请流程,申请版本需为 4.0.3 且环境架构为 ky10_ARM 2 监控平台包 XXX项目-Jerko-20240128143056.tar.gz /data/ 如上按需提单申请 3 证书文件介质包 ssl_certificates.tgz /data/ 平台证书 4 weops 部署工具包 weops-release-4.15LTS-kylinarm.tar.gz /data/ weops-release-4.15LTS-kylinarm.tar.gz 5 角色初始化文件 weops-release-roledist-kylinarm.xlsx /data/cwbk_install/ 角色初始化文件下载 准备基础环境
- 安装常用源以及工具
# 操作主机:每台机器 # 麒麟系统可能自带安装了 mysql 和 docker,与蓝鲸使用不相同,需要提前卸载 yum -y remove docker mysql* mariadb* mkdir /data/ sed -i 's/#UseDNS yes/UseDNS no/g' /etc/ssh/sshd_config sed -i '/Banner/s/^/#/g' /etc/ssh/sshd_config systemctl restart sshd # 禁用 motd 提示,否则 init topo 会失败 rm -f /etc/motd rm -f /etc/motd.d/* systemctl stop firewalld systemctl disable firewalld setenforce 0 - 配置主机免密
# 操作主机:中控机 ssh-keygen # 一直按回车确认 ssh-copy-id xx.xx.xx.xx # 分别添加各台服务器IP,包括本机 - 解压安装包
# 操作主机:中控机 ################# 方法一、脚本解压 #################
# 解压平台介质包
# 注意:需要将平台介质包和监控平台包下载到/data,两个包的命令规范如下:
# 平台介质包:cwbkee_product-V4.0.3-ky10_ARM-bytnbyz.tar.gz
# 监控平台包:weops-jkpt.tar.gz
wget https://wedoc.canway.net/imgs/patch_arm_kylin.tar.gz
tar xf patch_arm_kylin.tar.gz -C /data
cd /data/patch-arm-kylin
./unzip_file.sh
################# 方法二、手动解压 #################
# 解压平台介质包 tar xf cwbkee_product-V4.0.3-ky10_ARM-Canway.tar.gz -C /data/ tar xf /data/src/cwbk_install-V4.0.3-ky10-arm64-rc4-ky10-arm64.tgz -C /data/ tar xf /data/weops-release-4.15LTS-kylinarm.tar.gz -C /data/ tar xf weops_deployment_arm_LTS_*.tar.gz -C /data/ # 解压监控平台部署包 tar xf XXX项目-Jerko-20240128143056.tar.gz -C /data/src/ # 移动 saas 包至路径 /data/src/official_saas/ cd /data/src/ mv bk_monitorv3_V3.6.3656.tar.gz official_saas/ # 修改监控平台后台包后缀为 tar.gz 适配脚本,请注意替换为实际文件 mv bkmonitorv3_ee-V3.6.3709-arm-cw.tgz bkmonitorv3_ee-V3.6.3709-arm-cw.tar.gz - 准备角色分布文件
# 操作主机:中控机 # 删除默认 xlsx 角色表 rm -f /data/cwbk_install/*.xlsx # 打开角色分布文件 weops-release-roledist-kylinarm.xlsx,按照提示填写内容,填写完成后重新上传到 /data/cwbk_install/ 目录 # 注意事项: 1)修改 ip、主机名称、资源信息等,excel 不要留有空格 2)Gse 和 redis 在同一主机,nginx 和 paas 在同一主机,如有特殊需要可修改角色分布,如无特殊需要不要修改 3)作业平台不可带有下划线 4)请勿提前使用 https,初始化步骤尚未兼容 https 的场景,可以部署完成后再根据文档变更
开始部署平台
平台初始化
# 操作主机:中控机 # 初始化 cd /data/cwbk_install/ ./cwbk_install -init # 上述初始化步骤没有错误的情况下,会询问是否进入 Screen 模式进行安装蓝鲸,直接输入 N 即可 # patch for arm tar xf /data/patch_for_arm-*.tar.gz -C /data/install/ cd /data/install/ ./patch_for_arm.sh init_platform # 自定义二级域名,非必要不执行,会覆盖之前的域名设置(可选) # 执行前请使用实际的二级域名 (如:weops.com) 和安装目录进行替换 cd /data/install ./configure -d {{ BK_DOMAIN }} # 自定义平台登录密码 cat > /data/install/bin/03-userdef/usermgr.env << EOF BK_PAAS_ADMIN_PASSWORD=WeOps2024 EOF平台部署
- 部署蓝鲸基础平台
# 操作主机:中控机 # 操作路径:/data/install/ # 一键部署(蓝鲸基础平台) cd /data/cwbk_install/ ./cwbk_install -install # 部署完成后,有可选选项需要配置,按指引依次输入即可 配置数据库备份 + 日志清除策略:y 配置 iptables 策略:y 一键为蓝鲸安装 agent:y 一键部署 monstache 开启全文检索:n - 配置安装目录软连接
# 操作主机:中控机 # 操作路径:/data/install/ cd /data/install/ pcmd -m all 'ln -s /data/bkee /data/bkce'
检查相关服务状态
# 操作主机:中控机 # 操作路径:/data/install/ cd /data/install/ echo bkssm bkiam usermgr paas cmdb gse job consul bkmonitorv3 | xargs -n 1 ./bkcli check验证访问 paas 平台
DNS 配置
如暂时未将weops域名添加至 DNS 服务器解析,可直接添加 hosts 记录访问 weops。- Windows 配置
用文本编辑器(如 Notepad++ )打开文件:
C:WindowsSystem32driversetchosts
将以下内容复制到上述文件内,并将以下 IP 需更换为本机浏览器可以访问的 IP,然后保存。# 操作主机:客户端 # 将以下内容复制到上述文件内,注意将以下IP和域名需更换为实际三台蓝鲸IP和域名,然后保存。 10.0.0.2 paas.weops.com cmdb.weops.com job.weops.com jobapi.weops.com weops.weops.com itsm.weops.com 10.0.0.3 nodeman.weops.com
注意:10.0.0.2 为 nginx 模块所在的机器,10.0.0.3 为 nodeman 模块所在的机器,查询方式如下:# 操作主机:中控机 # 操作路径:/data/install/ # 查询模块所分布在机器的方式: grep -E "nginx|nodeman" /data/install/install.config获取管理员账户及密码
# 操作主机:任意一台机器 # 执行下述命令,获取管理员账号和密码 grep -E "BK_PAAS_ADMIN_USERNAME|BK_PAAS_ADMIN_PASSWORD" /data/install/bin/04-final/usermgr.env开始部署 WeOps
WeOps 依赖组件安装 (8mins)
使用 weops_install.sh 脚本可自动完成一些配置项和组件安装,具体可查看附录内容。
注意:仅可执行一次# 操作主机:中控机 # 操作路径:/data/weops # 安装依赖组件 source /data/install/utils.fc # 若提示无此文件或文件夹,请重新 ssh 登录 cd /data/weops/install bash weops_install.sh components # patch for arm cd /data/install/ ./patch_for_arm.sh allWeOps 依赖配置
更新 saas
# 操作主机:中控机 # 重新部署依赖 saas ./bk_install saas-o bk_nodeman ./bk_install saas-o bk_monitorv3WeOps 集合saas部署
执行脚本 install_saas.sh 安装 对应的 app_code
例如:./install_saas.sh monitorcenter_saas
1) 脚本会对已经安装好app_code 放入标记文件 .step_canway_saas ,再次执行如果app_code 已在该文件中,就会跳过安装,如需要重新安装,编辑该文件去掉对应的app_code 即可。# 操作主机:中控机 # 操作路径:/data/install/ # 解压 SaaS 安装包到指定目录,SaaS 包请以实际为准 cd /data/ tar -xf 嘉为科技-weops-Jerko-20210714105936.tar.gz -C /data/src/official_saas # 命令执行如下,注意请按以下顺序正确安装saas cd /data/weops/install ./install_saas.sh monitorcenter_saas # 部署统一监控中心 (2mins) ./install_saas.sh cw_uac_saas # 部署统一告警中心 V2.0 (2mins) ./install_saas.sh bk_itsm # 部署 itsm (4mins) ./install_saas.sh bk_sops # 部署标准运维,若有提示,输入 y 部署即可 (3mins) ./install_saas.sh ops-digital_saas # 部署数字化运营中心(按需部署)(3mins) ./install_saas.sh weops_saas # 部署 weops4.x (2mins) # 部署了大屏和 weops_saas 4.15.3013+ 的客户需更新大屏 sql,没部署大屏的客户不用执行 gunzip -c /data/install/yum/ops-digital_saas.20241017.tgz|mysql --login-path=mysql-defaultWeOps 基础配置 (3mins)
WeOps 优化配置
使用 weops_install.sh 脚本可自动完成一些优化配置项(如日志自动清理)# 操作主机:中控机 # 操作路径:/data/weops # 配置 WeOps 基础设置 source /data/install/utils.fc # 若提示无此文件或文件夹,请重新 ssh 登录 cd /data/weops/install bash weops_install.sh settingsWeOps 服务初始化
WeOps服务初始化工具说明请查看附录# 操作主机:中控机 # 操作路径:/data/weops/init_weops_service cd /data/weops/init_weops_service python main.py --cmdb --monitor --itsm初始化权限策略和snmp模版
注意:若部署未包含监控模块,最后一个动作会报错,可无视# 操作主机:appo docker exec -i $(docker ps -aq -f name=weops_saas*) bash -c "export BK_FILE_PATH=/data/app/code/conf/saas_priv.txt;cd /data/app/code;python manage.py init_role --update;python manage.py init_snmp_template;python manage.py build_role_trees;python manage.py update_network_vault_credential;python manage.py reload_casbin_policy --delete" # 初始化内置模型,在浏览器使用有 admin 权限的用户访问 ${domain}/o/weops_saas/resource/objects/migrateWeOps 主机安装Agent
- 操作路径:WeOps -> 管理 -> 节点管理 -> Agent -> 安装 Agent -> 远程安装
- 操作目标:安装 WeOps 平台的服务器的主机 Agent
后台初始化配置 (40mins)
监控平台配置
- 打开监控平台:
- 浏览器打开开发者中心(网址:http://{paas.domain.com}/saas/list)
- 打开监控平台:开发者中心-> S-mart 应用 -> 点击 <监控平台> -> 正式地址
全局配置
- 操作路径:监控平台 -> 导航栏 -> 点击<设置> 图标 -> 全局设置
- 操作方式:在<全局设置>页面 -> 消息通知渠道 -> 仅勾选语音
告警策略
- 操作路径:监控平台 -> 配置 -> 告警策略
- 操作方式:在<告警策略>页面 -> 点击<启/停> -> 关闭所有默认策略
告警中心配置
- 打开告警中心:
- 浏览器打开开发者中心(网址:http://{paas.domain.com}/saas/list)
- 打开告警中心:开发者中心 -> S-mart 应用 -> 点击 <WeOps告警中心> -> 正式地址
告警转工单配置
1. 操作路径:统一告警中心 -> 功能配置 -> 工单系统
2.操作方式:<工单系统>页面 -> 蓝鲸ITSM -> 点击<更多>按钮(三个竖点图标) -> 流程管理 -> 点击<新建>按钮 -> 选择流程<告警转工单> -> 点击<确定>按钮日志模块部署
日志模块依赖 docker 和 docker-compose。且消耗资源较多,建议独立部署在一台 8C 32G 的服务器上。
日志采集用 kafka:建议在日志服务器或独立服务器部署,kafka 用于收集 filebeat,packetbeat,auditbeat 等beat 的日志数据。(蓝鲸内置的 kafka 版本过低,无法正常使用,必须单独搭建,最低配置可以到 2c 4g)
推荐配置:- 操作系统 :麒麟 V10 ARM 架构
- 机器配置 :8 核 32GB,硬盘 500GB 以上且支持扩容(POC 测试可降低至 200GB)
准备工作
准备介质包
序号 介质包名 文件名称 上传路径 备注 1 日志模块部署介质包 weops-release-log-arm.tar.gz /data/ docker-compose-arm、依赖组件镜像包 日志模块依赖组件
序号 组件名称 文件名称 镜像名称 镜像tag 镜像描述 1 mongo mongo-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/mongo 4.2.0-arm mongodb-元数据存储 2 opensearch opensearch-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/opensearch opensearch_1-arm 新版日志数据存储 3 datainsight datainsight-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/datainsight 20240528-arm 日志服务主体 4 kafka kafka-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/bitnami/kafka 3.6-arm 日志采集组件 同步环境变量
特殊说明:若部署服务器已同步蓝鲸环境变量,则跳过,无需执行# 操作主机:中控机 cd /data/install # 增加日志模块角色配置,假设日志服务器IP:10.0.1.1,以实际为准 vim install.config # 增加行: 10.0.1.1 weopslog ./bkcli install bkenv ./bkcli sync common scp ~/.bkrc ~/.bashrc root@10.0.1.1:~/ # 同步后,注释增加的行后再次同步 vim install.config # 注释行: # 10.0.1.1 weopslog ./bkcli install bkenv ./bkcli sync common部署 docker-ce
特殊说明:若部署服务器已安装docker,则跳过,无需执行# 操作主机:日志服务器 # 配置 Blueking yum源 scp ${crontrol_ip}:/etc/yum.repos.d/Blueking.repo /etc/yum.repos.d/ # 安装 docker-ce,版本:20.10.23 yum install -y docker-ce # 创建 docker 配置文件daemon.json mkdir /etc/docker cp /data/weops-log/docker_conf/daemon.json /etc/docker/daemon.json # 启动 docker 并设置开机自启 systemctl start docker systemctl enable docker # 查看 docker 版本,版本号:20.10.23 docker version部署 docker-compose
# 操作主机:日志服务器 cp /data/weops-log/docker-compose-arm /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose导入镜像
# 操作主机:日志服务器 # 自动导入镜像包 /data/weops-log/install/load_images.sh部署日志
# 操作主机:日志服务器 # 生成配置文件 /data/weops-log/configs/log_config.sh # 启动容器 docker-compose -f /data/weops/datainsight/docker-compose.yaml up -d部署日志采集kafka
# 操作主机:日志服务器 # 生成配置文件 /data/weops-log/configs/kafka_config.sh # 启动容器 cd /data/kafka && docker-compose up -d配置 sidecar 插件包
# 操作主机:APPO # 解压 sidecar 插件包 cd /data/bkce/paas_agent/apps/projects/weops_saas/code/weops_saas/ tar xf sidecar_install.tar.gz -C /data/bkce/public/paas_agent/share/weops_saas/ tar xf sidecar.tar.gz -C /data/bkce/public/paas_agent/share/weops_saas/ --- # 说明:默认的 sidecar 插件包纳管对象为 x86 架构,如对象为 arm 架构的服务器,请纳管日志节点后,自行替换 arm 架构的 sidecar 和 filbeat 的二进制文件 # 文件目录:/data/install/yum/sidecar、/data/install/yum/filebeat # 如需其他 arm 架构采集器,请自行前往官网下载:https://www.elastic.co/downloads/beats日志模块初始化配置
SaaS 环境变量说明
SaaS ID 变量名(默认自带BKAPP前缀) 变量值($开头值均为平台变量,需手动获取) 备注 weops_saas GRAYLOG_URL http://${log_ip}:9000 log_ip暂无环境变量,需视日志部署情况而定,示例:http://192.168.1.10:9000 weops_saas GRAYLOG_AUTH YWRtaW46ZGF0YWluc2lnaHQteA== 默认账号密码 admin:datainsight-x 的base64编码 weops_saas ALARM_SEND_REST_API <REST API 告警源:url> 需要在告警中心开启restful告警源,手动复制curl段中的url weops_saas ALARM_SEND_SECRET <REST API 告警源:secret> 需要在告警中心开启restful告警源,手动复制curl段中的secret weops_saas GRAYLOG_API_TOKEN <令牌 sidecar:token> 需要在datainsight页面生成 weops_saas LOG_OUTPUT_HOST ${log_kafka_ip}:9092 日志采集kafka broker,log_kafka_ip为单独部署的日志采集kafka地址,示例:192.168.1.10:9092 日志模块后台页面访问
访问代理配置
- 假设日志服务器:192.168.1.10
# 操作主机:nginx # 创建 datainsight.conf 配置文件 cd /usr/local/openresty/nginx/conf/conf.d/ touch datainsight.conf # 编辑 datainsight.conf 配置文件,配置文件内容如下所示 vim datainsight.conf # 验证 nginx 配置文件,返回successful为正常 /usr/local/openresty/nginx/sbin/nginx -t # 若返回正常,则重载 nginx 配置 systemctl restart openresty.service- datainsight.conf 配置文件
server { listen 80; server_name datainsight.weops.net; location / { proxy_pass http://192.168.1.10:9000; } }
页面访问
- host 域名解析配置:<$BK_NGINX_IP> datainsight.weops.net
- 访问url: http://datainsight.weops.net
- 用户名:admin
- 默认密码:datainsight-x
REST API 告警源
- 告警中心开启RESTful api告警源,获取url和key

sidecar令牌 tocken
- 操作路径:datainsight -> 系统 -> 用户 -> 系统管理员 -> Administrator -> 点击<编辑令牌> -> 输入<令牌名称:sidecar> -> 点击<创建令牌>
- GRAYLOG_API_TOKEN : 令牌sidecar的tocken



报表模块部署
报表模块由 trino 和 datart 两个组件服务组成,两者都依赖蓝鲸的 mysql,建议在蓝鲸服务器上部署(或在独立部署的服务器部署,要求已同步蓝鲸的环境变量)- trino :负责集成蓝鲸数据源
- datart:负责提供报表展示
准备工作
准备介质包
序号 介质包名 文件名 上传路径 备注 1 报表模块部署介质包 weops-release-report-arm.tar.gz /data/ 包含:datart_data.sql、安装脚本、依赖组件镜像包 报表模块依赖组件
序号 组件名称 文件名称 镜像名称 镜像tag 镜像描述 1 trino trino-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/trino 422-datainsight-arm64 trino 容器 2 datart datart-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/datart latest-arm datart 容器 报表模块部署先决条件
- 推荐配置:
- 操作系统 :麒麟 V10 ARM 架构
- 机器配置 :8 核 32GB,硬盘 200GB 以上且支持扩容
- docker-ce 安装
特殊说明:若部署服务器已安装 docker,则跳过,无需执行# 操作主机:报表服务器 # 配置 Blueking yum源 scp ${crontrol_ip}:/etc/yum.repos.d/Blueking.repo /etc/yum.repos.d/ # 安装 docker-ce,版本:20.10.23 yum install -y docker-ce # 创建 docker 配置文件daemon.json mkdir /etc/docker cp /data/weops-report/docker_conf/daemon.json /etc/docker/daemon.json # 启动 docker 并设置开机自启 systemctl start docker systemctl enable docker # 查看 docker 版本,版本号:20.10.23 docker version - 同步蓝鲸环境变量
特殊说明:若部署服务器已同步蓝鲸环境变量,则跳过,无需执行# 操作主机:中控机 cd /data/install # 增加报表角色配置,假设报表服务器IP:10.0.0.1,以实际为准 vim install.config # 增加行: 10.0.0.1 trino ./bkcli install bkenv ./bkcli sync common scp ~/.bkrc ~/.bashrc root@10.0.0.1:~/ # 同步后,注释增加的行后再次同步 vim install.config # 注释行: # 10.0.0.1 trino ./bkcli install bkenv ./bkcli sync common - 检查docker配置项-iptables
特殊说明:若部署报表服务器已启用docker的iptables配置,则跳过,无需执行# 操作主机:appt (报表服务器) # 确认docker是否开启iptables,以下配置需为true vim /etc/docker/daemon.json # 配置项: "iptables": true # 重启docker生效 systemctl restart docker
导入镜像
# 操作主机:报表服务器 cd /data/ tar xf weops-report.tgz -C /data/ cd /data/weops-report/images docker load < datart_latest-arm.tgz docker load < trino_422-datainsight-arm64.tgz部署报表
- 配置 mysql
注意:若部署 datart 的主机和 mysql 为同一台机,则${datart主机ip}应为容器IP:172.172.172.10# 操作主机:mysql # 创建mysql数据库 mysql --login-path=default-root << EOF create database datart EOF # 授权容器网段访问mysql # 注意:若部署datart的主机和mysql为同一台机,则${datart主机ip}应为容器IP:172.172.172.10` mysql --login-path=default-root << EOF GRANT ALL PRIVILEGES ON *.* TO 'root'@'${datart主机ip}' IDENTIFIED BY "${BK_MYSQL_ADMIN_PASSWORD}" WITH GRANT OPTION; FLUSH PRIVILEGES; EOF - 部署报表服务
- 安装 trino 组件
# 操作主机:报表服务器 # 加载环境变量 source /data/install/utils.fc cd /data/weops-report/ # 如日志服务器IP为192.168.5.10,# 若无日志模块,则默认填写中控机的IP # 示例执行命令如下: # ./trino_install.sh 192.168.5.10 ./trino_install.sh <日志服务器IP or 中控机IP>- 安装 datart 组件
# 操作主机:报表服务器 # 加载环境变量 source /data/install/utils.fc cd /data/weops-report/ # 安装 datart 组件 ./datart_install.sh - 初始化datart内置仪表盘
先决条件:报表部署工具包中复制 datart_data_20240201.tgz 文件至mysql服务器# 操作主机:mysql gunzip -c datart_data_20240201.tgz | mysql --login-path=default-root --database datart - 初始化内置仪表盘代理
# 操作主机:报表服务器 # 特殊说明:需从datart容器中复制static到paas服务器/data/bkce/open_paas/paas/ source /data/install/utils.fc docker cp datart:/apps/static/static /tmp/static scp -r /tmp/static $BK_PAAS_IP:/data/bkce/open_paas/paas/# 操作主机:paas systemctl restart bk-paas-paas - 初始化datart mysql数据源
# 操作主机:mysql #!/bin/bash source /data/install/utils.fc curl -s 'http://172.172.172.10:8080/api/v1/users/login' -i -H 'Content-Type: application/json' -d '{"username":"admin","password":"WeOps2023"}' --compressed --insecure > /tmp/datart.login export AUTH=$(grep Authorization /tmp/datart.login) cat << EOF > /tmp/payload.json { "config": "{"dbType":"MYSQL","url":"jdbc:mysql://${BK_MYSQL_IP}:3306","user":"root","password":"${BK_MYSQL_ADMIN_PASSWORD}","driverClass":"com.mysql.cj.jdbc.Driver","serverAggregate":false,"enableSpecialSQL":false,"enableSyncSchemas":true,"syncInterval":"60","properties":{}}", "createBy": "1e7f1b3aac2247008e5e0e9be07da599", "createTime": "2023-05-30 17:33:24", "id": "e866c2e14c0b4aaf956110a63f7d5ba6", "index": null, "isFolder": false, "name": "mysql", "orgId": "b044363c75a34df8b40e26c1a61e5dde", "parentId": null, "permission": null, "schemaUpdateDate": "2023-06-05 10:42:16", "status": 1, "type": "JDBC", "updateBy": "1e7f1b3aac2247008e5e0e9be07da599", "updateTime": "2023-05-30 17:42:01", "deleteLoading": false } EOF curl -s 'http://172.172.172.10:8080/api/v1/sources/e866c2e14c0b4aaf956110a63f7d5ba6' -X 'PUT' -H "${AUTH}" -H 'Content-Type: application/json' --data-binary @/tmp/payload.json --compressed --insecure && rm -vf /tmp/payload.json /tmp/datart.login - 注册报表服务到consul
# 操作主机:中控机 #注册报表服务到consul #!/bin/bash consul kv put bkapps/upstreams/prod/datart "["${datart主机ip}:8083"]" # 重启nginx cd /data/install ./bkcli restart nginx - 访问代理配置
- 假设报表服务器:192.168.1.10
# 操作主机:nginx # 创建 datart.conf 配置文件 cd /usr/local/openresty/nginx/conf/conf.d/ touch datart.conf # 编辑 datart.conf 配置文件,配置文件内容如下所示 vim datart.conf # 验证 nginx 配置文件,返回successful为正常 /usr/local/openresty/nginx/sbin/nginx -t # 若返回正常,则重载 nginx 配置 systemctl restart openresty.service- datart.conf 配置文件
server { listen 80; server_name datart.weops.net; location / { proxy_pass http://192.168.1.10:8083; } }APM模块部署
推荐配置:- 操作系统 :Kylin V10 ARM
- 机器配置 :8 核 32GB,硬盘 200G 以上
- 部署方式:建议独立部署在一台服务器上
准备工作
准备介质包
序号 介质包名 文件名称 上传路径 备注 1 APM模块部署介质包 weops-release-apm-arm.tar.gz /data/ tempo、alertmanager、agent、prometheus 镜像包 APM模块依赖组件
序号 组件名称 文件名称 镜像名称 镜像tag 镜像描述 1 tempo tempo-latest-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/tempo latest-arm APM依赖存储组件 2 alertmanager alertmanager-0.26.0-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/alertmanager 0.26.0-arm APM告警组件 3 agent agent-latest-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/agent lastest-arm APM依赖数据接收 4 prometheus prometheus-4.7-arm.tgz docker-bkrepo.cwoa.net/ce1b09/weops-docker/prometheus 4.7-arm APM专用prometheus 同步环境变量
特殊说明:若部署服务器已同步蓝鲸环境变量,则跳过,无需执行# 操作主机:中控机 cd /data/install # 增加 APM 模块角色配置,假设 APM 服务器IP:10.0.1.1,以实际为准 vim install.config # 增加行: 10.0.1.1 weopsapm ./bkcli install bkenv ./bkcli sync common scp ~/.bkrc ~/.bashrc root@10.0.1.1:~/ # 同步后,注释增加的行后再次同步 vim install.config # 注释行: # 10.0.1.1 weopsapm ./bkcli install bkenv ./bkcli sync common部署 docker-ce
特殊说明:若部署服务器已安装docker,则跳过,无需执行# 操作主机:APM服务器 # 解压 APM 模块部署包 tar zvf /data/weops-release-apm.tar.gz -C /data/ # 配置 Blueking yum源 scp ${crontrol_ip}:/etc/yum.repos.d/Blueking.repo /etc/yum.repos.d/ # 安装 docker-ce,版本:20.10.23 yum install -y docker-ce # 创建 docker 配置文件daemon.json mkdir /etc/docker cp /data/weops-apm/docker_conf/daemon.json /etc/docker/daemon.json # 启动 docker 并设置开机自启 systemctl start docker systemctl enable docker # 查看 docker 版本,版本号:20.10.23 docker version部署 docker-compose
# 操作主机:APM 服务器 cp /data/weops-apm/docker-compose-arm /usr/local/bin/docker-compose chmod +x /usr/local/bin/docker-compose导入镜像
# 操作主机:APM 服务器 # 自动导入镜像包 /data/weops-apm/install/load_images.sh部署APM
# 操作主机:APM 服务器 # 生成配置文件 /data/weops-apm/configs/apm_config.sh # 启动容器 docker-compose -f /data/weops/tempo/docker-compose.yaml up -dAPM 模块初始化配置
SaaS 环境变量更新
操作路径:登录开发者中心- 配置对应 SaaS 的环境变量
SaaS ID 变量名(默认自带BKAPP前缀) 变量值($开头的值视实际情况而定,需手动获取) weops_saas APM_PROMETHEUS_URL http://${apm服务的ip}:9094 weops_saas APM_URL http://${apm服务的ip}:3101 weops_saas OTLP_ENDPOINT http://${apm服务的ip}:4317 cw_uac_saas BKAPP_APM_PROMETHEUS_QUERY_RANGE_URL http://${apm服务的ip}:9094/api/v1/query_range 重新部署 SaaS 以生效环境变量:告警中心SaaS、WeOps SaaS
附录
平台组件配置性能优化
mysql配置优化-内存
- 配置修改
# 操作主机:mysql sed -i '/^innodb_buffer_pool_size=/cinnodb_buffer_pool_size=2G' /etc/mysql/default.my.cnf - 配置生效
# 操作主机:中控机 cd /data/install ./bkcli restart mysql
es配置优化-内存
- 配置修改
# 操作主机:es7 sed -i "s/^## -Xmx.*g/-Xmx2g/g" /etc/elasticsearch/jvm.options sed -i "s/^## -Xms.*g/-Xms2g/g" /etc/elasticsearch/jvm.options - 配置生效
# 操作主机:中控机 cd /data/install ./bkcli restart es7
mongo 配置优化-内存
- 配置修改
# 操作主机:mongodb # 修改wiredTiger默认内存大小为4G if ! grep -q "cacheSizeGB: 4" "/etc/mongod.conf"; then echo "WiredTiger cache size has been set to 4." log "限制mongodb的wiredTiger内存 /etc/mongod.conf" sed -i "s@# engine:@ wiredTiger:n engineConfig:n cacheSizeGB: 4@" /etc/mongod.conf else echo "WiredTiger cache size is already set to 4." echo "WiredTiger cache size has been set to 4." fi - 配置生效
# 操作主机:中控机 cd /data/install ./bkcli restart mongodb
报错处理
监控的主机打不开
sed -i '/CC v2/a ("/v2/cc/search_host/", {"comp_codename": "generic.v2.cc.search_host"}),' /data/src/open_paas/esb/components/esb_conf.py cd /data/install source utils.fc for i in $( tr -s ',' ' ' <<< $BK_PAAS_IP_COMMA);do rsync -a /data/src/open_paas/esb/components/esb_conf.py $i:/data/bkce/open_paas/esb/components/esb_conf.py; done ./bkcli restart paas esb
暂无评论