kuboard如何部署redis?
2023-12-13 22:47:22
在K8S上部署redis
如 在K8S上部署mysql 所述,auth-server、user-center、api-gateway 都需要使用 redis 服务,本文描述如何使用 Kuboard 在 Kubernetes 上部署 redis。
本文将使用 redis官方镜像 进行部署。
部署redis
在 Kuboard 界面进入名称空间 (自己的命令空间),点击 创建工作负载 按钮,并填写表单,如下图所示:
字段名称 | 填写内容 |
---|---|
工作负载类型 | 有状态副本集(StatefulSet) |
工作负载分层 | 持久层 |
工作负载名称 | redis-dev |
副本数量 | 1 |
基本信息
容器信息
字段名称 | 填写内容 |
---|---|
名称 | redis |
容器镜像 | redis:7.2.0 |
命令行参数 | redis-server /usr/local/etc/redis/redis.conf |
资源请求/限制 | 内存资源请求200Mi 内存资源限制4000Mi |
容器端口 | 6379 |
- 容器启动检查探针
字段名称 | 填写内容 |
---|---|
类型 | Tcp连接 |
端口号 | 6379 |
初始延迟(秒) | 30 |
执行探测频率(秒) | 10 |
超时时间(秒) | 1 |
不健康阈值 | 3 |
- 容器存活检查探针
字段名称 | 填写内容 |
---|---|
类型 | Tcp连接 |
端口号 | 6379 |
初始延迟(秒) | 20 |
执行探测频率(秒) | 10 |
超时时间(秒) | 1 |
不健康阈值 | 3 |
存储挂载
- 配置字典
dir /data #数目录
port 6379 #指定端口
bind 0.0.0.0 #允许外部访问
appendonly yes #开启持久化
protected-mode no
requirepass 123qwe## #密码
高级设置
服务/应用路由
最后点击保存。
命令行配置文件如下
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
annotations: {}
labels:
k8s.kuboard.cn/layer: db
k8s.kuboard.cn/name: redis-dev
name: redis-dev
namespace: sca-dev
resourceVersion: '311600'
spec:
podManagementPolicy: Parallel
replicas: 1
revisionHistoryLimit: 10
selector:
matchLabels:
k8s.kuboard.cn/layer: db
k8s.kuboard.cn/name: redis-dev
serviceName: redis-dev
template:
metadata:
creationTimestamp: null
labels:
k8s.kuboard.cn/layer: db
k8s.kuboard.cn/name: redis-dev
spec:
containers:
- command:
- redis-server
- /usr/local/etc/redis/redis.conf
image: 'redis:7.2.0'
imagePullPolicy: IfNotPresent
livenessProbe:
failureThreshold: 3
initialDelaySeconds: 20
periodSeconds: 10
successThreshold: 1
tcpSocket:
port: 6379
timeoutSeconds: 1
name: redis
ports:
- containerPort: 6379
protocol: TCP
resources:
limits:
cpu: '2'
memory: 2000Mi
requests:
cpu: 100m
memory: 200Mi
startupProbe:
failureThreshold: 3
initialDelaySeconds: 30
periodSeconds: 10
successThreshold: 1
tcpSocket:
port: 6379
timeoutSeconds: 1
terminationMessagePath: /dev/termination-log
terminationMessagePolicy: File
volumeMounts:
- mountPath: /usr/local/etc/redis/redis.conf
name: volume-r4x5e
subPath: redis.conf
- mountPath: /data
name: volume-868k4
dnsPolicy: ClusterFirst
restartPolicy: Always
schedulerName: default-scheduler
securityContext: {}
terminationGracePeriodSeconds: 30
volumes:
- configMap:
defaultMode: 420
name: redis-config
name: volume-r4x5e
- name: volume-868k4
persistentVolumeClaim:
claimName: redis-pvc-d
updateStrategy:
rollingUpdate:
partition: 0
type: RollingUpdate
---
apiVersion: v1
kind: Service
metadata:
annotations: {}
labels:
k8s.kuboard.cn/layer: db
k8s.kuboard.cn/name: redis-dev
name: redis-dev
namespace: sca-dev
resourceVersion: '166707'
spec:
clusterIP: 10.233.159.49
clusterIPs:
- 10.233.159.49
externalTrafficPolicy: Cluster
internalTrafficPolicy: Cluster
ipFamilies:
- IPv4
ipFamilyPolicy: SingleStack
ports:
- name: d5rwyk
nodePort: 32702
port: 6379
protocol: TCP
targetPort: 6379
selector:
k8s.kuboard.cn/layer: db
k8s.kuboard.cn/name: redis-dev
sessionAffinity: ClientIP
sessionAffinityConfig:
clientIP:
timeoutSeconds: 10800
type: NodePort
示例运行结果
文章来源:https://blog.csdn.net/bj_xuzhiqiang/article/details/134822727
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!