可以从KubeSphere市场安装
就不做介绍了
需要持久化储存数据的,建立有状态服务。
无状态服务是不会持久化的,重启就归零
KubeSphere 创建自建应用后,创建有状态服务,但是自己应用的有状态服务不能外放端口,需要在服务哪里删除pod,在创建负载指定相关的有状态服务,就可以外放端口了
安装nacos (集群)
添加application.properties
# spring
fsdserver.contextPath=/nacos
server.servlet.contextPath=/nacos
server.port=8848
# 从cluster.conf配置文件中获取IP(集群模式)<单节点需要注释掉>
nacos.inetutils.prefer-hostname-over-ip=true
#是否自动清理不在线服务
nacos.naming.empty-service.auto-clean=true
# 清理延迟时间
nacos.naming.empty-service.clean.initial-delay-ms=50000
# 清理间隔时间
nacos.naming.empty-service.clean.period-time-ms=30000
nacos.cmdb.dumpTaskInterval=3600
nacos.cmdb.eventTaskInterval=10
nacos.cmdb.labelTaskInterval=300
nacos.cmdb.loadDataAtStart=false
##datasource
spring.datasource.platform=mysql
db.num=1
db.url.0=jdbc:mysql://mysql-kqo0po.wasteland:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true
db.user=root
db.password=root
# metrics for prometheus
#management.endpoints.web.exposure.include=*
# metrics for elastic search
management.metrics.export.elastic.enabled=false
#management.metrics.export.elastic.host=http://localhost:9200
# metrics for influx
management.metrics.export.influx.enabled=false
#management.metrics.export.influx.db=springboot
#management.metrics.export.influx.uri=http://localhost:8086
#management.metrics.export.influx.auto-create-db=true
#management.metrics.export.influx.consistency=one
#management.metrics.export.influx.compressed=true
server.tomcat.accesslog.enabled=true
server.tomcat.accesslog.pattern=%h %l %u %t "%r" %s %b %D %{User-Agent}i
# default current work dir
server.tomcat.basedir=
## spring security config
### turn off security
#spring.security.enabled=false
#management.security=false
#security.basic.enabled=false
#nacos.security.ignore.urls=/**
nacos.security.ignore.urls=/,/**/*.css,/**/*.js,/**/*.html,/**/*.map,/**/*.svg,/**/*.png,/**/*.ico,/console-fe/public/**,/v1/auth/login,/v1/console/health/**,/v1/cs/**,/v1/ns/**,/v1/cmdb/**,/actuator/**,/v1/console/server/**
nacos.naming.distro.taskDispatchThreadCount=1
nacos.naming.distro.taskDispatchPeriod=200
nacos.naming.distro.batchSyncKeyCount=1000
nacos.naming.distro.initDataRatio=0.9
nacos.naming.distro.syncRetryDelay=5000
nacos.naming.data.warmup=true
nacos.naming.expireInstance=true
添加cluster.conf
#ip:port
nacos-v1-0.nacos.wasteland.svc.cluster.local:8848
nacos-v1-1.nacos.wasteland.svc.cluster.local:8848
nacos-v1-2.nacos.wasteland.svc.cluster.local:8848
其中:
nacos:创建有状态服务时的名称
v1:创建有状态服务时指定的版本
0:第0个节点
nacos.wasteland:DNS地址,即集群内部访问的域名,这个的形成规则是:创建服务时的名称.项目名称
svc.cluster.local:固定写法
8848:端口
增加健康检查,探针
挂载数据
文件挂载位置
home/nacos/conf
挂载application.properties
挂载cluster.conf,与上面同理
直接下一步到创建就行了
单点部署,可以添加以下配置
MODE standalone
字典配置
#*************** Config Module Related Configurations ***************#
### If use MySQL as datasource:
spring.datasource.platform=mysql
### Count of DB:
db.num=1
### Connect URL of DB:
db.url.0=jdbc:mysql://localhost:3306/nacos?characterEncoding=utf8&connectTimeout=1000&socketTimeout=3000&autoReconnect=true&useUnicode=true&useSSL=false&serverTimezone=UTC
db.user.0=root
db.password.0=root
安装minio
KubeSphere 原装的账号密码怎么查看呢,如下:
需要开里面的配置来看,直接点进去是加密的数据,用不了的
放行访问
安装seata
先配置字典
新增 registry.conf的配置
键
registry.conf
registry {
# file 、nacos 、eureka、redis、zk、consul、etcd3、sofa
type = "nacos"
nacos {
application = "seata-server"
serverAddr = "nacos.wasteland:8848"
group = "SEATA_GROUP"
# 命名空间ID,下面会进行介绍
namespace = "seata"
cluster = "default"
username = "nacos"
password = "nacos"
}
}
config {
# file、nacos 、apollo、zk、consul、etcd3
type = "nacos"
nacos {
serverAddr = "nacos.wasteland:8848"
# 命名空间ID,下面会进行介绍
namespace = "seata"
group = "SEATA_GROUP"
username = "nacos"
password = "nacos"
# 从v1.4.2版本开始,已支持从一个Nacos dataId中获取所有配置信息,你只需要额外添加一个dataId配置项
dataId: "seataServer.properties"
}
}
指定使用1.4.2版本,latest是1.5.0以上版本配置不一样
不要加健康检查,seata不支持
配置环境变量,使用SEATA_CONFIG_NAME的形式
SEATA_CONFIG_NAME
file:/root/seata-config/registry
配置字典:例子
#路径
/root/seata-config/registry.conf
#子路径
registry.conf
启动效果