分布式配置中心

剥离配置文件,实现动态修改,自动更新。

【假设没有分布式配置中心,修改配置文件后都需要重启服务,对于数量庞多的微服务开发来说,就会非常繁琐】

分布式配置中心有哪些

  • disconf(依赖zookeeper)
  • zookeeper
  • diamond (阿里巴巴)
  • Apollo
  • Redis
  • xxl-job

为什么选择Apollo

Apollo除了功能完备之外,在国内的普及度也相当广泛,也就意味着国内Apollo的生态非常活跃。虽然中国式过马路的行为并不提倡,但群众的眼睛有时还是雪亮的。

实战

环境准备:

  • 阿里云CentOS7.6
  • jdk1.8

安装jdk1.8

yum search jdk
yum install java-1.8.0-openjdk.x86_64(可选)
java -version

安装MySQL

  • 配置yum源
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm

yum localinstall mysql57-community-release-el7-8.noarch.rpm
  • 安装mysql
yum install mysql-community-server
  • 启动mysql
systemctl start mysqld

systemctl restart mysqld
  • 查看启动状态:
systemctl status mysqld
  • 设置开机自启
systemctl enable mysqld
systemctl daemon-reload
  • 查看默认生成密码
grep 'temporary password' /var/log/mysqld.log

  • 登录修改密码
mysql -uroot -p

ALTER USER 'root'@'localhost' IDENTIFIED BY 'NoPassword564925080!'; 

mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误.

  • 授权远程登录用户
GRANT ALL PRIVILEGES ON *.* TO 'userhq'@'%' IDENTIFIED BY 'NoPassword564925080!' WITH GRANT OPTION;

flush privileges;

开放3306端口:

使用SQLyog远程连接:

下载安装包

https://github.com/ctripcorp/apollo/wiki/Quick-Start

推荐用百度网盘加速器下载:http://pandownload.com/

按照文档创建数据库

文档:https://github.com/ctripcorp/apollo/wiki/Quick-Start

- ApolloPortalDB

- ApolloConfigDB

  • 导入SQL语句

配置数据库连接信息,修改demo.sh

服务器IP或者虚拟机IP,另外就是用户名和密码

将修改好的文件夹上传到服务器

运行demo.sh脚本

./demo.sh start

如果无法运行可能是因为没有添加可执行权限:

chmod +x demo.sh 

如果启动失败,可以尝试将数据库连接的用户名密码改为授权远程登录的用户密码。比如上文的userhq。

开启服务器8070端口:

访问:http://47.103.6.247:8070

默认用户名为apollo

密码为admin

SUCCESS

分布式配置中心Apollo——QuickStart的更多相关文章

  1. 实践分布式配置中心Apollo

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

  2. 分布式配置中心Apollo

    1,什么是分布式配置中心 项目中配置文件比较繁杂,而且不同环境的不同配置修改相对频繁,每次发布都需要对应修改配置,如果配置出现错误,需要重新打包发布,时间成本较高,因此需要做统一的分布式注册中心,能做 ...

  3. spring cloud 集成分布式配置中心 apollo(单机部署apollo)

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

  4. Apollo系列(一):分布式配置中心Apollo安装(Linux、Docker)

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

  5. 携程开源分布式配置系统Apollo服务端是如何实时更新配置的?

    引言 前面有写过一篇<分布式配置中心apollo是如何实时感知配置被修改>,也就是客户端client是如何知道配置被修改了,有不少读者私信我你既然说了client端是如何感知的,那服务端又 ...

  6. Apollo 分布式配置中心

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

  7. Apollo分布式配置中心部署以及使用

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

  8. 分布式配置中心 携程(apollo)

    1.传统配置文件与分布式配置文件区别 传统配置文件:如果修改了配置文件,需要重新打包发布,重新发布服务,而且每个环境的变更配置文件,比较繁琐. 分布式配置文件:将配置文件注册到配置中心上去,可以使用分 ...

  9. 从0开始用spring boot编写分布式配置中心-peppa

    欢迎大家一起来编写peppa github地址: github 交流群: 目前市面上比较流行的分布式配置中心有disconf.apollo,用起来还是比较方便的,然而由于在权限管理这块做得不够好,导致 ...

随机推荐

  1. fjnuoj 1004 游戏 (博弈论)

    思路: N 为1或质数 先手必赢 N 为质数X质数的积 后手必赢 先手取两个质数的积则赢 #include #include #define ll long long using namespace ...

  2. 一个简单的JS倒计时

    看到很多商城都是抢购倒计时的功能,今天闲来无事做了个倒计时.全当学习JS. 主要思路:主要用到Date对象,声明一个变量获取当前时间,在声明一个变量获取结束时间,结束时间-当前时间=剩余时间(倒计时) ...

  3. libvirt-qemu-TLS加密虚拟机传输实例分析

    说明 TLS(Transport Layer Security Protocol),即安全传输层协议,其核心是加密两台计算机之间的通信.libvirt中使用TLS,可以实现libvirt的安全加密.可 ...

  4. 计时器(Chronometer)、标签(TabHost)

    计时器(Chronometer) 方法 描述 public Chronometer(Context context)[构造方法] 创建Chronometer对象 public long getBase ...

  5. context创建过程解析(二)之deployWARs

    HostConfig.deployApps() //在监听到start事件类型,也就是StandardHost调用startInternal protected void deployApps() { ...

  6. RobotFramework_4.SeleniumLibrary操作(二)

    *:first-child { margin-top: 0 !important; } body>*:last-child { margin-bottom: 0 !important; } /* ...

  7. DotSpatial安装、类库引用方法

    解决VS工具栏添加DotSpatial后,控件不全问题. 注意注意注意:不要使用Nuget安装DotSpatial!!! 我在Nuget上把所有DotSpatial的版本都安装了一遍,都缺少控件,然后 ...

  8. logging模块 旗舰版

    函数式简单配置 import logging logging.debug('debug message') logging.info('info message') logging.warning(' ...

  9. luogu1373_小a和uim之大逃离 多维dp

    传送门 巧妙之处在于dp的设计只用设计差值即可,因此不会mle,枚举的顺序问题也解决了 #include <bits/stdc++.h> using namespace std; #def ...

  10. SpringBoot配置web访问H2

    [**前情提要**]最近开始搭建博客,在本地调试的时候使用的数据库是h2,但是调试的时候需要查看数据库,本文也由此而来. --- 下面是我用到的方法: 1. 使用IDEA的Database连接工具,具 ...