Apollo-配置管理中心-安装部署
Apollo-配置管理中心-安装部署
Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。
服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。
Java客户端不依赖任何框架,能够运行于所有Java运行时环境,同时对Spring/Spring Boot环境也有较好的支持。
.Net客户端不依赖任何框架,能够运行于所有.Net运行时环境。
环境准备
centos ==> 7+ mysql ==> 5.7+ java ==> 1.8+ Apollo==>1.7.1 2020/9/27 目前最新
1. 下载程序包地址
源代码地址: https://github.com/ctripcorp/apollo/ 已编译完成程序包: https://github.com/ctripcorp/apollo/releases config数据库地址: https://github.com/ctripcorp/apollo/tree/master/scripts/sql https://github.com/ctripcorp/apollo/blob/master/scripts/sql/apolloconfigdb.sql portal数据库地址: https://github.com/ctripcorp/apollo/tree/master/scripts/sql https://github.com/ctripcorp/apollo/blob/master/scripts/sql/apolloportaldb.sql
1)本次使用已编译完成的程序包
#wget https://github.com/ctripcorp/apollo/releases/download/v1.7.1/apollo-adminservice-1.7.1-github.zip #wget https://github.com/ctripcorp/apollo/releases/download/v1.7.1/apollo-configservice-1.7.1-github.zip #wget https://github.com/ctripcorp/apollo/releases/download/v1.7.1/apollo-portal-1.7.1-github.zip
2)程序接口名称及功能说明
名称 |
功能说明 |
接口服务对象 |
Portal |
提供Web界面供用户管理配置 |
配置管理员 |
Admin Service |
提供配置管理接口 |
Portal |
Config Service |
提供配置获取接口 |
Apollo客户端程序 |
Eureka |
Config Service和Admin Service会向Eureka注册服务,并保持心跳 |
Config和Admin |
Meta Server |
Meta Server从Eureka获取Config Service和Admin Service的服务信息 |
Portal和Client |
备注:Meta Server和Config Service是在一个JVM进程中
Eureka和Config Service是在一个JVM进程中
部署分布说明
- Portal单独使用 ApolloPortalDB 库,可以独立部署
- Config Service和Admin Service共用 ApolloConfigDB 库,建议部署至同一台服务器。
- Portal部署在生产环境的机房,通过它来直接管理FAT、UAT、PRO等环境的配置
- Config Service和Admin Service在每个环境都独立部署,使用独立的数据库(提供给相对应环境的客户端程序调用配置接口
默认支持环境说明
名称 |
说明 |
DEV |
开发环境 |
FAT |
测试环境,相当于alpha环境(功能测试) |
UAT |
集成环境,相当于beta环境(回归测试) |
PRO |
生产环境 |
2. 安装Config Service和Admin Service
2.1导入数据库
# mysql -uroot -p -e 'CREATE DATABASE IF NOT EXISTS ApolloConfigDB DEFAULT CHARACTER SET = utf8mb4' # mysql -uroot -p ApolloConfigDB < ApolloConfigDB.sql
2.2安装程序
# mkdir -p /opt/{apollo-config,apollo-admin} # unzip apollo-adminservice-1.7.1-github.zip -d /opt/apollo-admin/
2.3修改配置文件
vim /opt/apollo-config/config/application-github.properties ######修改config server数据库地址以及用户名密码 spring.datasource.url = jdbc:mysql://127.0.0.1:3306/ApolloConfigDB?characterEncoding=utf8 spring.datasource.username = root spring.datasource.password = 123456 vim /opt/apollo-admin/config/application-github.properties ######修改admin server数据库地址以及用户名密码 spring.datasource.url = jdbc:mysql://127.0.0.1:3306/ApolloConfigDB?characterEncoding=utf8 spring.datasource.username = root spring.datasource.password = 123456
2.4启动程序
# /opt/apollo-config/scripts/startup.sh Sun Sep 27 17:01:52 CST 2020 ==== Starting ==== Started [25701] Waiting for server startup........................... Sun Sep 27 17:04:10 CST 2020 Server started in 135 seconds!/opt/apollo-admin/scripts/startup.sh # /opt/apollo-admin/scripts/startup.sh Sun Sep 27 17:04:35 CST 2020 ==== Starting ==== Started [26096] Waiting for server startup.......................... Sun Sep 27 17:06:47 CST 2020 Server started in 130 seconds!
2.5检查启动情况
打开网页http://192.168.108.132:8080,查看是否有APOLLO-CONFIGSERVICE以及APOLLO-ADMINSERVICE成功注册 使用命令 curl -X GET "http://192.168.108.132:8080/eureka/apps"检查已注册服务
3.安装配置portal
3.1导入数据库
#mysql -uroot -p -e 'CREATE DATABASE IF NOT EXISTS ApolloPortalDB DEFAULT CHARACTER SET = utf8mb4' #mysql -uroot -p ApolloPortalDB < ApolloPortalDB.sql
3.2安装程序
#mkdir -p /opt/apollo-portal # unzip apollo-portal-1.7.1-github.zip -d /opt/apollo-portal/
3.3修改配置文件
修改数据库配置文件 vim /opt/apollo-portal/config/application-github.properties ######修改portal数据库地址以及用户名密码 spring.datasource.url = jdbc:mysql://127.0.0.1:3306/ApolloPortalDB?characterEncoding=utf8 spring.datasource.username = root spring.datasource.password = 123456 **修改访问环境配置文件** vim /opt/apollo-portal/config/apollo-env.properties ######修改各环境的eureka访问地址,仅培训需要的环境,如果eureka配置集群模式,填入地址,使用逗号隔开。(更建议使用域名+负载均衡) dev.meta=http://192.168.108.132:8080,http://192.168.108.133:8080 **修改数据库配置** 配置统一存储在 ApolloPortalDB.ServerConfig 表中 ###允许支持多环境 `apollo.portal.envs`键值中,如需管理多个环境的话,使用逗号隔开 例如 "DEV,FAT,UAT,PRO" ###修改部门列表信息 `organizations`键值中,按照样例修改可选部门信息 ###超级管理官 `superAdmin`键值中,拥有超级管理员权限用户名,如需添加多个,用逗号隔开
3.4启动程序
/opt/apollo-portal/scripts/startup.sh 访问配置管理页面 访问域名 : http:// 192.168.108.132:8070 默认用户名 : apollo 默认密码 : admin 增加配置请查看官方git说明书 https://github.com/ctripcorp/apollo/wiki/Apollo使用指南 https://gitee.com/nobodyiam/apollo/wikis/Apollo使用指南?sort_id=1296981