Apollo配置中心快速入门指南

Apollo配置中心快速入门指南

apollo apolloconfig/apollo: 是一个分布式配置管理平台,可以方便地实现配置的统一管理和发布。该项目提供了一个简单易用的配置管理平台,可以方便地实现配置的统一管理和发布,同时支持多种配置格式和部署方式。 apollo 项目地址: https://gitcode.com/gh_mirrors/apoll/apollo

前言

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

本文将详细介绍如何在本地环境中快速部署和启动Apollo配置中心,帮助开发者快速体验Apollo的核心功能。

环境准备

Java环境要求

Apollo服务端和客户端对Java版本有不同要求:

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

验证Java版本命令:

java -version

数据库选择

Apollo支持多种数据库存储方式:

  1. H2内存数据库:适合快速体验,数据不持久化
  2. H2文件数据库:数据持久化到本地文件
  3. MySQL数据库:生产环境推荐使用

如果选择MySQL,需注意:

  • 版本要求:5.6.5+
  • 原因:Apollo表结构使用了timestamp的多重默认声明

验证MySQL版本命令:

SHOW VARIABLES WHERE Variable_name = 'version';

安装包获取

Apollo提供了快速启动安装包,开发者可以直接下载使用,无需自行编译打包。安装包约50MB,包含所有依赖jar包和内置Tomcat容器。

下载方式

  1. 官方提供的快速启动安装包
  2. 百度网盘下载(适合无法访问官方源的场景)

安装包内容说明

快速启动包是一个自包含的jar文件,内置了:

  • Apollo所有服务组件(ConfigService、AdminService、Portal)
  • 所有依赖的第三方库
  • 嵌入式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数据库配置类似
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
  2. 使用默认账号登录(用户名:apollo,密码:admin)
  3. 创建示例项目"SampleApp"
  4. 添加配置项(如timeout=1000)
  5. 发布配置

2. 运行客户端程序

Apollo提供了简单的Demo客户端,展示如何从配置中心获取配置:

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

3. 修改配置并发布

  1. 返回管理界面修改配置值(如timeout改为2000)
  2. 发布新配置
  3. 观察客户端自动获取新配置的过程

4. 接入自己的应用

  1. 在管理界面创建新项目
  2. 修改客户端配置(app.id)
  3. 按照Java应用接入指南集成Apollo客户端

注意事项

  1. 快速启动方式仅适用于本地测试环境
  2. 生产环境请参考分布式部署指南
  3. 快速启动不支持环境添加功能
  4. 默认占用端口:8070、8080、8090,请确保这些端口可用

总结

通过本文的快速入门指南,开发者可以在本地快速搭建Apollo配置中心环境,体验配置管理、实时推送等核心功能。Apollo作为一款成熟的配置中心解决方案,能够有效解决微服务架构下的配置管理难题,建议开发者进一步探索其高级功能和生产环境部署方案。

apollo apolloconfig/apollo: 是一个分布式配置管理平台,可以方便地实现配置的统一管理和发布。该项目提供了一个简单易用的配置管理平台,可以方便地实现配置的统一管理和发布,同时支持多种配置格式和部署方式。 apollo 项目地址: https://gitcode.com/gh_mirrors/apoll/apollo

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

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

宣聪麟

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

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

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

打赏作者

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

抵扣说明:

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

余额充值