开源配置中心Apollo + SpringCloud生产环境搭建

开源配置中心Apollo

在这里插入图片描述

Apollo概述

  • pollo(阿波罗)是携程框架部门研发的开源配置管理中心

  • 能够集中化管理应用不同环境、不同集群的配置,
    配置修改后能够实时推送到应用端,并且具备规范的权限、流程治理等特性。

  • Apollo从设计之初就立志于成为一个有治理能力的配置发布平台,目前提供了以下的特性:

    • 统一管理不同环境、不同集群的配置:
      Apollo提供了一个统一界面集中式管理不同环境(environment)、 不同集群(cluster)、
      不同命名空间(namespace)的配置。
      同一份代码部署在不同的集群,可以有不同的配置,
      比如zookeeper的地址等通过命名空间(namespace)可以很方便地支持多个不同应用共享同一份配置,同时还允许应用对共享的配置进行覆盖
    • 配置修改实时生效(热发布)
    • 版本发布管理
      所有的配置发布都有版本概念,从而可以方便地支持配置的回滚
    • 灰度发布
      点了发布后,只对部分应用实例生效,等观察一段时间没问题后,再推给所有应用实例
    • 客户端配置信息监控
      可以在界面上方便地看到配置在被哪些实例使用
    • 提供Java和.Net原生客户端
      提供了Java和.Net的原生客户端,方便应用集成
      支持Spring Placeholder, Annotation和Spring Boot方便应用
    • 提供开放平台API
      Apollo自身提供了比较完善的统一配置管理界面,支持多环境、多数据中心配置管理、权限、流程治理等特性。
    • 部署简单
      配置中心作为基础服务,可用性要求非常高,这就要求Apollo对外部依赖尽可能地少
      目前唯一的外部依赖是MySQL,所以部署非常简单

搭建Apollo服务端

安装环境:Linux 这里就不细致讲解了...

  • 采用桥连接进行网络通信!

下载Apollo: apollo-quick-start-1.5.0.zip

配置数据库

  • Apollo服务端共需要两个数据库: ApolloPortalDBApolloConfigDB
  • 我们把数据库、表的创建和样例数据都分别准备了sql文件,只需要导入数据库即可。

本人的linux 已经装好了mysql 并且允许远程配置(linux MySQL与 windows 远程通信连接! )

开启mysql远程配置: 为了方便操作linux的mysql 连接windows的数据库使用!

linux中操作!

#事前建议关闭防火墙!
#查看防火墙状态
firewall-cmd --state
#停止firewall
systemctl stop firewalld.service
#禁止firewall开机启动
systemctl disable firewalld.service 

#启动mysql  mysql目录下:
bin/mysqld_safe --user=mysql &		#这里回车后会停留,直接再按回车即可
#登录mysql
bin/mysql -uroot -p   

#mysql远程配置:
#										用户				  密码	
mysql > grant all privileges on *.* to root@'%' identified by 'ok' with grant option;
mysql > flush privileges;			#刷新
#退出
mysql > exit

#在线安装一些配置, 需要联网
yum install zip unzip curl

Windows 测试远程连接! 连接上了就可以远程操作数据库了!
在这里插入图片描述
阿波罗安装目录下: copy 执行!

在这里插入图片描述

安装Apollo 注意安装目录,根据自己情况决定!

工具上传至,Linux中

解压缩
upzip appllo-quick-start-1.5.0.zip

  • 删除压缩文件:rm -rf appllo-quick-start-1.5.0.zip
  • 起别名 方便操作而已,可以不干! ``

修改配置文件 demo.sh 阿波罗配置数据库文件!
vi demo.sh
设置访问数据库的密码…
在这里插入图片描述

测试

直接安装目录下:./demo.sh start
启动时候比较慢, 因为内部要启动两个应用…
在这里插入图片描述

接下来就可以进行访问了!
在这里插入图片描述


Apollo 使用:

登录Apollo 输入默认用户名密码apollo/admin即可登录到应用中

在这里插入图片描述
在这里插入图片描述

随便创建一个要被管理配置的 项目:

controller .yml 测试!
在这里插入图片描述

加入依赖:

pom.xml

    <!-- 引入阿波罗依赖! -->
    <dependencies>
        <dependency>
            <groupId>com.ctrip.framework.apollo</groupId>
            <artifactId>apollo-client</artifactId>
            <version>1.1.0</version>
        </dependency>
    </dependencies>

.yml 配置

.yml

#阿波罗配置
name: aaa   	# 用于测试更改的属性!
#阿波罗配置!
apollo:
  bootstrap:
    enabled: true
  meta: http://192.168.1.110:8080
app:
  id: apollo 	# 输入创建的appid

项目设置

在这里插入图片描述

阿波罗操作:

新增 修改 提交 发布!
在这里插入图片描述

测试运行:

在这里插入图片描述

SpringCloud生产环境搭建

在这里插入图片描述
大致分为三个板块

  • 独立服务
  • api
  • server

其中像是eureka、gateway等就是独立服务,
而Netflix Fegin就是api主要做程序之间通讯的对外暴露接口以及熔断处理等操作,而server主要用作调用持久层、业务逻辑等。
相互嵌套依赖调用!... 注意依赖注解的使用即可:

  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

Java.慈祥

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

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

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

打赏作者

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

抵扣说明:

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

余额充值