登录mysql数据库,执行发版的sql语句uco_omc-all.sql。
部署环境变量。将环境变量文件omc-config.yaml拷贝到k8s节点上,执行命令kubectl apply -f omc-config.yaml。
部署后端服务。
拷贝镜像文件到k8s集群的每台node主机上在每台node主机执行命令docker load -i xxxx.tar(xxxx为各tar包名称)。
拷贝deployment文件到任意一台k8s节点上执行命令kubectl apply -f aaaa.yaml(aaaa为服务文件的名字)。
拷贝Service文件到任意一台k8s节点上执行命令kubectl apply -f xx.yaml。
部署前端安装包。将前端包拷贝到任意一台k8s机器上的某个路径,例如 /home/omc-ui,然后解压,以其中一个前端包abcd.tar.gz为例,执行如下命令。
cd /home/omc-ui。
tar -zxvf abcd.tar.gz。
sh install.sh。
对其他前端界面包,重复执行上面的命令。
连接到mysql数据库,执行发版的sql语句uca_omc.sql。
部署后端服务
拷贝镜像文件到A层k8s集群的每台node主机上,执行如下命令。
docker load -i uca-center-new.tar。
docker load -i uni-stack.tar。
拷贝02.deploy文件夹到A层k8s集群的任意一台node主机的某个路径下,例如/home/omc-uca,执行如下命令。
cd /home/omc-uca/02.deploy。
./deploy.s。
第一次部署:执行安装数据库脚本uni_cmdb_volacct.sql。
将离线docker镜像导入租管互通的k8s中,执行命令docker load -i xxx.tar,加载镜像。
修改volacct.yaml文件,Env下四个环境变量,根据实际部署环境修改其对应value。
SPRING_DATASOURCE_URL。
SPRING_DATASOURCE_USERNAME。
SPRING_DATASOURCE_PASSWORD。
KAFKA_BOOTSTRAP_SERVERS。
执行命令kubectl apply -f volacct.yaml,即可部署。
非首次部署:执行安装数据库脚本uni_cmdb_volacct_upgrade.sql。执行数据库脚本,加载镜像如上,根据实际镜像名称和target替换volacct.yaml中image字段的值。
初次部署。
安装elasticsearch。
创建elasticsearch用户。
使用root用户执行命令systemset.sh,重启。
执行命令su – elasticsearch,切换用户,将elasticsearch-xxxx.tar.gz上传至该用户下。
根据实际情况修改elasticsearch-xxx/config/elasticsearch.yaml 的network.publish_host、node.name(node-1~4)、discovery.zen.ping.uniCASt.hosts信息。
修改config目录下的jvm.options文件,将内存调成-Xms4g。
执行命令cd ~ && ./elasticsearch-xxx/bin/elasticsearch –d,后台启动(/data/elasticsearch/logs/下存放日志)。
修改k8sconfig/logstash/syslog.conf/syslog.conf中input块中的kafka地址信息和output块中elasticsearch的地址信息。
根据实际部署环境修改k8s-yaml/omc-collector.yaml中的ES_SERVER_URLS对应的value。
根据实际部署环境修改k8s-yaml/peafowl-core-deployment.yaml中的es_rest_uris、KAFKA_BOOTSTRAP_SERVERS对应的value。
根据实际部署环境修改k8s-yaml/peafowl-trace-deploymentr.yaml中的es_rest_uris、KAFKA_BOOTSTRAP_SERVERS对应的value。
根据实际部署环境修改k8s-yaml/query-deploy.yaml中的ES_SERVER_URLS对应的value。
更新部署。
注意更改yaml文件中的镜像target信息。
检查Cassandra数据库集群状态。登录到任意一台部署Cassandra数据库的主机上,执行命令nodetool status查看集群状态,确认数据库的四个节点全部为up状态。
导入镜像并部署中间组件服务。使用命令docker load -I xxx.tar,在K8s集群的三个节点分别加载consul、cortex、Prometheus、AlertManager、SaltStack、集中式exporter的docker镜像,并创建所需要的pv、hostPath对应的目录,确认K8s服务配置文件中的变量为适用本节点的值。执行命令kubectl apply -f xxx.yaml,部署相关微服务。
执行命令docker load -I xxx.tar,在K8s集群的三个节点分别加载后端服务docker镜像,连接到mysql,手动创建uni_work、uni_alert两个数据库,并使用sql脚本创建两个数据库中对应的表,之后修改并确认K8s服务配置文件中的变量为本节点适用的值。执行命令kubectl apply -f xxx.yaml,部署相关微服务。
执行命令kubectl -n omc get pod,查看各个服务的pod状态,如cortex服务反复启动,检查Cassandra集群是否正常且可访问。