分布式安装配置中心Apollo
参考
docker安装mysql5.7
-
安装docker
- 参考:docker安装
-
执行命令:curl -fsSL https://get.docker.com | bash -s docker --mirror Aliyun
- 验证:docker -v #查看docker版本号
-
创建本地存储数据目录:
mkdir -p /wmm/docker_data/mysql/logs mkdir -p /wmm/docker_data/mysql/data mkdir -p /wmm/docker_data/mysql/conf
-
创建mysql:
-
安装并创建mysql容器:
docker run -p 33306:3306 --name mysql01 \
-v /wmm/docker_data/mysql/conf:/etc/mysql/conf.d \
-v /wmm/docker_data/mysql/data:/var/lib/mysql \
-v /wmm/docker_data/mysql/logs:/logs \
-e MYSQL_ROOT_PASSWORD=**** \
-d mysql:5.7
- 查看mysql容器日志
docker logs 'mysql01'
- 进入容器:
docker exec -it 'mysql01' /bin/bash
(1)mysql登录:
mysql -uroot -p**** --default-character-set=utf8
(2)修改密码:
use mysq
update user set authentication_string=password('****') where user='root' ;
flush privileges;
- 尝试远程登录:
mysql -h 192.168.0.1 -uroot -p -P 33306
登录成功输入“exit”退出。
安装Fastgithub加速github下载
- 下载:
wget https://github.com/dotnetcore/FastGithub/releases/download/2.1.4/fastgithub_linux-x64.zip
# 解压
unzip fastgithub_linux-x64.zip
# 运行
nohup ./fastgithub_linux-x64/fastgithub &
初始化Apollo配置
- 分别下载如下初始化脚本:
apolloportaldb.sql
apolloportaldb.sql - 导入脚本
mysql -h 192.168.0.1 -uroot -p -P 33306 < apolloportaldb.sql
mysql -h 192.168.0.1 -uroot -p -P 33306 < apolloconfigdb.sql
-- 验证
select `Id`, `AppId`, `Name` from ApolloPortalDB.App;
select `NamespaceId`, `Key`, `Value`, `Comment` from ApolloConfigDB.Item;
- 修改Eurka地址
update ApolloConfigDB.ServerConfig set Value= 'http://192.168.0.2:8080/eureka/,http://192.168.0.1:8080/eureka/ ' where `Key`='eureka.service.url';
在服务器192.168.0.2安装Apollo
- 下载Apollo
wget https://github.com/apolloconfig/apollo/releases/download/v2.1.0/apollo-adminservice-2.1.0-github.zip
wget https://github.com/apolloconfig/apollo/releases/download/v2.1.0/apollo-configservice-2.1.0-github.zip
wget https://github.com/apolloconfig/apollo/releases/download/v2.1.0/apollo-portal-2.1.0-github.zip
- 解压
unzip apollo-portal-2.1.0-github.zip -d ./apollo-portal-2.1.0-github/
unzip apollo-configservice-2.1.0-github.zip -d ./apollo-configservice-2.1.0-github/
unzip apollo-adminservice-2.1.0-github.zip -d ./apollo-adminservice-2.1.0-github/
- 配置数据库
vim ./apollo-portal-2.1.0-github/config/application-github.properties
如:
spring.datasource.url = jdbc:mysql://192.168.0.1:33306/ApolloPortalDB?characterEncoding=utf8
spring.datasource.username = root
spring.datasource.password = ****
vim ./apollo-configservice-2.1.0-github/config/application-github.properties
vim ./apollo-adminservice-2.1.0-github/config/application-github.properties
spring.datasource.url = jdbc:mysql://192.168.0.1:33306/ApolloConfigDB?characterEncoding=utf8
spring.datasource.username = root
spring.datasource.password = ****
- 配置参数
vim ./apollo-portal-2.1.0-github/config/apollo-env.properties
修改为:
local.meta=http://192.168.0.2:8080
dev.meta=http://192.168.0.2:8080,http://192.168.0.1:8080
- 修改启动参数
vim ./apollo-configservice-2.1.0-github/scripts/startup.sh
在JAVA_OPTS添加参数:
# eureka.instance.ip-address 指定要注册的ip
# eureka.instance.homePageUrl 指定要注册的url
# eureka.instance.preferIpAddress 以IP地址注册到服务中心,相互注册使用IP地址
export JAVA_OPTS="$JAVA_OPTS -Deureka.instance.ip-address=192.168.0.2 -Deureka.instance.homePageUrl=http://192.168.0.2:8080 -Deureka.instance.preferIpAddress=true"
vim ./apollo-adminservice-2.1.0-github/scripts/startup.sh
在JAVA_OPTS添加参数:
# eureka.instance.ip-address 指定要注册的ip
# eureka.instance.homePageUrl 指定要注册的url
# eureka.instance.preferIpAddress 以IP地址注册到服务中心,相互注册使用IP地址
export JAVA_OPTS="$JAVA_OPTS -Deureka.instance.ip-address=192.168.0.2 -Deureka.instance.homePageUrl=http://192.168.0.2:8090 -Deureka.instance.preferIpAddress=true"
在服务器192.168.0.1安装Apollo
- 按照以上步骤安装
apollo-configservice-2.1.0、apollo-portal-2.1.0 - 按照上述步骤修改数据库配置
- 修改启动参数
vim ./apollo-adminservice-2.1.0-github/scripts/startup.sh
在JAVA_OPTS添加参数:
export JAVA_OPTS="$JAVA_OPTS -Deureka.instance.ip-address=192.168.0.1 -Deureka.instance.homePageUrl=http://192.168.0.1:8090 -Deureka.instance.preferIpAddress=true"
vim ./apollo-configservice-2.1.0-github/scripts/startup.sh
在JAVA_OPTS添加参数:
export JAVA_OPTS="$JAVA_OPTS -Deureka.instance.ip-address=192.168.0.1 -Deureka.instance.homePageUrl=http://192.168.0.1:8080 -Deureka.instance.preferIpAddress=true"
启动Apollo
- 在服务器192.168.0.2启动:
./apollo-adminservice-2.1.0-github/scripts/startup.sh
./apollo-configservice-2.1.0-github/scripts/startup.sh
./apollo-portal-2.1.0-github/scripts/startup.sh
- 在服务器192.168.0.1启动:
./apollo-adminservice-2.1.0-github/scripts/startup.sh
./apollo-configservice-2.1.0-github/scripts/startup.sh
登录Portal
- http://192.168.0.2:8070/ 默认用户名/密码:apollo/admin