这几天对开发服务器中的 k8s和相关模块 进行升级,做个记录
开发服务器(单服务器)部署 sentinel 哨兵熔断限流断路器
环境,与系统
系统:centos 7.6
内核: 5.1.9-1.el7.elrepo.x86_64
Kubernetes(K8s) 1.14.3
服务器IP:192.168.0.254
服务器IP 说明
如果更改了服务器IP 为其他IP,那么请全局全部替换成你改的IP
fox.风
如何安装 k8s
请看 最近写的一篇文章,
https://blog.csdn.net/fenglailea/article/details/88745642
常用 k8s 命令
https://foxwho.blog.csdn.net/article/details/92137467
服务器资源限制
对CPU,内存都做了限制,请自行针对修改
没有使用持久化存储,这里直接使用宿主机存储,如有需要,请自行增加
目录
请把项目放置到 /www/k8s/foxdev/
目录下,所有都是基于此目录
或者请看 下面一节的 拉取代码
拉取代码
mkdir -p /www/k8s/
cd /www/k8s/
git clone https://github.com/foxiswho/k8s-nacos-sentinel-rocketmq-zipkin-elasticsearch-redis-mysql.git foxdev
cd foxdev
chmod +x *sh
以下是 独立部署 相关模块
k8s sentinel 独立部署
相关说明
对外端口:30280
和 30719
端口:8280
api server 端口:8719
用户名/密码:sentinel/sentinel
如果要自定义用户名和密码,请修改
sentinel/cm.yml
中的相关参数
sentinel/logs 日志目录
独立部署 sentinel 操作
直接执行 根目录
下 create.s.sentinel.start.sh
即可
./create.s.sentinel.start.sh
访问
直接用浏览器访问
http://192.168.0.254:30280
Kubernetes 编排文件
sentinel-service.yml
apiVersion: v1
kind: Service
metadata:
# namespace: default
name: sentinel
labels:
name: sentinel
spec:
type: NodePort
ports:
- port: 8280
targetPort: 8280
nodePort: 30280
name: web
- port: 8719
targetPort: 8719
nodePort: 30719
name: api
selector:
name: sentinel
sentinel-cm.yml
apiVersion: v1
kind: ConfigMap
metadata:
name: sentinel-cm
data:
sentinel.server.host: "nacos.default.svc.cluster.local"
sentinel.server.port: "8848"
sentinel-rc.yml
apiVersion: v1
kind: ReplicationController
metadata:
# namespace: default
name: sentinel
labels:
name: sentinel
spec:
replicas: 1
selector:
name: sentinel
template:
metadata:
labels:
name: sentinel
spec:
containers:
- name: sentinel
image: foxiswho/sentinel
imagePullPolicy: IfNotPresent
resources:
limits:
cpu: 150m
memory: 512Mi
requests:
cpu: 100m
memory: 256Mi
env:
- name: TZ
value: Asia/Shanghai
- name: SERVER_HOST
valueFrom:
configMapKeyRef:
name: sentinel-cm
key: sentinel.server.host
- name: SERVER_PORT
valueFrom:
configMapKeyRef:
name: sentinel-cm
key: sentinel.server.port
ports:
- containerPort: 8280
volumeMounts:
- name: vol-log
mountPath: /opt/logs
volumes:
- name: vol-log
hostPath:
path: /www/k8s/foxdev/sentinel/logs
type: Directory
create.s.sentinel.start.sh
#!/usr/bin/env bash
DIR=$(pwd)
mkdir -p ${DIR}/sentinel/logs
chmod -R 777 ${DIR}/sentinel/logs
kubectl create -f ${DIR}/sentinel/sentinel-cm.yml
kubectl create -f ${DIR}/sentinel/sentinel-service.yml
kubectl create -f ${DIR}/sentinel/sentinel-rc.yml
kubectl get pod
echo -e "\n\n\n"
echo " success"
在开发服务器上部署成功,有问题的,可以联系我
源文件
https://github.com/foxiswho/k8s-nacos-sentinel-rocketmq-zipkin-elasticsearch-redis-mysql