Apollo配置中心快速入门指南

Apollo配置中心快速入门指南

apollo apollo 项目地址: https://gitcode.com/gh_mirrors/ap/apollo

前言

Apollo是一款开源的分布式配置中心,能够集中化管理应用在不同环境、不同集群的配置,配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。本文将详细介绍如何在本地环境快速部署和体验Apollo配置中心。

环境准备

Java环境要求

Apollo对Java环境有明确要求:

  • 服务端:Java 1.8+
  • 客户端:Java 1.8+
    • 如需在Java 1.7环境下运行客户端,需使用1.x版本的Apollo客户端

验证Java版本命令:

java -version

MySQL数据库要求

如果选择使用MySQL作为存储:

  • 版本要求:5.6.5+
  • 原因:Apollo表结构使用了多个timestamp的default声明,需要MySQL 5.6.5+支持

验证MySQL版本命令:

SHOW VARIABLES WHERE Variable_name = 'version';

安装包获取

Apollo提供了Quick Start安装包,包含完整依赖和内置Tomcat容器,方便快速启动:

  1. 下载预编译包(约50M)
  2. 解压后即可使用

安装包较大的原因是包含了所有依赖jar包和内置Tomcat容器

数据库配置与启动

Apollo支持多种数据库存储方式,下面分别介绍:

1. H2内存数据库(测试用)

特点:

  • 无需额外配置
  • 进程重启后数据丢失

启动命令:

export SPRING_PROFILES_ACTIVE="github,database-discovery,auth"
java -jar apollo-all-in-one.jar

2. H2文件数据库

特点:

  • 数据持久化到文件
  • 需要指定存储路径

首次启动(初始化数据库):

export SPRING_PROFILES_ACTIVE="github,database-discovery,auth"
export SPRING_SQL_CONFIG_INIT_MODE="always"
export SPRING_CONFIG_DATASOURCE_URL="jdbc:h2:file:~/apollo/apollo-config-db;..."
export SPRING_SQL_PORTAL_INIT_MODE="always"
export SPRING_PORTAL_DATASOURCE_URL="jdbc:h2:file:~/apollo/apollo-portal-db;..."
java -jar apollo-all-in-one.jar

后续启动(去掉初始化参数):

unset SPRING_SQL_CONFIG_INIT_MODE
unset SPRING_SQL_PORTAL_INIT_MODE
# 其他参数保持不变

3. MySQL数据库(推荐生产使用)

特点:

  • 生产环境推荐
  • 需要提前准备MySQL实例

首次启动(初始化数据库):

export SPRING_PROFILES_ACTIVE="github,database-discovery,auth"
export SPRING_SQL_CONFIG_INIT_MODE="always"
export SPRING_CONFIG_DATASOURCE_URL="jdbc:mysql://your-mysql-server:3306/ApolloConfigDB..."
export SPRING_CONFIG_DATASOURCE_USERNAME="your-username"
export SPRING_CONFIG_DATASOURCE_PASSWORD="your-password"
# Portal DB类似配置
java -jar apollo-all-in-one.jar

后续启动(去掉初始化参数):

unset SPRING_SQL_CONFIG_INIT_MODE
unset SPRING_SQL_PORTAL_INIT_MODE
# 其他参数保持不变

4. 手动初始化MySQL

步骤:

  1. 手动执行SQL脚本初始化ApolloConfigDB和ApolloPortalDB
  2. 启动时无需初始化参数

使用Apollo配置中心

1. 初始化样例配置

  1. 访问http://localhost:8070,使用默认账号apollo/admin登录
  2. 创建名为SampleApp的应用
  3. 添加配置项(如timeout:1000)
  4. 发布配置

2. 运行客户端程序

Apollo提供了简单的Demo客户端演示配置获取:

  1. 运行./demo.sh client启动客户端
  2. 输入配置项名称(如timeout)查看值
  3. 客户端会自动监听配置变化

3. 修改配置并观察

  1. 在Portal修改配置值(如timeout改为2000)
  2. 发布配置
  3. 观察客户端控制台,会自动收到配置变更通知
  4. 再次查询配置值,已更新为新值

4. 新项目接入

  1. 在Portal创建新应用
  2. 修改客户端app.id为新应用ID
  3. 启动客户端即可接入新应用配置

注意事项

  1. Quick Start仅适用于本地测试,生产环境请参考分布式部署方案
  2. 默认占用8070、8080、8090端口,请确保端口可用
  3. Quick Start不支持新增环境,分布式部署才支持多环境

总结

通过本文的Quick Start,您可以快速体验Apollo的核心功能。Apollo作为配置中心,提供了配置集中管理、实时推送、版本管理、灰度发布等企业级特性,是微服务架构中不可或缺的基础组件。

apollo apollo 项目地址: https://gitcode.com/gh_mirrors/ap/apollo

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

姜海恩Gaiety

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值