首页 > 其他分享 >Apollo本地快速部署

Apollo本地快速部署

时间:2023-01-09 17:24:14浏览次数:53  
标签:Apollo service 部署 db start 本地 quick apollo

GitHub项目地址

Gitee项目地址

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

Apollo 与 properties 配置文件的功能相同,都可以设置参数。Apollo 的优点在于,可以实时修改参数的值,而不需要重启项目。

1 环境准备

需要 Java 1.8 及以上,MySQL 5.6 及以上的版本。

MySQL安装配置方式:https://mp.weixin.qq.com/s/ISCjsIpmccVnuvXPkiFLMw

如果只是本地测试的话,推荐使用 GitHub 上的开源项目 Apollo Quick Start;

安装包下载地址:https://pan.baidu.com/s/11dYV5x1Qu7svEGaJLShoqQ?pwd=6666

提取码:6666

2 SQL 导入

下载并解压安装包 apollo-quick-start-2.0.1.zip,可以看到目录下有 sql 文件夹,里面有 apolloconfigdb.sql 和 apolloportaldb.sql 两个文件,需要将这两个文件导入 MySQL中。

打开 win 菜单中的 MySQL 8.0 Command Line Client - Unicode 命令,

运行:

source D:\Apollo\apollo-quick-start-2.0.1\sql\apolloconfigdb.sql
source D:\Apollo\apollo-quick-start-2.0.1\sql\apolloportaldb.sql

D:\Apollo 是我存放 apollo-quick-start-2.0.1 文件夹的路径。

即可完成导入。

导入成功后,可以通过执行以下sql语句来验证:

select `NamespaceId`, `Key`, `Value`, `Comment` from ApolloConfigDB.Item;

有以下输出,表示导入成功。

3 启动 Apollo

编辑 apollo-quick-start-2.0.1文件夹下的 demo.sh,修改 ApolloPortalDB 和 ApolloConfigDB 相关的数据库连接配置信息。

#apollo config db info
apollo_config_db_url=jdbc:mysql://localhost:3306/ApolloConfigDB?characterEncoding=utf8
apollo_config_db_username=root
apollo_config_db_password=root

# apollo portal db info
apollo_portal_db_url=jdbc:mysql://localhost:3306/ApolloPortalDB?characterEncoding=utf8
apollo_portal_db_username=root
apollo_portal_db_password=root

我的数据库的账号密码均为 root。

找到 demo.sh 的第72行,将 cd "${0%/*}" 改为当前路径:

cd D:\\Apollo\\apollo-quick-start-2.0.1\\

打开 win 菜单中的 Git Bash,运行 demo.sh 。

D:\\Apollo\\apollo-quick-start-2.0.1\\demo.sh start

等待运行一段时间后,当看到如下输出,就说明启动成功了。

==== starting service ====
Service logging file is ./service/apollo-service.log
Started [10768]
Waiting for config service startup.......
Config service started. You may visit http://localhost:8080 for service status now!
Waiting for admin service startup....
Admin service started
==== starting portal ====
Portal logging file is ./portal/apollo-portal.log
Started [10846]
Waiting for portal startup......
Portal started. You can visit http://localhost:8070 now!

访问 http://localhost:8070 ,输入用户名 apollo,密码 admin,即可登录。

停止运行命令:

D:\\Apollo\\apollo-quick-start-2.0.1\\demo.sh stop

需要注意,apollo 端口号为8070,但在 Java 工程的 properties 中, apollo.meta设置的端口号应为 Eureka 的端口号8080。

4 使用 Apollo

点击创建应用:

输入自定义的参数:

即可创建成功。然后在新创建的应用中增加配置:

5 项目实例

下载一个测试项目 learn-apollo

GitHub地址:https://github.com/Snowstorm0/learn-apollo

Gitee地址:https://gitee.com/Snowstorm0/learn-apollo

在运行项目之前需要修改 resource/application.properties 中 apollo.meta 的值,将 localhost 替换为 apollo 的地址,端口号为 Eureka 的端口号(默认为8080)。

在 Apollo 中新增并发布如下三个参数:

learn-apollo 是一个定时任务,可以每隔5秒输出一次apollo的参数信息。

运行该项目,输出:

paramStr:str1

然后在apollo中修改参数的值,将str1改为str2

不需要重启项目,此时项目会输出参数更新的日志信息:

[Apollo-Config-1] c.f.a.s.p.AutoUpdateConfigChangeListener : 
Auto update apollo changed value successfully, 
new value: paramStr7, key: param.paramStr, beanName: myService, 
field: com.spring.boot.service.MyService.paramStr

项目的输出也变了:

paramStr:str2

 
 

学习更多编程知识,请关注我的公众号:

代码的路

标签:Apollo,service,部署,db,start,本地,quick,apollo
From: https://www.cnblogs.com/zbzcDZF/p/17037634.html

相关文章

  • Flink安装部署
    Flink安装部署local本地模式-了解原理操作1.下载安装包https://archive.apache.org/dist/flink/2.上传flink-1.13.1-bin-scala_2.12.tgz到node1的指定目录3.解压t......
  • maven打包加入本地jar包案例
    <build><plugins><plugin><groupId>org.springframework.boot</groupId><artifactId>spring-boot-maven-p......
  • docker部署rocketmq
     dockerpullfoxiswho/rocketmq:server-4.7.0 (拉取镜像)dockerpullfoxiswho/rocketmq:broker-4.7.0(拉取镜像) mkdir/opt/rocketmq-server (创建mq使用目录)mkd......
  • npm link 本地包调试 使用未发布包
    创建npm包软链接只需两步。第一步将未发布的包设置为全局包,在包根目录下,执行:npmlink在一个包文件夹内执行npmlink将在全局文件{prefix}/lib/node_modules/内......
  • 部署 anolisOS 8.6
    官方下载地址:https://openanolis.cn/download本次下载镜像:AnolisOS-8.6-x86_64-minimal.iso(dvd的太大,10G)安装界面友好,按步骤往下走就行了#配置网络nmtuivi/etc/s......
  • vue项目部署到IIS服务器
    步骤一:复制文件把build之后的文件(dist文件夹)拷贝到IIS存放网站文件的目录步骤二:在IIS中新建站点步骤三:下载安装模块:urlrewrite传送门:https://www.iis.net/downloads/m......
  • IIS部署https网站使用自签名证书
    转自:http://www.nat123.com/pages_8_751.jsp IIS部署https网站使用自签名证书及绑定域名的参考图文。(内网配置好https网站后可以使用nat123映射将网站映射到外网访问)1,......
  • k8s ratel一键部署
    Ratel是一个Kubernetes多集群资源管理平台,基于管理Kubernetes的资源开发,可以管理Kubernetes的Deployment、DaemonSet、StatefulSet、Service、Ingress、Pods、Nodes、Cron......
  • 服务器centos开发环境部署-项目上线
    1购买云服务器项目上线,想给外网的人使用,需要有一台服务器,一个公网地址。我们可以使用云服务器,有阿里云,腾讯云,华为云等,一般有一个月免费试用。阿里云服务器:https://ecs.c......
  • 数据分析读取本地文件案例的csv文件
    数据分析读取本地文件案例的csv文件: 有一组关于狗的名字的统计数据,为了观察这组数据情况,该如何读取?https://files.cnblogs.com/files/blogs/761321/dogNames2.rar?t=1673......