Centos6上面安装elasticsearc数据库的集群java
安装的是6.3.2版本,安装以前首先要先安装jdk1.8版本node
安装以前首先须要关闭防火墙mysql
Centos6 sudo service iptables start/stop/status sudo chkconfig iptables off/--list –永久关闭防火墙 Centos7 sudo systemctl stop/start/status firewalld.service sudo systemctl disable firewalld.service –永久关闭防火墙
接下来关闭selinuxlinux
查看Selinux的状态 /usr/sbin/sestatus –v SELinux status: enabled 若是SELinux status参数为enabled即为开启状态,须要进行下面的关闭操做。 关闭SElinux sudo vim /etc/selinux/config 在文档中找到SELINUX,将SELINUX的值设置为disabled,即: SELINUX=disabled 在内存中关闭SElinux setenforce 0 检查内存中状态 getenforce 若是日志显示结果为disabled或者permissive,说明操做已经成功。
咱们将elasticserach解压到/opt/elasticsearch目录git
mkdir -p /opt/elasticsearch tar -zxvf elasticsearch-6.3.2.tar.gz -C /opt/elasticsearch
Elasearch的安装目录为:/opt/elasticsearch/elasticsearch-6.3.2程序员
如今咱们在上面的三台机器上面安装elasticsearch的集群环境github
在192.168.42.113这台机器上面修改elasticSearch的配置文件修改elasticsearch.yml配置文件web
修改配置文件的内容以下:在elasticsearch.yml配置文件的末尾增长下面的内容:spring
cluster.name: tipdm-es #es集群名称 node.name: es-node3 #es节点名称,每一个节点的名称不能相同 node.master: true #指定该节点是否有资格被选举成为master,默认是true node.data: true #指定该节点是否存储索引数据,默认为true。 network.host: 192.168.43.113 #节点的ip地址 #设置集群中master节点的初始列表,能够经过这些节点来自动发现新加入集群的节点 discovery.zen.ping.unicast.hosts: ["192.168.43.112", "192.168.43.113", "192.168.43.111"] #设置这个参数来保证集群中的节点能够知道其它N个有master资格的节点。默认为1,对于大的集群来讲,能够设置大一点的值(2-4) discovery.zen.minimum_master_nodes: 2 #若是要使用head,那么须要设置下面2个参数,使head插件能够访问es http.cors.enabled: true http.cors.allow-origin: "*" #这是Centos6不支持SecComp,而ES默认bootstrap.system_call_filter为true进行检测,因此致使检测失败,失败后直接致使ES不能启动。 bootstrap.memory_lock: false bootstrap.system_call_filter: false #若是安装x-pack插件,咱们取消他的basic认证,须要添加如下选项 xpack.security.enabled: false xpack.ml.enabled: false path.data: /opt/elasticsearch/elasticsearch-6.3.2/data #数据文件存储路径 path.logs: /opt/elasticsearch/elasticsearch-6.3.2/logs #log文件存储路径 #elasticsearch备份位置,路径要手动建立 path.repo: ["/opt/elasticsearch/elasticsearch-6.3.2/data/backups"]
注意有的文章中sql
network.host设置为0.0.0.0
其余两台机器的配置内容同113 的配置同样,只须要修改节点名称和IP地址就能够了
注意配置文件都是yml格式,key和value之间存在空格
两者集群集群须要注意:并修改一下配置文件的node.name和network.host
一、集群的名称在两个配置文件都同样都是cluster.name: tipdm-es #es集群名称
二、集群中配置文件中端口都是一致的都是9200
不一样的地方在于每一个集群中节点的名称不能同样并修改一下配置文件的node.name和network.host
node.name: es-node2 #es节点名称,每一个节点的名称不能相同
network.host: 192.168.43.111 #节点的ip地址
因为root用户启动elasticsearch会报错,因此要建立一个用户,这里建立elasticsearch用户,更改elasticsearch-6.3.2目录的所属用户和组为elasticsearch。执行如代码 2‑5所示的命令。
useradd elasticsearch
passwd elasticsearch
chown -R elasticsearch:elasticsearch /opt/elasticsearch/
此外为避免ES启动报错,须要调整一下系统设置。首先打开/etc/security/limits.conf
vi /etc/security/limits.conf
* soft nofile 65536 * hard nofile 131072 * soft nproc 2048 * hard nproc 4096
同时还须要修改vim /etc/sysctl.conf
vi /etc/sysctl.conf文件,在文件末尾添加“vm.max_map_count=655360”
执行了上面的命令以后要执行接着执行命令“sysctl -p”更新上面的操做
接下来就能够启动elasSearch数据库了,切换elasticsearch用户,启动测试,执行如代码 2‑6所示的命令
每一台设备都要单独启动 前台启动 $ ./elasticsearch 后台启动 -d为守护进程运行 $ ./elasticsearch –d $ ./elasticsearch & # 使用这种方式他会打印日志在前台
启动的时候若是报下面的错误
unable to load JNA native support library, native methods will be disabled.
java.lang.UnsatisfiedLinkError: Native library (com/sun/jna/linux-x86/libjnidispatch.so) not found
解决办法以下,首先进入到elasticSearch的lib目录下
咱们看到该目录下存在一个jna-4.5.1.jar,整个jar包存在问题,咱们要到官网上下载一个最新的jar包,而后上传到改lib目录下
作以前咱们先备份
mv jna-4.5.1.jar jna-4.5.1.jar.bak (以bin目录的文件为准,不必定是4.5.1) 而后从新下载该文件 在lib目录内 : wget http://repo1.maven.org/maven2/net/java/dev/jna/jna/4.5.1/jna-4.5.1.jar (根据你以前看到的版本号改动)
这样elasticSearch集群就部署好了
skywalking配置elasticSearch数据库集群的时候,配置以下就能够了,在skywalking的配置文件中以下
elasticsearch: nameSpace: ${SW_NAMESPACE:"tipdm-es"} clusterNodes: ${SW_STORAGE_ES_CLUSTER_NODES:192.168.43.111:9200,192.168.43.112:9200,192.168.43.113:9200} user: ${SW_ES_USER:""}
其中主要修改 clusterName 和 clusterNodes 要和上面配置的 elasticsearch 配置一致。
接下来skywalking集群环境的搭建
Skywalking集群部署首先要让zookeeper进行集群配置
mkdir -p /opt/zookeeper tar -zxvf zookeeper-3.4.10.tar.gz -C /opt/zookeeper
接下进行zookeer的集群配置,搭建zookeeper集群须要最少三台机器,须要安装jdk做为基础支持。这次使用的Zookeeper3.4.7版本
进入conf目录,复制zoo-sample.cfg重命名为zoo.cfg,经过修改zoo.cfg来对zookeeper进行配置。这个名字固定写死,由于zookeeper启动会检查这个文件,根据这个配置文件里的信息来启动服务。
mv zoo_sample.cfg zoo.cfg
vi zoo.cfg
在文件的末尾添加下面的内容
tickTime=2000 initLimit=10 syncLimit=5 dataDir=/opt/zookeeper/data clientPort=2181 server.1=192.168.43.111:2888:3888 server.2=192.168.43.112:2888:3888 server.3=192.168.43.113:2888:3888
dataDir:指定zookeeper将数据保存在哪一个目录下
erver.1=xxx.xxx.xxx.xxx:2888:3888
server.2=xxx.xxx.xxx.xxx:2888:3888
server.3=xxx.xxx.xxx.xxx:2888:3888
在配置文件末尾加上这三行,ip填写本身规划的ip便可,zookeeper服务默认的端口号为2888和3888,也可将/etc/hosts文件添加主机和ip映射,将此处的ip写成主机名称。
说明:2888原子广播端口,3888选举端口,zookeeper有几个节点,就配置几个server。说明:2888原子广播端口,3888选举端口,zookeeper有几个节点,就配置几个server。
接下来,到 到以前配置的zookeeper数据文件所在的目录下生成一个文件叫myid,以前的data目录在/opt/zookeeper/data在改目录下生成一个myid的文件
到以前配置的zookeeper数据文件所在的目录下生成一个文件叫myid,其中写上一个数字代表当前机器是哪个编号的机器。
vim myid
1
注意:文件名称必须是myid,文件内容只须要一个数字即服务器列表中当前服务器的编号。1表示当前节点的变化,其余两个节点的编号就是2或3,不能与1相同
3.拷贝
将以上Zookeeper文件夹远程拷贝到另外两台服务器中:
分发安装包
#将配置好的zookeeper拷贝到其余节点
scp -r ./zookeeper/ root@192.168.43.112:/opt
scp -r ./zookeeper/ root@192.168.43.113:/opt
而后修改另外两台服务器中的myid文件中的id便可。
#yun02
vim myid
2
#yun03
vim myid
3
四、启动zookeeper
启动zookeeper的各类命令操做以下,可使用绝对路径操做这些命令,也可以使用相对路径操做这些命令,相对路径须要进到zookeeper服务的bin目录进行操做。
#启动ZK服务:
bin/zkServer.sh start
#中止ZK服务:
bin/zkServer.sh stop
#重启ZK服务:
bin/zkServer.sh restart
#查看ZK服务状态:
bin/zkServer.sh status
Zookeeper集群须要每台挨个启动。
能够是用jps命令查看线程。
启动集群的时候,集群数量启动没有超过一半,状态会有错误提示,当集群启动数量超过一半就会自动转为正常状态,而且此台使集群进入正常工做状态的服务器会成为leader角色,集群中其余服务器的角色为fllower。
这样就表示zookeeper的集群部署成功了
Zk 的集群搭建成功以后,接下来就是搭建skywalking collect集群
这样就表示zookeeper的集群部署成功了
Zk 的集群搭建成功以后,接下来就是搭建skywalking collect集群
zk安装成功以后,接下来就要进行skywalking的安装
咱们下载6.3.0版本
接下来,进行解压安装操做,执行下面的命令
mkdir -p /opt/skywalking tar -zxvf apache-skywalking-apm-6.3.0.tar.gz -C /opt/skywalking
第一步:接下来要修改skywalking collect的配置,配置ES 存储监控数据(推荐)
将储存方式由 h2 修改成 elasticsearch:
修改application.yml文件
咱们最好把application.yml文件下载到本地电脑上以后,再进行修改,修改完成以后在上传到服务器上面去,将h2数据库的信息注释掉,将elasticsearch数据库的信息打开,其中
接下来elasticSearch数据库配置成功以后,接下来在aplication.yml文件中配置zk集群信息
接下来要配置collect与zookeeper的信息
这里必定要将standalone单节点整个信息注解掉,将zookeeper这个节点信息打开
配置好以后将skywalking拷贝到其余节点上面
[root@localhost opt]# scp -r ./skywalking/ root@192.168.43.113:/opt
接下来就能够在192.168.43.111和192.168.43.113这两台机器上面启动skywalking了
启动skywalking以前保证elasticsearch集群已经启动成功,zookeeper集群已经启动成功
一、 验证首先保证elasticSerach集群成功
二、再次保证zk集群启动成功
三、接下来就能够启动skywalking的collect了
启动有下面的两种方式
第一种方式只启动collect服务
启动collector服务 #初始化 cd /opt/skywalking/bin/ ./oapServiceInit.sh #启动collector服务 ./oapService.sh
第二种方式
You can use bin/startup.sh(or cmd)
这里skywalking的collect集群就搭建成功了
接下来要配置的是skywalking的agent和web的配置
探针的配置 修改agent.config配置以下: vim /opt/skywalking/agent/config/agent.config ------------------------------------------------------------- agent.service_name=Your_ApplicationName #改成你的项目名字 collector.backend_service=192.168.43.111:11800 #collector的端口服务地址; logging.level=info
单节点的地址就只配置一个collect的地址,若是是集群就要设置以下
collector.backend_service=192.168.43.111:11800,192.168.43.113 #collector的端口服务地址;
这里端口11800是agent与collect进行grpc协议通讯的端口地址
• Storage, use H2 by default, in order to make sure, don't need further deployment. • Backend listens 0.0.0.0/11800 for gRPC APIs and 0.0.0.0/12800 for http rest APIs. In Java, .NetCore, Node.js, Istio agents/probe, set the gRPC service address to ip/host:11800. (ip/host is where the backend at) • UI listens 8080 port and request 127.0.0.1/12800 to do GraphQL query.
接下来就能够启动agent
3、启动Agent • 基于Tomcat的服务(SpringMvc) 在tomcat的bin目录下的catalina.sh中增长以下命令行 • CATALINA_OPTS="$CATALINA_OPTS -javaagent:/opt/skywalking/agent/skywalking-agent.jar" export CATALINA_OPTS • 基于JAR file的服务(SpringBoot) 在启动你的应用程序的命令行中添加 -javaagent 参数. 并确保在-jar参数以前添加它. 例如: java -javaagent:/opt/skywalking/agent/skywalking-agent.jar -jar yourApp.jar
启动agent必定是绝对目录
例如上面skywalking-agent.jar位于C:\Users\Administrator\Desktop\skywalkingdubbo\apache-skywalking-apm-6.1.0\apache-skywalking-apm-bin\agent目录下,启动的时候
会读取config目录下面的agent.confg配置文件
必定要注意
java -javaagent:后面必定要给skywalking-agent.jar的绝对目录,而且要保证skywalking-agent.jar可以读取到config目录下的agent.config配置文件,因此不要讲skywalking-agent.jar拷贝到
其余目录,这样会致使skywalking-agent.jar启动的时候读取不到agent.config配置文件
agent.config配置文件修改完成以后,接下来咱们要修改skywalking的页面中webapp.xml的配置

配置 Skywalking Web服务
一、修改配置
cd /opt/skywalking/webapp
# 修改webapp.yml 文件配置以下:
server: port: 8080 collector: path: /graphql ribbon: ReadTimeout: 10000 # Point to all backend's restHost:restPort, split by , listOfServers: 192.168.43.111:12800,192.168.43.113:12800 security: user: # username admin: # password password: <your_pass> #此处修改你的网站管理员密码
这里12800就是collect 暴露出来让页面UI查询收集的数据的端口,页面经过path: /graphql这个接口来访问,页面访问的时候经过ribbon负载均衡的策略随机的访问到某一台collect,这里能够配置ribbon访问collect的超时时间ReadTimeout: 10000
这样整个skywalking和elasticSearch数据库的集群就设置完成了。
还要下面几个注意点须要特别的注意:
注意点:
关于采样设置的一点注意事项
关于服务采样配置的一点建议,若是Collector以集群方式部署,好比:Acollector和Bcollector,建议Acollector.sampleRate = Bcollector.sampleRate。若是采样率设置不相同可能会出现数据丢失问题。
假设Agent端将全部数据发送到后端Collector处,A采样率设置为30%,B采样率为50%。
假设有30%的数据,发送到A上,这些数据被所有正确接受并存储,极端状况(与指望的采样数据量相同)下,若是剩下20%待采样的数据发送到了B,这个时候一切都是正常的,若是这20%中有一部分数据被送到了A那么,这些数据将是被忽略的,由此就会形成数据丢失。
设定采样率在application.yml中的receiver-trace接受者中,你能够找到sampleRate
设置。
此外还有须要注意的是:须要特别注意的是:elasticSearch服务器的时候必须和安装skywalking collect、agent服务器的时间
保持一致不然会出现数据没法出来的问题,1. 修改系统的时区,保证skywalking colle、和客户端的Agent的、elasticSearch数据库三者的时区保持一致
接下来咱们搭建apollo的集群环境
Apollo分布式配置中心部署以及使用,第一步到官网上面去下载apollo ,https://github.com/ctripcorp/apollo
比较重要的几个项目:
• apollo-configservice:提供配置获取接口,提供配置更新推送接口,接口服务对象为Apollo客户端
• apollo-adminservice:提供配置管理接口,提供配置修改、发布等接口,接口服务对象为Portal,以及Eureka
• apollo-portal:提供Web界面供用户管理配置
• apollo-client:Apollo提供的客户端程序,为应用提供配置获取、实时更新等功能
上图简要描述了配置发布的大体过程:
• 用户在Portal操做配置发布
• Portal调用Admin Service的接口操做发布
• Admin Service发布配置后,发送ReleaseMessage给各个Config Service
• Config Service收到ReleaseMessage后,通知对应的客户端
这里咱们直接下载安装包,不经过源码进行构建
咱们能够看到能够直接使用的安装包有上面的三个,一个是adminService、一个是configservice。一个是portal首页
Apoll安装的时候对数据库有要求
Mysql要求5.6.5版本以上
Java jdk要求 1.8以上
接下来咱们安装数据库
Apollo服务端共须要两个数据库:ApolloPortalDB和ApolloConfigDB,其中portal进程使用数据库ApolloPortalDB,adminService和configservice共用数据库ApolloConfigDB
须要注意的是ApolloPortalDB只须要在生产环境部署一个便可,而ApolloConfigDB须要在每一个环境部署一套,如fat、uat和pro分别部署3套ApolloConfigDB。
咱们先来看集群部署须要注意的事项
上面首先由两套环境uat、dev两个环境:
一、第一点每一套环境须要对于不一样的ApolloConfigDB数据库,uat要新建一个ApolloConfigDB,dev须要建立部署一个ApolloConfigDB数据库
二、Portal部署在生产环境的机房,经过它来直接管理FAT、UAT、PRO等环境的配置,uat和dev环境能够共用一个ApolloPortalDB数据库,全部的环境都通用一个ApolloPortalDB数据库
三、上面的uat环境中,若是如今有两台服务server1和serve2,咱们要在这两台机器上面实现集群,咱们这样作
Meta Server和Config Service部署在同一个JVM进程内,Admin Service部署在同一台服务器的另外一个JVM进程内
在server1上面运行一个config service的进程,运行一个admin service的进程
在server2上面运行一个config service的进程,运行一个admin service的进程
这样集群就部署好了,对于potal首页的进程,咱们也能够部署多个进程,可是这些进程都是访问同一个数据库
集群部署好了以后,咱们须要作对于的配置
分布式部署的时候,apollo-configservice和apollo-adminservice须要把本身的IP和端口注册到Meta Server(apollo-configservice自己)。
Apollo客户端和Portal会从Meta Server获取服务的地址(IP+端口),而后经过服务地址直接访问。
接下来咱们开始建立数据库
建立ApolloPortalDB,能够根据实际状况选择经过手动导入SQL,文件位于
以MySQL原生客户端为例: source /your_local_path/portaldb/V1.0.0__initialization.sql
咱们用Navicat执行该脚本
这里portal首页对于的数据库就建立成功了
接下来建立ApolloConfigDB,能够根据实际状况选择经过手动导入SQL
scripts/db/migration/configdb/V1.0.0__initialization.sql 以MySQL原生客户端为例: source /your_local_path/configdb/V1.0.0__initialization.sql
这里两个数据库就建立成功了
注意:注:ApolloConfigDB须要在每一个环境部署一套,如fat、uat和pro分别部署3套ApolloConfigDB,PortalConfigDB fat、uat和pro三者共用一个数据库,不须要部署多套
在数据库安装完成以后,在正式部署以前,须要对数据库中的一些具体的参数进行调整,Apollo自身的一些配置是放在数据库里面的,因此须要针对实际状况作一些调整。
调整ApolloPortalDB配置
配置项统一存储在ApolloPortalDB.ServerConfig表中,也能够经过管理员工具 - 系统参数页面进行配置,无特殊说明则修改完一分钟实时生效。
1.apollo.portal.envs - 可支持的环境列表
默认值是dev,若是portal须要管理多个环境的话,以逗号分隔便可(大小写不敏感),如:
DEV,FAT,UAT,PRO
若是还有支持FAT环境,设置为以下
如今首页要管理多个环境,须要作下面的配置
一、只在数据库添加环境是不起做用的,还须要为apollo-portal添加新增环境对应的meta server地址
Apollo Portal须要在不一样的环境访问不一样的meta service(apollo-configservice)地址,因此咱们须要在配置中提供这些信息。默认状况下,meta service和config service是部署在同一个JVM进程,因此meta service的地址就是config service的地址。
使用程序员专用编辑器(如vim,notepad++,sublime等)打开apollo-portal-x.x.x-github.zip中config目录下的apollo-env.properties文件。
假设DEV的apollo-configservice未绑定域名,地址是1.1.1.1:8080,FAT的apollo-configservice绑定了域名apollo.fat.xxx.com,UAT的apollo-configservice绑定了域名apollo.uat.xxx.com,PRO的apollo-configservice绑定了域名apollo.xxx.com,那么能够以下修改各环境meta service服务地址,格式为${env}.meta=http://${config-service-url:port},若是某个环境不须要,也能够直接删除对应的配置项(如lpt.meta):
dev.meta=http://1.1.1.1:8080
fat.meta=http://apollo.fat.xxx.com
uat.meta=http://apollo.uat.xxx.com
pro.meta=http://apollo.xxx.com
注意dev中config service也能够部署多个实现集群,这里须要将配置修改成
http://1.1.1.1:8080,http://2.2.2.2:8080
二、apollo-client在新的环境下使用时也须要作好相应的配置
经过Spring Boot的配置文件
能够在Spring Boot的application.properties或bootstrap.properties中指定apollo.meta=http://config-service-url
2.organizations - 部门列表
Portal中新建的App都须要选择部门,因此须要在这里配置可选的部门信息,样例以下:
[{"orgId":"TEST1","orgName":"样例部门1"},{"orgId":"TEST2","orgName":"样例部门2"}]
接下来,咱们须要调整 调整ApolloConfigDB配置的配置,重点在于修改ServerConfig表中,修改完成后生效
不一样的环境须要对本身环境的ApolloConfigDB数据库下面的ServerConfig表进行修改
主要是在表中配置注册中心的地址。就是config service进程的地址,默认config service端口是8080,若是dev上面部署了多个config serice进程
上面数据库表中填写以下:
在DEV环境的ApolloConfigDB.ServerConfig表中设置eureka.service.url为:中间用逗号隔开
http://1.1.1.1:8080/eureka/,http://2.2.2.2:8080/eureka/
注意这里在数据库中必定要填写本环境中所有config service进程的地址
注1:这里须要填写本环境中所有的eureka服务地址,由于eureka须要互相复制注册信息
注2:注2:若是但愿将Config Service和Admin Service注册到公司统一的Eureka上,那这里就要填写公司统一的Eureka集群的地址,不要忘了/eureka/
不过有些公司本身已经有了一套Eureka,若是但愿把Apollo的Config Service和Admin Service也注册过去实现统一管理的话,能够按照以下步骤操做:
为apollo-configservice配置apollo.eureka.server.enabled=false
便可,经过bootstrap.yml或-D参数等方式皆可。
修改com.ctrip.framework.apollo.configservice.ConfigServiceApplication,把@EnableEurekaServer
改成@EnableEurekaClient
@EnableEurekaClient
@EnableAspectJAutoProxy @EnableAutoConfiguration // (exclude = EurekaClientConfigBean.class) @Configuration @EnableTransactionManagement @PropertySource(value = {"classpath:configservice.properties"}) @ComponentScan(basePackageClasses = {ApolloCommonConfig.class, ApolloBizConfig.class, ConfigServiceApplication.class, ApolloMetaServiceConfig.class}) public class ConfigServiceApplication { ... }
eureka.service.url
,指向本身的Eureka地址好比本身的Eureka服务地址是1.1.1.1:8761和2.2.2.2:8761,那么就将ApolloConfigDB.ServerConfig表中设置eureka.service.url为:
http://1.1.1.1:8761/eureka/,http://2.2.2.2:8761/eureka/
须要注意的是更改Eureka地址只须要改ApolloConfigDB.ServerConfig表中的eureka.service.url
便可,不须要修改meta server地址。默认状况下,meta service和config service是部署在同一个JVM进程,因此meta service的地址就是config service的地址,修改Eureka地址时不须要修改meta server地址。
三、接下来要修改config service 进程访问数据库的配置,配置apollo-configservice的数据库链接信息
解压apollo-configservice-x.x.x-github.zip
用程序员专用编辑器(如vim,notepad++,sublime等)打开config目录下的application-github.properties文件
填写正确的ApolloConfigDB数据库链接串信息,注意用户名和密码后面不要有空格!
修改完的效果以下:
# DataSource spring.datasource.url = jdbc:mysql://localhost:3306/ApolloConfigDB?useSSL=false&characterEncoding=utf8 spring.datasource.username = someuser spring.datasource.password = somepwd
注:因为ApolloConfigDB在每一个环境都有部署,因此对不一样的环境config-service须要配置对应环境的数据库参数
4.配置apollo-adminservice的数据库链接信息
解压apollo-adminservice-x.x.x-github.zip
用程序员专用编辑器(如vim,notepad++,sublime等)打开config目录下的application-github.properties文件
填写正确的ApolloConfigDB数据库链接串信息,注意用户名和密码后面不要有空格!
修改完的效果以下:
# DataSource spring.datasource.url = jdbc:mysql://localhost:3306/ApolloConfigDB?useSSL=false&characterEncoding=utf8 spring.datasource.username = someuser spring.datasource.password = somepwd
注:因为ApolloConfigDB在每一个环境都有部署,因此对不一样的环境admin-service须要配置对应环境的数据库参数
5.配置apollo-portal的数据库链接信息
解压apollo-portal-x.x.x-github.zip
用程序员专用编辑器(如vim,notepad++,sublime等)打开config目录下的application-github.properties文件
填写正确的ApolloPortalDB数据库链接串信息,注意用户名和密码后面不要有空格!
修改完的效果以下:
spring.datasource.url = jdbc:mysql://localhost:3306/ApolloPortalDB?useSSL=false&characterEncoding=utf8 spring.datasource.username = someuser spring.datasource.password = somepwd
上面就完成所有的配置了,接下来咱们就能够启动apollo了
咱们首先启动config service进程
而后在启动admin service 进程,最后在去启动portal,apollo启动成功以后数据会默认放在/opt目录,因此必定要保证该目录具备可读写权限