Apollo 服务器部署
@(Apollo)[apollo部署, 帮助]
文章目录
设置ali源,安装依赖
备份yum源
sudo cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
设置aliyun的yum源
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
添加EPEL源
sudo wget -P /etc/yum.repos.d/ http://mirrors.aliyun.com/repo/epel-7.repo
清理缓存,生成新缓存,执行yum更新
sudo yum clean all
sudo yum makecache
mysql 安装部署
- 配置YUM源:在MySQL官网中下载YUM源rpm安装包:http://dev.mysql.com/downloads/repo/yum/
下载mysql源安装包
wget http://dev.mysql.com/get/mysql57-community-release-el7-8.noarch.rpm
安装mysql源
sudo yum localinstall mysql57-community-release-el7-8.noarch.rpm
- 检查mysql源是否安装成功,出现以下即成功
- 修改vim /etc/yum.repos.d/mysql-community.repo源,改变默认安装的mysql版本。比如要安装5.6版本,将5.7源的enabled=1改成enabled=0。然后再将5.6源的enabled=0改成enabled=1即可。
yum repolist enabled | grep "mysql.*-community.*"
mysql-connectors-community/x86_64 MySQL Connectors Community 175
mysql-tools-community/x86_64 MySQL Tools Community 120
mysql57-community/x86_64 MySQL 5.7 Community Server 464
- 安装Mysql
yum install -y mysql-community-server
- 启动mysql服务
sudo systemctl start mysqld
- 查看mysql服务状态
[dengbiao@dengbiao ~]$ systemctl status mysqld
● mysqld.service - MySQL Server
Loaded: loaded (/usr/lib/systemd/system/mysqld.service; enabled; vendor preset: disabled)
Active: active (running) since 日 2020-11-29 08:55:43 CST; 7s ago
Docs: man:mysqld(8)
http://dev.mysql.com/doc/refman/en/using-systemd.html
Process: 2346 ExecStart=/usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid $MYSQLD_OPTS (code=exited, status=0/SUCCESS)
Process: 2291 ExecStartPre=/usr/bin/mysqld_pre_systemd (code=exited, status=0/SUCCESS)
Main PID: 2349 (mysqld)
Tasks: 27
Memory: 321.6M
CGroup: /system.slice/mysqld.service
└─2349 /usr/sbin/mysqld --daemonize --pid-file=/var/run/mysqld/mysqld.pid
11月 29 08:55:28 dengbiao systemd[1]: Starting MySQL Server...
11月 29 08:55:43 dengbiao systemd[1]: Started MySQL Server.
- 开机启动
sudo systemctl enable mysqld
sudo systemctl daemon-reload
- 修改root本地登录密码
- mysql安装完成之后,在/var/log/mysqld.log文件中给root生成了一个默认密码
sudo grep 'temporary password' /var/log/mysqld.log
2020-11-29T00:55:38.640733Z 1 [Note] A temporary password is generated for root@localhost: ZFH#Nu<Bj7kH
mysql -uroot -p
ALTER USER 'root'@'localhost' IDENTIFIED BY 'new_password';
-
mysql5.7默认安装了密码安全检查插件(validate_password),默认密码检查策略要求密码必须包含:大小写字母、数字和特殊符号,并且长度不能少于8位。否则会提示ERROR 1819 (HY000): Your password does not satisfy the current policy requirements错误
-
查看密码策略的相关信息:
show variables like '%password%';
- 修改密码策略(此步骤可忽略)
- 在/etc/my.cnf文件添加validate_password_policy配置:择0(LOW),1(MEDIUM),2(STRONG)其中一种,选择2需要提供密码字典文件
- 如果不需要密码策略,添加my.cnf文件中添加如下配置禁用即可
sudo vim /etc/my.conf
validate_password = off
systemctl restart mysqld
- 设置远程登录
mysql -uroot -p
use mysql;
# root 用户名 ,% 所有人都可以访问 ,password 密码
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%' IDENTIFIED BY 'new_password' WITH GRANT OPTION;
FLUSH PRIVILEGES;
service mysqld restart
jdk1.8 安装部署
sudo cp jdk-8u241-linux-x64.tar.gz /usr/local/
cd /usr/local
sudo tar -zxvf jdk-8u241-linux-x64.tar.gz
sudo vim /etc/profile
- 最后追加
…………
JAVA_HOME=/usr/local/jdk1.8.0_241
JRE_HOME=$JAVA_HOME/jre
CLASSPATH=.:$JAVA_HOME/lib/
PATH=$PATH:$JAVA_HOME/bin
- 刷新验证
[root@dengbiao local]# source /etc/profile
[root@dengbiao local]# java -version
java version "1.8.0_241"
Java(TM) SE Runtime Environment (build 1.8.0_241-b07)
Java HotSpot(TM) 64-Bit Server VM (build 25.241-b07, mixed mode)
maven安装部署
<mirror>
<id>aliyunmaven</id>
<mirrorOf>*</mirrorOf>
<name>阿里云公共仓库</name>
<url>https://maven.aliyun.com/repository/public</url>
</mirror>
cp apache-maven-3.3.9-bin.tar.gz /usr/local/
tar -zxvf apache-maven-3.3.9-bin.tar.gz
vim /etc/profile
ENV MAVEN_HOME=/usr/local/apache-maven-3.3.9
ENV PATH=$PATH:$JAVA_HOME/bin:$MAVEN_HOME/bin
source /etc/profile
mvn -v
Apache Maven 3.3.9 (bb52d8502b132ec0a5a3f4c09453c07478323dc5; 2015-11-11T00:41:47+08:00)
Maven home: /usr/local/apache-maven-3.3.9
Java version: 1.8.0_241, vendor: Oracle Corporation
Java home: /usr/local/jdk1.8.0_241/jre
Default locale: zh_CN, platform encoding: UTF-8
OS name: "linux", version: "3.10.0-1127.19.1.el7.x86_64", arch: "amd64", family: "unix"
apollo发布地址下载release包
部署apollo 版本是1.1.2
apollo发布地址下载release包
数据库导入
- 此次直接从联调环境导入即可
配置数据库连接
- 修改
ApolloConfigDB 数据库
中ServerConfig
表:
key=eureka.service.url,修改value=http://ip:8080/eureka/
# 解压
tar -zxvf apollo-1.1.2.tar.gz
# 配置数据库连接信息,修改源码包`apollo-1.1.2`中的`scripts/build.sh`文件
# apollo config db info
apollo_config_db_url=jdbc:mysql://ip:3306/ApolloConfigDB?characterEncoding=utf8
apollo_config_db_username=username
apollo_config_db_password=password
# apollo portal db info
apollo_portal_db_url=jdbc:mysql://ip:3306/ApolloPortalDB?characterEncoding=utf8
apollo_portal_db_username=username
apollo_portal_db_password=password
# meta server url, different environments should have different meta server addresses
dev_meta=http://ip:8080
fat_meta=http://fill-in-fat-meta-server:8080
uat_meta=http://fill-in-uat-meta-server:8080
pro_meta=http://fill-in-pro-meta-server:8080
-
修改
apollo-1.1.2/apollo-adminservice/src/main/resources
下的bootstrap.yml
文件中eureka.instance.hostname
和eureka.instance.preferIpAddress
的值 -
修改
apollo-1.1.2/apollo-configservice/src/main/resources
下的bootstrap.yml
文件中eureka.instance.hostname
和eureka.instance.preferIpAddress
的值 -
查询日志路径
apollo-adminservice、apollo-configservice、apollo-portal 日志路径分别在各自目录的`/src/main/scripts/startup.sh`中
-
创建日志目录
mkdir /opt/logs/100003171 mkdir /opt/logs/100003172 mkdir /opt/logs/100003173
构建
- 该脚本会依次打包apollo-configservice, apollo-adminservice, apollo-portal
chmod -R 777 apollo-1.1.2/
cd apollo-1.1.2
./scripts/build.sh start
-
获取apollo-configservice安装包:位于apollo-configservice/target/目录下的apollo-configservice-x.x.x-github.zip
-
获取apollo-adminservice安装包:位于apollo-adminservice/target/目录下的apollo-adminservice-x.x.x-github.zip
-
获取apollo-portal安装包:位于apollo-portal/target/目录下的apollo-portal-x.x.x-github.zip
部署Apollo服务端
-
注意执行顺序 :configservice、adminservice、portal
-
部署apollo-configservice:将对应环境的apollo-configservice-x.x.x-github.zip上传到服务器上,解压后执行
scripts/startup.sh
即可 -
部署apollo-adminservice:将对应环境的apollo-adminservice-x.x.x-github.zip上传到服务器上,解压后执行
scripts/startup.sh
即可 -
部署apollo-portal:将apollo-portal-x.x.x-github.zip上传到服务器上,解压后执行
scripts/startup.sh
即可 -
正常启动后,显示
Started [7197] Waiting for server startup.... 2020年 11月 29日 星期日 13:16:18 CST Server started in 20 seconds
检查
可以使用telnet
检查
浏览器打开:`172.24.100.68 8070`,访问Apollo WEB界面,即可
浏览器打开:`172.24.100.68 8080`,访问Eureka的界面,即可
浏览器打开:`172.24.100.68 8090`,显示`apollo-adminservice`内容,即可