Apollo 配置中心初探
发布日期:2021-07-01 03:46:59 浏览次数:2 分类:技术文章

本文共 2955 字,大约阅读时间需要 9 分钟。

点击上方“民工哥技术之路”选择“星标

每天为你分享不一样的干货!

 

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

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

作者(宋顺)对Apollo的介绍如下 :

https://github.com/ctripcorp/apollo/wiki/Apollo

 本着快速学习的心态,使用 docker 的方式快速部署Apollo,从而快速的了解Apollo。其实,最好的学习途径是去官网查看官方文档,但是官网写的内容较多,阅读起来比较耗时费劲。

     

一、 准备工作

1.1 安装Docker

具体步骤如下:

1.1.1 安装必要的一些系统工具 # yum install -y yum-utils device-mapper-persistent-data lvm2 1.1.2 添加docker yum源信息 # yum-config-manager --add-repo \ http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo 1.1.3 更新并安装 Docker-CE # yum makecache fast # yum -y install docker-ce 1.1.4 指定docker私有库 # sed -i "s/^ExecStart./#&/" /lib/systemd/system/docker.service # sed -i '/TimeoutSec=0/i\ExecStart=/usr/bin/dockerd \ --insecure-registry=harbor.xxx.xxx.xxx' \ /lib/systemd/system/docker.service # systemctl daemon-reload 1.1.5 开启Docker服务 # systemctl start docker # docker login -u admin -p Harbor2345 harbor.xxx.xxx.xxx 1.1.6 通过以下命令测试是否成功安装 # docker -v 为了加速Docker镜像下载,建议配置镜像加速器。 1.1.7 安装 docker-compose # curl -L https://get.daocloud.io/docker/compose/releases/download/1.22.0/docker-compose-`uname -s`-`uname -m` > /usr/local/bin/docker-compose # chmod +x /usr/local/bin/docker-compose 1.1.8 安装 git # yum -y install git 1.2 下载Docker Quick Start配置文件 确保 docker-quick-start 文件夹已经在本地存在,如果本地已经clone过Apollo的代码,则可以跳过此步骤。 # git clone https://github.com/nobodyiam/apollo-build-scripts apollo 源码(源码里边包含有 docker-quick-start 文件夹的) # git clone https://github.com/ctripcorp/apollo.git

二、启动Apollo配置中心

在 docker-quick-start 目录下执行 docker-compose up,第一次执行会触发下载镜像等操作,需要耐心等待一些时间。

搜索所有apollo-quick-start开头的日志,看到以下日志说明启动成功:

 注1:数据库的端口映射为13306,所以如果希望在宿主机上访问数据库,可以通过localhost:13306,用户名是root,密码留空。

 注2:如要查看更多服务的日志,可以通过docker exec -it apollo-quick-start bash登录, 然后到/apollo-quick-start/service和/apollo-quick-start/portal下查看日志信息。

注3:docker-compose.yml 文件内容如下

    

三、使用Apollo配置中心

3.1 使用样例项目

3.1.1 查看样例配置

http://ip:8080 查看微服务注册到 Eureka 的详情

 http://ip:8070 登录 Apollo 系统,默认账密:apollo/admin。Quick Start集成了Spring Security简单认证。

点击SampleApp进入配置界面,可以看到当前有一个配置timeout=100

如果提示系统出错,请重试或联系系统负责人,请稍后几秒钟重试一下,因为通过Eureka注册的服务有一个刷新的延时。

3.1.2 运行客户端程序

 在Docker环境下需要通过下面的命令运行Demo客户端:

# docker exec -i apollo-quick-start /apollo-quick-start/demo.sh client

 客户端程序很简单,就是用户输入一个 key 的名字,客户端程序会输出这个key对应的值。如果没找到这个key,则输出undefined。同时,客户端还会监听配置变化事件,一旦有变化就会输出变化的配置信息。

启动Demo客户端,忽略前面的调试信息,可以看到如下提示:

Apollo Config Demo. Please input key to get the value. Input quit to exit. >      输入timeout,会看到如下信息: > timeout > [SimpleApolloConfigDemo] Loading key : timeout with value: 100

3.1.3 修改配置并发布

1. 在配置界面点击timeout这一项的编辑按钮 

2. 在弹出框中把值改成200并提交

3. 点击发布按钮,并填写发布信息,点击发布。

3.1.4 客户端查看修改后的值

 如果客户端一直在运行的话,在配置发布后就会监听到配置变化,并输出修改的配置信息:

> Changes for namespace application Change - key: timeout, oldValue: 100, newValue: 200, changeType: MODIFIED      再次输入timeout查看对应的值,会看到如下信息: > timeout Loading key : timeout with value: 200

作者简介:严锋,90后技术人,目前就职于500强保险企业互联网业务版块,主要负责运维技术架构,自动化运维体系建立等工作。

转载地址:https://mingongge.blog.csdn.net/article/details/103415152 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:12月DB-Engines数据库排名,你猜谁会是第一?
下一篇:工具推荐|不用任何软件,如何成为P图大师?

发表评论

最新留言

很好
[***.229.124.182]2024年04月08日 13时33分35秒