apollo部署,配置详细解析

APOLLO配置中心

  • 使用的Apollo版本和部署:
    • 每个环境独立部署apollo-adminservice-1.5.1,apollo-configservice-1.5.1 访问数据库ApolloConfigDB
    • Portal只需要部署一个就行
    • 因为Portal需要管理多个环境,因此需要在Portal下的配置文件apollo-env.properties配置各个环境的meta-server地址
  • Apollo配置:
    • Apollo客户端需要在自己的物理机上的/opt/settings目录下的server.properties配置环境, 例如:env=DEV
    • 需要修改Apollo的各个环境的数据库的表ServerConfig中的eureka.service.url地址为对应的apollo-configservice-1.5.1服务的地址
    • 说明
      • Apollo中的configservice封装了eureka注册中心的API统一以HTTP协议的方式提供服务注册发现(估计是为了跨语言客户端提供配置中心服务,因为eureka只支持JAVA语言的客户端)
      • Apollo给configservice命名为meta-server地址 那么meta-server地址实际上就是注册中心的地址也是叫做configservice地址
      • eureka—>configservice—→meta-server (meta-server只是逻辑含义不是真正独立存在的物理服务)
  • 新增一个环境的操作步骤:
    • 把已有环境的apollo-adminservice-1.5.1,apollo-configservice-1.5.1拷贝到新的物理机上
    • 在新的环境导入数据库ApolloConfigDB,并用SQL初始化数据
    • 修改apollo-adminservice-1.5.1,apollo-configservice-1.5.1对应的数据库(ApolloConfigDB)连接地址
    • 启动服务adminservice, configservice
    • 在Protal下的apollo-env.properties新增meta-server地址(即configservice地址)
    • Apollo新环境部署完成,打开Portal页面环境可以看到新的环境了
    • 修改客户端配置apollo-env.properties 新增新创建的Apollo环境的meta-server地址
    • 修改客户端所在的物理机的/opt/settings下的server.properties文件为env=xxx
    • 重启客户端服务,可以看到已经打印出和配置中心的交互的日志信息表示成功了
  • 如果是本地开发,想自己本地独立启动服务方便本地断点调试,独立使用各自的配置的namespace
    • 在Portal页面添加一个集群,名字自己取,选择开发环境dev
    • 把dev环境配置同步到自己的集群下
    • 修改自己创建的集群的各个namespace的配置信息,如spring.provider.name = app-center
    • 如果本地是windows环境,默认在C:/opt/settings目录下修改server.properties文件,新增idc=自己刚刚创建的集群名称
    • 启动服务,看日志是否选择自己创建的集群启动
  • APP,环境,集群,NameSpace关系
    • APP即项目,也就是你的开发项目(并不是项目中的某个微服务模块)
    • 一个APP对应多个环境
    • 一个环境对应多个集群(每创建一个新的环境,会默认有个集群default,可以自己去看本地缓存文件的命名方式 在/opt/data/appid目录下)
    • 一个集群对应多个namespace (namespace相当于我们的一个properties配置文件,可以这么理解,一个微服务就是一个properties文件,也就是一个namespace)
  • 更加详细的文档看下官方文档:
    • https://github.com/ctripcorp/apollo/wiki/Apollo%E9%85%8D%E7%BD%AE%E4%B8%AD%E5%BF%83%E8%AE%BE%E8%AE%A1
    • https://github.com/ctripcorp/apollo/wiki/Apollo%E6%A0%B8%E5%BF%83%E6%A6%82%E5%BF%B5%E4%B9%8B%E2%80%9CNamespace%E2%80%9D
    • https://mp.weixin.qq.com/s/-hUaQPzfsl9Lm3IqQW3VDQ
    • http://www.iocoder.cn/categories/Apollo/

你可能感兴趣的:(Java,java,spring,cloud,spring,boot)