# Redis一主多从部署
#### 简介
Redis（Remote Dictionary Server）是一个使用C语言编写的开源、基于内存、分布式、可选持久性的键值对存储数据库。Redis是一个功能丰富的存储系统，适用于多种场景，包括缓存、会话存储、排行榜、实时分析等。它有广泛的应用，并且拥有活跃的社区支持。本教程介绍如何在HCE上安装部署Redis。
#### 准备工作
- 准备两台ECS，并分配公网IP或者弹性公网IP（EIP）；其中一台作为Redis主节点，一台作为从节点。
 
- 安全组入方向都已放通6379端口。
![](https://support.huaweicloud.com/bestpractice-hce/public_sys-resources/notice_3.0-zh-cn.png)
6379端口属于高危端口，建议使用前请做好充分的安全评估。
#### 前置条件
已完成本机yum源的配置，可参考[HCE的REPO源配置](https://support.huaweicloud.com/usermanual-hce/hce_repo.html)进行yum源的配置。
#### 操作步骤
1. 安装Redis软件及配置。 
   1. 在两台ECS上分别执行如下命令安装Redis：
      ```
      dnf install redis6
      ```
      
   
   2. 在两台ECS上分别执行如下命令启动服务：
      ```
      systemctl start redis
      ```
      ![](https://support.huaweicloud.com/bestpractice-hce/public_sys-resources/note_3.0-zh-cn.png)
      如果需要将Redis服务设置为开机自启动，则需要执行如下命令：
      ```
      systemctl enable redis
      ```
      
   
   3. 执行如下命令查看服务状态：
      ```
      systemctl status redis
      ```
      如果显示**active (running)**，则表示服务启动成功。
      
   
   4. 在主节点，编辑"/etc/redis/redis.conf"文件，找到如下属性进行配置：
      ```
      bind <主节点IP>     # 填写主节点IP
      requirepass ******* # 配置密码
      ```
      
   
   5. 在从节点，编辑"/etc/redis/redis.conf"文件，找到如下属性进行配置：
      ```
      bind <从节点IP>                     # 填写从节点IP
      requirepass *******                 # 配置密码
      slaveof <主节点IP> <主节点port>
      masterauth <主节点密码>
      ```
      
   
   6. 在两台ECS上分别执行如下命令重启服务：
      ```
      systemctl restart redis
      ```
      
   
   
   
   
2. 验证。 
   1. 在主节点输入以下命令连接Redis：
      ```
      redis-cli -h <主节点IP>
      auth <密码>
      ```
      
   
   2. 然后输入以下命令查看节点信息，示例如下：
      ```
      127.0.0.1:6379> info replication
      # Replication
      role:master
      connected_slaves:1
      slave0:ip=x.x.x.x,port=6379,state=online,offset=4382,lag=0
      master_replid:5d68ccf7722f461cc5f004c7e96fd7c506990508
      master_replid2:0000000000000000000000000000000000000000
      master_repl_offset:4382
      second_repl_offset:-1
      repl_backlog_active:1
      repl_backlog_size:1048576
      repl_backlog_first_byte_offset:1
      repl_backlog_histlen:4382
      127.0.0.1:6379>
      ```
      
   
   
   
   
![](https://support.huaweicloud.com/bestpractice-hce/public_sys-resources/caution_3.0-zh-cn.png)
以上密码等配置以及Redis部署架构仅用于测试演示，业务环境请谨慎使用。
