1.Alibaba Nacos 下载安装
安装jdk1.8
wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz"
tar xzf jdk-8u141-linux-x64.tar.gz
export JAVA_HOME=/usr/local/jdk1.8.0_141
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin
source /etc/profile
进入官网地址Spring Cloud Alibaba
https://github.com/alibaba/nacos #代码管理地址
下载源码包
wget https://github.com/alibaba/nacos/releases/download/2.0.3/nacos-server-2.0.3.tar.gz
tar -zxvf nacos-server-2.0.3.tar.gz
cd nacos/bin
rm -rf shutdown.cmd startup.sh
vi startup.sh
vi nacos/bin/startup.cmd
nacos修改密码
nacos修改默认的用户名密码
修改配置文件,
vim nacos/conf/application.properties
在配置文件加入如下:
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://`数据库地址`:3306/`你自定义的数据库名字`(将要执行sql恢复语句的)?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user= 数据库账号
db.password= 数据库密码
改个standalone,就可以直接sh startup.sh 直接启动
不改就要单机启动服务
sh startup.sh -m standalone
ip:8848/nacos/
yuming.com/nacos/#/login #有时候无法跳转到登陆,需要加后缀
默认的账号密码都是nacos
查看服务
jps
2.Alibaba Sentinel 下载安装
wget https://github.com/alibaba/Sentinel/releases/download/1.8.2/sentinel-dashboard-1.8.2.jar
启动 sentinel
nohup java -Dserver.port=8721 -jar sentinel-dashboard-1.8.2.jar &
http://120.24.171.104:8721/ 流控管理访问,
账号:sentinel 密码:sentinel
nohup : 不挂断运行命令(以守护进程形式运行)
spring:
application:
# 应用名称
name: gateway
cloud:
# 使用 Naoos 作为服务注册发现
nacos:
discovery:
#server-addr: 47.119.175.80:8848
server-addr: 192.168.0.29:8848
# server-addr: localhost:8848
# 使用 Sentinel 作为熔断器
sentinel:
transport:
port: 8721
dashboard: localhost:8721
# 路由网关配置
gateway:
# 设置与服务注册发现组件结合,这样可以采用服务名的路由策略
discovery:
locator:
enabled: true
# 配置路由规则
routes:
# 采用自定义路由 ID(有固定用法,不同的 id 有不同的功能,详见:https://cloud.spring.io/spring-cloud-gateway/2.0.x/single/spring-cloud-gateway.html#gateway-route-filters)
- id: NACOS-CONSUMER
# 采用 LoadBalanceClient 方式请求,以 lb:// 开头,后面的是注册在 Nacos 上的服务名
uri: lb://nacos-consumer
# Predicate 翻译过来是“谓词”的意思,必须,主要作用是匹配用户的请求,有很多种用法
predicates:
# Method 方法谓词,这里是匹配 GET 和 POST 请求
- Method=GET,POST
- id: NACOS-CONSUMER-FEIGN
uri: lb://nacos-consumer-feign
predicates:
- Method=GET,POST
redis:
database: 1
host: 192.168.0.29
# host: 8.135.105.110
port: 6379
password: 123456
timeout: 1000ms
jedis:
pool:
max-wait: -1ms
max-active: 16
max-idle: 8
min-idle: 0
server:
port: 8084
# 目前无效
feign:
sentinel:
enabled: true
# 目前无效
management:
endpoints:
web:
exposure:
include: "*"
# 配置日志级别,方别调试
logging:
level:
org.springframework.cloud.gateway: debug
nacos镜像制作
FROM kimicheng/jdk1.8.0_91:latest
ADD ./nacos-server-2.1.2.tar.gz /
ENV JAVA_HOME /opt/jdk1.8.0_91
EXPOSE 8048
ENTRYPOINT /bin/bash /nacos/bin/startup.sh -m standalone && tail -f /dev/null
nacos官方docker启动
docker run -d -it -p 18848:8848 --env MODE=standalone --name=nacos -v /data/nacos/conf:/home/nacos/conf -v /data/nacos/data:/home/nacos/data nacos/nacos-server:latest