• 一、准备工作
  • 1.1 运行时环境
  • 1.1.1 OS
  • 1.1.2 Java
  • 1.2 MySQL
  • 1.3 环境
  • 1.4 网络策略
  • 二、部署步骤
  • 2.1 创建数据库
  • 2.1.1 创建ApolloPortalDB
  • 2.1.1.1 手动导入SQL创建
  • 2.1.1.2 通过Flyway导入SQL创建
  • 2.1.1.3 验证
  • 2.1.2 创建ApolloConfigDB
  • 2.1.2.1 手动导入SQL
  • 2.1.2.2 通过Flyway导入SQL
  • 2.1.2.3 验证
  • 2.1.2.1 从别的环境导入ApolloConfigDB的项目数据
  • 2.1.3 调整服务端配置
  • 2.1.3.1 调整ApolloPortalDB配置
  • 1. apollo.portal.envs - 可支持的环境列表
  • 2. apollo.portal.meta.servers - 各环境Meta Service列表
  • 3. organizations - 部门列表
  • 4. superAdmin - Portal超级管理员
  • 5. consumer.token.salt - consumer token salt
  • 6. wiki.address
  • 7. admin.createPrivateNamespace.switch
  • 8. emergencyPublish.supported.envs
  • 9. configView.memberOnly.envs
  • 10. role.create-application.enabled - 是否开启创建项目权限控制
  • 11. role.manage-app-master.enabled - 是否开启项目管理员分配权限控制
  • 12. admin-service.access.tokens - 设置apollo-portal访问各环境apollo-adminservice所需的access token
  • 2.1.3.2 调整ApolloConfigDB配置
  • 1. eureka.service.url - Eureka服务Url
  • 2. namespace.lock.switch - 一次发布只能有一个人修改开关,用于发布审核
  • 3. config-service.cache.enabled - 是否开启配置缓存
  • 4. item.key.length.limit - 配置项 key 最大长度限制
  • 5. item.value.length.limit - 配置项 value 最大长度限制
  • 6. admin-service.access.control.enabled - 配置apollo-adminservice是否开启访问控制
  • 7. admin-service.access.tokens - 配置允许访问apollo-adminservice的access token列表
  • 2.2 虚拟机/物理机部署
  • 2.2.1 获取安装包
  • 2.2.1.1 直接下载安装包
  • 2.2.1.1.1 获取apollo-configservice、apollo-adminservice、apollo-portal安装包
  • 2.2.1.1.2 配置数据库连接信息
  • 2.2.1.1.2.1 配置apollo-configservice的数据库连接信息
  • 2.2.1.1.2.2 配置apollo-adminservice的数据库连接信息
  • 2.2.1.1.2.3 配置apollo-portal的数据库连接信息
  • 2.2.1.1.2.4 配置apollo-portal的meta service信息
  • 2.2.1.2 通过源码构建
  • 2.2.1.2.1 配置数据库连接信息
  • 2.2.1.2.2 配置各环境meta service地址
  • 2.2.1.2.3 执行编译、打包
  • 2.2.1.2.4 获取apollo-configservice安装包
  • 2.2.1.2.5 获取apollo-adminservice安装包
  • 2.2.1.2.6 获取apollo-portal安装包
  • 2.2.2 部署Apollo服务端
  • 2.2.2.1 部署apollo-configservice
  • 2.2.2.2 部署apollo-adminservice
  • 2.2.2.3 部署apollo-portal
  • 2.3 Docker部署
  • 2.3.1 1.7.0及以上版本
  • 2.3.1.1 Apollo Config Service
  • 2.3.1.1.1 获取镜像
  • 2.3.1.1.2 运行镜像
  • 2.3.1.2 Apollo Admin Service
  • 2.3.1.2.1 获取镜像
  • 2.3.1.2.2 运行镜像
  • 2.3.1.3 Apollo Portal
  • 2.3.1.3.1 获取镜像
  • 2.3.1.3.2 运行镜像
  • 2.3.2 1.7.0之前的版本
  • 2.4 Kubernetes部署
  • 2.4.1 基于Kubernetes原生服务发现
  • 2.4.1.1 环境要求
  • 2.4.1.2 添加Apollo Helm Chart仓库
  • 2.4.1.3 部署apollo-configservice和apollo-adminservice
  • 2.4.1.3.1 安装apollo-configservice和apollo-adminservice
  • 2.4.1.3.2 卸载apollo-configservice和apollo-adminservice
  • 2.4.1.3.3 配置项说明
  • 2.4.1.3.4 配置样例
  • 2.4.1.3.4.1 ConfigDB的host是k8s集群外的IP
  • 2.4.1.3.4.2 ConfigDB的host是k8s集群外的域名
  • 2.4.1.3.4.3 ConfigDB的host是k8s集群内的一个服务
  • 2.4.1.3.4.4 指定Meta Server返回的apollo-configservice地址
  • 2.4.1.3.4.5 指定Meta Server返回的apollo-adminservice地址
  • 2.4.1.3.4.6 以Ingress配置自定义路径/config形式暴露apollo-configservice服务
  • 2.4.1.3.4.7 以Ingress配置自定义路径/admin形式暴露apollo-adminservice服务
  • 2.4.1.4 部署apollo-portal
  • 2.4.1.4.1 安装apollo-portal
  • 2.4.1.4.2 卸载apollo-portal
  • 2.4.1.4.3 配置项说明
  • 2.4.1.4.4 配置样例
  • 2.4.1.4.4.1 PortalDB的host是k8s集群外的IP
  • 2.4.1.4.4.2 PortalDB的host是k8s集群外的域名
  • 2.4.1.4.4.3 PortalDB的host是k8s集群内的一个服务
  • 2.4.1.4.4.4 配置环境信息
  • 2.4.1.4.4.5 以Load Balancer形式暴露服务
  • 2.4.1.4.4.6 以Ingress形式暴露服务
  • 2.4.1.4.4.7 以Ingress配置自定义路径/apollo形式暴露服务
  • 2.4.1.4.4.8 以Ingress配置session affinity形式暴露服务
  • 2.4.1.4.4.9 启用 LDAP 支持
  • 2.4.2 基于内置的Eureka服务发现
  • 三、Portal 实现用户登录功能