首页 > 数据库 >redis for k8s

redis for k8s

时间:2024-01-10 14:36:15浏览次数:35  
标签:name no max redis yes k8s metadata

deploy.yaml

基于nfs的存储

apiVersion: v1
kind: ConfigMap
metadata:
  name: redis-cm
  namespace: test
data:
  redis.conf: |+
    requirepass 1314521
    protected-mode no
    port 6379
    tcp-backlog 511
    timeout 0
    tcp-keepalive 300
    daemonize no
    supervised no
    pidfile /var/run/redis_6379.pid
    loglevel notice
    logfile ""
    databases 16
    always-show-logo yes
    save 900 1
    save 300 10
    save 60 10000
    stop-writes-on-bgsave-error yes
    rdbcompression yes
    rdbchecksum yes
    dbfilename dump.rdb
    dir /data
    slave-serve-stale-data yes
    slave-read-only yes
    repl-diskless-sync no
    repl-diskless-sync-delay 5
    repl-disable-tcp-nodelay no
    slave-priority 100
    lazyfree-lazy-eviction no
    lazyfree-lazy-expire no
    lazyfree-lazy-server-del no
    slave-lazy-flush no
    appendonly yes
    appendfilename "appendonly.aof"
    appendfsync everysec
    no-appendfsync-on-rewrite no
    auto-aof-rewrite-percentage 100
    auto-aof-rewrite-min-size 64mb
    aof-load-truncated yes
    aof-use-rdb-preamble no
    lua-time-limit 5000
    slowlog-log-slower-than 10000
    slowlog-max-len 128
    latency-monitor-threshold 0
    notify-keyspace-events Ex
    hash-max-ziplist-entries 512
    hash-max-ziplist-value 64
    list-max-ziplist-size -2
    list-compress-depth 0
    set-max-intset-entries 512
    zset-max-ziplist-entries 128
    zset-max-ziplist-value 64
    hll-sparse-max-bytes 3000
    activerehashing yes
    client-output-buffer-limit normal 0 0 0
    client-output-buffer-limit slave 256mb 64mb 60
    client-output-buffer-limit pubsub 32mb 8mb 60
    hz 10
    aof-rewrite-incremental-fsync yes
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: redis
  namespace: test
  labels:
    app: redis
spec:
  strategy:
    type: Recreate
  selector:
    matchLabels:
      app: redis
  template:
    metadata:
      labels:
        app: redis
      annotations:
        version/date: "20231110"
        version/author: "cp"
    spec:
      containers:
      - name: redis
        image: redis:7.0.14
        imagePullPolicy: Always
        command: ["redis-server","/etc/redis/redis.conf"]
        ports:
        - containerPort: 6379
        volumeMounts:
        - name: redis-config
          mountPath: /etc/redis/redis.conf
          subPath: redis.conf
        - name: redis-persistent-storage
          mountPath: /data
      volumes:
      - name: redis-config
        configMap:
          name: redis-cm
          items:
          - key: redis.conf
            path: redis.conf
      - name: redis-persistent-storage
        persistentVolumeClaim:
          claimName: redis-pvc
---
apiVersion: v1
kind: Service
metadata:
  name: redis-svc
  namespace: test
spec:
  ports:
  - port: 16379
    protocol: TCP
    targetPort: 6379
  selector:
    app: redis
  type: ClusterIP
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: redis-pvc
  namespace: test
spec:
  accessModes:
  - ReadWriteMany
  resources:
    requests:
      storage: 512Mi
  storageClassName: redis-nfs
---
apiVersion: v1
kind: PersistentVolume
metadata:
  name: redis-pv
  namespace: test
spec:
  capacity:
    storage: 512Mi
  accessModes:
  - ReadWriteMany
  persistentVolumeReclaimPolicy: Retain
  storageClassName: redis-nfs
  nfs:
    path: /data/nfs/redis
    server: 192.168.137.200

ingress-nginx代理路由

需要再ingress配置tcp代理,参考:https://www.cnblogs.com/cgpei/p/17956397  中的“tcp代理设置”部分

apiVersion: v1
kind: ConfigMap
metadata:
  name: tcp-services
  namespace: ingress-nginx
data:
  16379: "test/redis-svc:16379"

 

标签:name,no,max,redis,yes,k8s,metadata
From: https://www.cnblogs.com/cgpei/p/17956402

相关文章

  • 无涯教程-Redis - AUTH password 命令函数
    RedisAUTH命令用于使用给定的密码对服务器进行身份验证,如果密码与配置文件中的密码匹配,则服务器将以OK状态代码进行答复并开始接受命令。否则,将返回错误,并且客户端需要尝试新密码。AUTHpassword-返回值返回字符串。AUTHpassword-语法以下是RedisAUTH命令的基本语......
  • 无涯教程-Redis - SCRIPT EXISTS 命令函数
    RedisSCRIPTEXISTS命令返回有关脚本高速缓存中脚本是否存在的信息,此命令接受一个或多个SHA1摘要,并返回一个1或0的列表,以信号指示脚本是否已在脚本缓存中定义。SCRIPTEXISTSscript-语法以下是RedisSCRIPTEXISTS命令的基本语法。redis127.0.0.1:6379>SCRIPTEXIST......
  • 无涯教程-Redis - EVAL script 命令函数
    RedisEVAL命令用于使用Lua解释器判断脚本,EVAL的第一个参数是Lua5.1脚本,该脚本不需要定义Lua函数,它只是一个Lua程序,将在Redis服务器的上下文中运行,EVAL的第二个参数是表示Redis键名的脚本后的参数数量(从第三个参数开始)。EVALscriptnumkeyskey-语法以下是RedisEVA......
  • php redis 悲观锁
    悲观锁(PessimisticLock),顾名思义,就是每次处理redis数据都以最悲观的场景展开,每次去拿数据的时候都认为别人会修改,所以每次在拿数据的时候都会上锁,这样别人想拿这个数据就会block直到它拿到锁。传统的关系型数据库里边就用到了很多这种锁机制,比如行锁,表锁等,读锁,写锁等,都是在做......
  • 如何使用 Helm 在 K8s 上集成 Prometheus 和 Grafana|Part 2
    在Part1中,我们一起了解了什么是Prometheus和Grafana,以及使用这些工具的前提条件和优势。在本部分,将继续带您学习如何安装Helm以及如何使用PrometheusHelmCharts。 开始使用Helm和HelmChartArtifactHub为HelmChart提供了公共和私有资源库。我们将使用这些H......
  • Zabbix5.0监控Redis6.0实录
    Zabbix5.0监控Redis6.0实录1.环境描述ZabbixServer:5.0.12Redis:6.2.6(集群,有密码)操作系统:Centos72.监控步骤(1)通过yum安装zabbix-agent2#yum-yinstallzabbix-agent2这里安装的zabbix-agent2也是5.0版本。(2)配置zabbix-agent2配置文件,我的配置文件如下......
  • redis 高可用 二 (主从复制、哨兵和集群Cluster)
    高可用分类主从复制主从复制是高可用Redis的基础,哨兵和集群都是在主从复制基础上实现高可用的。主从复制主要实现了数据的多机备份,以及对于读操作的负载均衡和简单的故障恢复。缺陷:故障恢复无法自动化;写操作无法负载均衡;存储能力受到单机的限制。 哨兵在主从复制的基础......
  • 无涯教程-Redis - DISCARD命令函数
    RedisDISCARD命令刷新事务中所有先前排队的命令,并将连接状态恢复为正常。DISCARD-返回值返回字符串OKDISCARD-语法redisDISCARD命令的基本语法如下所示:redis127.0.0.1:6379>DISCARD参考链接https://www.learnfk.com/redis/transactions-discard.html......
  • 无涯教程-Redis - UNSUBSCRIBE 命令函数
    RedisUNSUBSCRIBE命令从给定通道取消订阅客户端,如果没有给出通道,则从所有通道取消订阅。UNSUBSCRIBE-语法以下是RedisUNSUBSCRIBE命令的基本语法。redis127.0.0.1:6379>UNSUBSCRIBEchannel[channel...]UNSUBSCRIBE-返回值返回数组。UNSUBSCRIBE-示例redi......
  • 无涯教程-Redis - SUBSCRIBE 命令函数
    RedisSUBSCRIBE命令将客户端订阅到指定的频道。SUBSCRIBEchannel-语法以下是RedisSUBSCRIBE命令的基本语法。redis127.0.0.1:6379>SUBSCRIBEchannel[channel...]SUBSCRIBEchannel-返回值返回数组。SUBSCRIBEchannel-示例redis127.0.0.1:6379>SUBSC......