一、简介

Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性,适用于微服务配置管理场景。

服务端基于Spring Boot和Spring Cloud开发,打包后可以直接运行,不需要额外安装Tomcat等应用容器。

Java客户端 不依赖任何框架,能够运行于所有Java运行时环境,同时对Spring/Spring Boot环境也有较好的支持。

.Net客户端 不依赖任何框架,能够运行于所有.Net运行时环境。

官方 GitHub: https://github.com/ctripcorp/apollo

官方 Gitee:https://gitee.com/nobodyiam/apollo


二、安装部署

2.1 环境准备

windows操作系统(可选)

git(可选)

IntelliJ IDEA:2020.1.1(可选)

java: JDK 1.8.+

maven: 3.3.9

mysql: 版本要求(5.6.5+)

查看数据库版本:

 SHOW VARIABLES WHERE Variable_name = 'version';

Apollo服务端: 1.9+ Apollo客户端: 1.7+

2.2 安装包下载

  1. 源码下载 从(Apollo-github) 下载最新的源码,也可以通过 git 命令下载到本地

    git clone https://github.com/ctripcorp/apollo
  2. 下载安装包 地址:https://github.com/ctripcorp/apollo/releases

注意: 本教程中使用的方式为安装包下载,进行演示。

2.3 创建数据库

Apollo 服务端总共需要两个数据库:apolloportaldb apolloconfigdb

我们可以在下载的源码包里面找到,文件目录为:apollo-x.x.x\scripts\sql,路径如下图所示:

 #导入成功后,验证SQL:select * from `ApolloPortalDB`.`ServerConfig`;

 #导入成功后,验证SQL:select * from `ApolloConfigDB`.`ServerConfig`;


2.4 服务端配置调整(可选项)

1. ApolloPortalDB库配置

操作表:ServerConfig

2. ApolloConfigDB库配置

操作表:ServerConfig

2.5 打包工程

在下载下来的 Apollo 源码中找到 build.bat的文件(Linux 是 bulid.sh)采用编辑方式打开

修改数据库配置信息,注意这是两个库(ApolloPortalDBApolloConfigDB):

注意: 数据库连接,需要添加serverTimezone=UTC否则可能会报错.

set apollo_config_db_url="jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8&serverTimezone=UTC"set apollo_config_db_username="root"set apollo_config_db_password="123456"set apollo_portal_db_url="jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8&serverTimezone=UTC"set apollo_portal_db_username="root"set apollo_portal_db_password="123456"set dev_meta="http://localhost:8080"set fat_meta="http://someIp:8080"set uat_meta="http://anotherIp:8080"set pro_meta="http://yetAnotherIp:8080"

修改完上面的配置以后,我们就可以执行build.bat批处理命令进行编译打包。 在windows 运行build.bat文件,如果是Linux 运行 build.sh

第一次会执行比较慢,耐心等待。

打包成功后界面如下:

找到 apollo-configservice、apollo-adminservice、apollo-portal下target 目录,找到已经打好的三个jar包,copy 出来放到一个单独的目录,并用记事本新建一个脚本文件,方便我们启动。

启动顺序为:apollo-configservice > apollo-adminservice > apollo-portal三个服务

如下图所示:

脚本文件的内容如下:

@echo offstart cmd /c "java -jar apollo-configservice-1.10.0-SNAPSHOT.jar"                                     start cmd /c "java -jar apollo-adminservice-1.10.0-SNAPSHOT.jar"                                      start cmd /c "java -jar apollo-portal-1.10.0-SNAPSHOT.jar"spause  

执行启动脚本.bat文件,出现以下界面后:

打开浏览器输入:http://localhost:8070/,看到 Apollo 登录页面说明启动成功

用户名/密码: apollo/admin

输入 http://localhost:8080 ,如果出现eureka 的管理界面,说明服务启动正常。

输入 http://localhost:8090 ,可看到内容,说明服务启动正常。

【Apollo配置中心】Apollo环境配置相关推荐

  1. docker-compose 一键部署分布式配置中心Apollo

    简介 说起分布式肯定要想到分布式配置中心.分布式日志.分布式链路追踪等 在分布式部署中业务往往有很多配置比如: 应用程序在启动和运行时需要读取一些配置信息,配置基本上伴随着应用程序的整个生命周期,比如 ...

  2. apollo local 模式_「架构」 - 配置中心 Apollo基本使用

    公司需要使用Apollo配置中心,下面会出现大段Apollo官网文字截取引用. 一.Apollo(配置中心) Apollo(阿波罗)是携程框架部门研发的分布式配置中心,能够集中化管理应用不同环境.不同 ...

  3. 微服务 分布式配置中心Apollo详解

    微服务 分布式配置中心Apollo详解 1. 配置中心概述 1.1 配置中心简介 1.2 配置中心特点 1.3 配置中心对比 2. Apollo概述 2.1 Apollo简介 2.2 Apollo特点 ...

  4. JAVA开发与运维(配置中心Apollo的使用)

    在微服务构建的分布式系统,有一个组件很重要,就是配置中心.配置中心集中管理所有微服务的配置信息,这样做既规范了开发配置规范,也方便于后期的运维管理.这一篇我们讲一下携程的开源配置中心Apollo的使用 ...

  5. 【最全最详细】分布式配置中心 Apollo

    1. 基本概念 由于 Apollo 概念比较多,刚开始使用比较复杂,最好先过一遍概念再动手实践尝试使用. 1.背景 随着程序功能的日益复杂,程序的配置日益增多,各种功能的开关.参数的配置.服务器的地址 ...

  6. 分布式配置中心-Apollo

    1 概览 1.1 什么是配置 应用程序在启动和运行的时候往往需要读取一些配置信息,配置基本上伴随着应用程序的整个生命周期,比如:数 据库连接参数.启动参数等. 1.2 什么是配置中心 传统单体应用存在 ...

  7. 分布式配置中心 Disconf 安装配置

    分布式配置中心 Disconf 安装配置 前提准备 CentOS 服务器一台 MySQL 数据库一台 安装依赖软件 安装 JDK 安装 Git 安装 Maven 安装 Zookeeeper 安装 To ...

  8. SpringCloud配置中心客户端读取配置

    转载自 SpringCloud配置中心客户端读取配置 微服务连接配置中心来实现外部配置的读取. 引入依赖 <dependencies><dependency><group ...

  9. SpringCloud config 配置中心集群配置以及整合消息总线BUS实现关联微服务配置自动刷新

    一.SpringCloud Config 基本配置中的问题 在上一章节<SpringCloud config 配置中心介绍与基本配置使用>中我们现实了配置中心的配置集中管理.调用微服务应用 ...

  10. Apollo配置中心-手把手教你搭建Apollo配置中心运行环境

    1.预置环境信息 运行环境 JDK >= 1.8 具体安装及环境及环境变量配置这里不再赘述, 可自行查找资料. 2.下载程序包 演示版本使用的是apollo-1.9.2版本(就是几个spring ...

最新文章

  1. 死锁产生条件-请求和保持条件
  2. rstp 小米网络摄像头_国家部门调查联邦美国快递,联通VoLTE试商用开启,iOS蜂窝网络下载上限提高,小米申请屏下摄像头专利,这就是今天的其他大新闻!...
  3. 我发现了pandas的黄金搭档!
  4. websocket demo
  5. 小团队前端部署演化之路
  6. 睡眠 应该用 a加权 c加权_在神经网络中提取知识:学习用较小的模型学得更好...
  7. [渝粤教育] 西南科技大学 经济数学2 在线考试复习资料
  8. 2021江津二中高考成绩查询入口,重庆江津第二中学2021年录取分数线
  9. 东北大学计算机期末考试题,东北大学计算机组成原理题库(10)
  10. java调用c 返回值_推荐--Linux平台下Java调用C函数(补充关于String类型函数返回值)...
  11. noip2009 普及组
  12. 基本类型的默认值和取值范围
  13. 上界与下界-- 视图界定--协变与逆变
  14. 什么是等保三级?等保三级的认证流程有哪些?
  15. Python语言程序设计笔记
  16. rono在oracle的作用_ColorOS产品规划总经理爆料预热Reno,这些功能你想要吗?
  17. (七)继续对话库检索的闲聊系统
  18. MySQL数据库锁详解
  19. 励志!从职高到杭电、浙大、MIT计算机博士!
  20. Raid常见级别(Raid 0、Raid 1、Raid 5、Raid 10)

热门文章

  1. Android 12 Watchdog(1) 介绍与启动
  2. eSIM卡业务开通地区
  3. navigation_plugin
  4. MAYA野蛮人xgen毛发制作视频教程
  5. 生活随记 - 祝福大家2021年新年快乐
  6. like to do 和like doing的区别
  7. 2022年RPA机器人流程自动化行业研究报告
  8. 来到传统行业做程序员,从准备提桶跑路到引领技术风潮?背景
  9. 初探GO中的反射机制
  10. Linux 命令行模式下退出 vim