1.linux部署apollo

1.1.环境准备

 jdk : 1.8+      mysql  5.6.5+

1.2.下载上传到服务器

 两种方式:

1.2.1.下载源码自己编译(需要修改源码的可以选择)

          https://github.com/ctripcorp/apollo

1.2.2.下载官方编译好的

          https://github.com/ctripcorp/apollo/releases

我选择的是第二种,本地下载这三个文件:
在这里插入图片描述
新建一个apollo目录,在apollo下新建apollo-adminservice,apollo-configservice,apollo-portal三个目录,将三个压缩包分别上传到对应的文件夹下面,分别解压后删除压缩包,解压后的目录结构:

解压命令:unzip xxx.zip

在这里插入图片描述

1.3.下载sql文件,生成数据库

地址:https://github.com/nobodyiam/apollo-build-scripts/tree/master/sql
下载两个数据库文件并加载到自己的数据库上:
在这里插入图片描述

1.4.修改配置

1.4.1.分别修改三个服务下的数据连接配置文件 /config/application-github.properties

在这里插入图片描述

1.4.2.分别修改三个服务下的启动端口号配置文件 /scripts/startup.sh(可选)

三个服务默认端口号:
apollo-adminservice:8090;
apollo-configservice:8080;
apollo-portal:8070;
我修改为:
apollo-adminservice:8001;
apollo-configservice:8002;
apollo-portal:8003;
在这里插入图片描述

1.4.3.修改apollo-portal服务的下的meta配置:apollo-portal/config/apollo-env.properties

这里的地址是apollo-configservice的服务地址,分别是不同环境下的服务地址,这里我只配置了(开发-dev)环境下的地址。(服务器ip+端口)
在这里插入图片描述

1.4.4.修改数据库中的meta地址

修改apolloconfigdb数据库中serverconfig表中的eureka.service.url:其中的地址为apollo-configservice的服务地址:
在这里插入图片描述

1.5.在apollo目录下编写启动start.sh和关闭shutdown.sh脚本

start.sh:

#!/bin/bash
/usr/apollo/apollo-configservice/scripts/startup.sh
/usr/apollo/apollo-adminservice/scripts/startup.sh
/usr/apollo/apollo-portal/scripts/startup.sh

shutdown.sh

#!/bin/bash
/usr/apollo/apollo-adminservice/scripts/shutdown.sh
/usr/apollo/apollo-configservice/scripts/shutdown.sh
/usr/apollo/apollo-portal/scripts/shutdown.sh

在这里插入图片描述

1.6.启动服务访问apollo

运行start.sh,启动三个服务后:输入如下地址
http://自己的ip地址:8003/
这是portal的服务地址(注意自己修改的端口号)

在这里插入图片描述
账号:apollo,密码:admin;
在这里插入图片描述

2.springBoot整合apollo并获取参数

2.1.项目引入apollo依赖

 <dependency>
            <groupId>com.ctrip.framework.apollo</groupId>
            <artifactId>apollo-client</artifactId>
            <version>1.4.0</version>
 </dependency>

2.2.apollo发布配置

新建项目:
在这里插入图片描述
在这里插入图片描述
点击新增配置:
在这里插入图片描述
填写配置点击提交:
在这里插入图片描述
点击发布:
在这里插入图片描述
在这里插入图片描述

2.2添加eureka注册地址(网络策略)

分布式部署的时候,本地访问服务器上的Apollo,apollo-configservice和apollo-adminservice需要把自己的IP和端口注册到Meta Server(apollo-configservice本身)。
参考官官方给的解决方案:

https://github.com/ctripcorp/apollo/wiki/%E5%88%86%E5%B8%83%E5%BC%8F%E9%83%A8%E7%BD%B2%E6%8C%87%E5%8D%97

在这里插入图片描述
解决步骤:
在这里插入图片描述

在服务器下的admin和config服务的startup.sh分别添加:

-Deureka.instance.ip-address=服务器ip地址

添加在export JAVA_OPTS的下面:
在这里插入图片描述
添加之后,重启三个服务,用之前写好的shutdown.sh关闭,start.sh启动。

2.3.application.yml

spring:
  application:
    name: apollo-test

server:
  port: 80

#apollo相关配置
# apollo 相关配置
app:
  id: apollo-test # 与 Apollo 配置中心中的 AppId 一致

apollo:
  meta: http://自己服务器ip地址:8002 # Apollo 中的 Eureka 注册中心地址
  #cluster:  # 指定 Apollo 集群,默认为 default,相同集群实例使用对应集群的配置
  #cacheDir:  # 配置缓存目录,网络不可用时任然可提供配置服务
  bootstrap:
    enable: true # 启用 apollo

2.4.启动类添加@EnableApolloConfig注解:

在这里插入图片描述

2.5.controller获取:

在这里插入图片描述
访问得到applo配置:
在这里插入图片描述

GitHub 加速计划 / li / linux-dash
10.39 K
1.2 K
下载
A beautiful web dashboard for Linux
最近提交(Master分支:2 个月前 )
186a802e added ecosystem file for PM2 4 年前
5def40a3 Add host customization support for the NodeJS version 4 年前
Logo

旨在为数千万中国开发者提供一个无缝且高效的云端环境,以支持学习、使用和贡献开源项目。

更多推荐