Redis部署

    与PostgreSQL类似,部署Redis同样需要两个步骤:

    1. 使用配置项声明/定义Redis集群
    2. 执行创建Redis集群

    下面给出了三个Redis集群的精简定义,包括:

    • 一个1节点,3实例的Redis Sentinel集群
    • 一个2节点,12实例的的Redis Cluster集群 redis-cluster

    您需要在节点上为Redis实例分配唯一的端口号。

    Redis Sentinel集群定义

    1. #----------------------------------#
    2. # redis cluster example #
    3. #----------------------------------#
    4. redis-test:
    5. hosts:
    6. 10.10.10.11:
    7. redis_instances: { 6501 : {} ,6502 : {} ,6503 : {} ,6504 : {} ,6505 : {} ,6506 : {} }
    8. 10.10.10.12:
    9. redis_node: 2
    10. redis_instances: { 6501 : {} ,6502 : {} ,6503 : {} ,6504 : {} ,6505 : {} ,6506 : {} }
    11. redis_cluster: redis-test # name of this redis 'cluster'
    12. redis_mode: cluster # standalone,cluster,sentinel
    13. redis_max_memory: 64MB # max memory used by each redis instance

    Redis普通主从实例定义

    1. ./redis.yml -l redis-sentinel
    2. ./redis.yml -l redis-cluster
    3. ./redis.yml -l redis-standalone

    此外,您还可以针对单个节点或单个Redis实例进行操作:

    尽管这样做并不是推荐的行为,您可以将PostgreSQL与Redis进行混合部署,以充分利用机器资源。

    redis.yml 剧本会在机器上同时部署Redis监控Exporter,包括redis_exporternode_exporter(可选)

    Prometheus默认会使用”多目标抓取”模式,使用节点上9121端口的Redis Exporter抓取该节点上所有的Redis实例。

    查阅Redis监控

    目前Pigsty提供了3个Redis监控面板,作为一个独立监控应用 的组成部分,分别为:

    • Redis Overview:提供整个环境中Redis的全局概览,
    • Redis Cluster: 关注单个Redis业务集群的监控信息, Demo
    • Redis Instance:关注单个Redis实例的详细监控信息,

    您可以使用自带的 redis-benchmark 进行测试,生成一些测试流量:

    1. redis-benchmark -h 10.10.10.13 -p 6501