Apollo配置中心搭建1.6.1版本

Apollo工作原理

Apollo配置中心搭建1.6.1版本_第1张图片

各模块职责

 1. Config Service提供配置的读取、推送等功能,服务对象是Apollo客户端
 
 2. Admin Service提供配置的修改、发布等功能,服务对象是Apollo Portal(管理界面)
 
 3. Eureka提供服务注册和发现,为了简单起见,目前Eureka在部署时和Config Service是在一个JVM进程中的
 
 4. Config Service和Admin Service都是多实例、无状态部署,所以需要将自己注册到Eureka中并保持心跳
 
 5. 在Eureka之上架了一层Meta Server用于封装Eureka的服务发现接口
 
 6. Client通过域名访问Meta Server获取Config Service服务列表(IP+Port),而后直接通过IP+Port访问服务, 同时在Client侧会做load balance、错误重试
 
 7. Portal通过域名访问Meta Server获取Admin Service服务列表(IP+Port),而后直接通过IP+Port访问服务, 同时在Portal侧会做load balance、错误重试
 
 8. 为了简化部署,我们实际上会把Config Service、Eureka和Meta Server三个逻辑角色部署在同一个JVM进程 中

核心概念

1. application (应用)
这个很好理解,就是实际使用配置的应用,Apollo客户端在运行时需要知道当前应用是谁,从而可以去获取对应的配置
关键字:appId

2. environment (环境)
配置对应的环境,Apollo客户端在运行时需要知道当前应用处于哪个环境,从而可以去获取应用的配置
关键字:env

3. cluster (集群)
一个应用下不同实例的分组,比如典型的可以按照数据中心分,把上海机房的应用实例分为一个集群,把北 京机房的应用实例分为另一个集群。
关键字:cluster

4. namespace (命名空间)
一个应用下不同配置的分组,可以简单地把namespace类比为文件,不同类型的配置存放在不同的文件中, 如数据库配置文件,RPC配置文件,应用自身的配置文件等
关键字:namespaces

  • 下载对应jar包https://github.com/ctripcorp/apollo/releases/tag/v1.6.1
    Apollo配置中心搭建1.6.1版本_第2张图片

  • Apollo服务端共需要两个数据库: ApolloPortalDBApolloConfigDBApolloPortalDB只需要在生产环境部署
    一个即可,而ApolloConfigDB需要在每个环境部署一套。

将jar包放到一个目录下
Apollo配置中心搭建1.6.1版本_第3张图片

  • 运行runApollo.sh文件运行服务
#!/bin/sh
url="localhost:3306"
username="root"
password="123456"

java -Xms256m -Xmx256m -Dspring.datasource.url=jdbc:mysql://${url}/ApolloConfigDB?characterEncoding=utf8 -Dspring.datasource.username=${username} -Dspring.datasource.password=${password} -Dlogging.file=./logs/apollo-configservice.log -Dserver.port=8080 -jar apollo-configservice-1.6.1.jar &

java -Xms256m -Xmx256m  -Dspring.datasource.url=jdbc:mysql://${url}/ApolloConfigDB?characterEncoding=utf8 -Dspring.datasource.username=${username} -Dspring.datasource.password=${password} -Dlogging.file=./logs/apollo-adminservice.log -Dserver.port=8090 -jar apollo-adminservice-1.6.1.jar & 

java -Xms256m -Xmx256m  -Dspring.datasource.url=jdbc:mysql://${url}/ApolloPortalDB?characterEncoding=utf8 -Dspring.datasource.username=${username} -Dspring.datasource.password=${password} -Dlogging.file=./logs/apollo-portal.log -Dserver.port=8070 -jar apollo-portal-1.6.1.jar &
  • 登录http://localhost:8070/signin
    账号:apollo
    密码:admin
    Apollo配置中心搭建1.6.1版本_第4张图片
    Apollo配置中心搭建1.6.1版本_第5张图片

你可能感兴趣的:(Apollo配置中心)