一、安装virtualbox

傻瓜式安装

二、virtualbox中安装CentOS7

1、下载CentOS7

https://www.centos.org/download/

2、安装CentOS7

这一步网上教程很多,我在安装过程中,遇到一个问题,就是virtualbox中没有64位选项,无法安装成功,这里介绍一下这个问题的解决办法:

需要在BIOS中开启虚拟化技术

首先开机进入BIOS,一般机器是按F2,我的T470是按F12,然后进入Security,Virtualization,选择Enable即可,如下图:

redis 创建虚拟节点_redis

这样重启电脑,virtualbox中就出现了64位的选项了,选择相应选项,并CentOS镜像,进行安装。

按照这篇博文步骤安装:https://www.linuxidc.com/Linux/2016-09/135593.htm

三、安装Redis

进入虚拟机的CentOS系统后,在此基础上部署Redis服务,有这么几点需要注意的:

1、redis是由C语言编写,因此在centos上要提前下载gcc-c++编译器。

yum -y install gcc-c++

如果你的系统没有更新,请先更新系统:

运行命令:yum update

2、yum安装wget

yum -y install wget

3、下载安装包

wget http://download.redis.io/releases/redis-3.2.10.tar.gz

4、解压并make安装包

解压命令:tar -zxvf redis-3.0.7.tar.gz

进入解压之后的文件夹:cd redis-3.2.10

make命令:make

5、开始安装

安装命令: make PREFIX=/usr/local/redis install

拷贝配置文件到安装目录:cp redis.conf /usr/local/ redis

6、启动server的两种方式

进入安装之后的bin目录:cd /usr/local/redis/bin

启动server方式一:./redis-server (此方式会会占用你的终端,不能进行其他操作)

启动server方式二:

先修改redis.conf中的daemonize为yes

./bin/redis-server ./redis.conf

7、修改redis.conf文件

a>    vi redis.conf

b>    查找目标内容:/daemonize

c>    查看下一个匹配,按下n(小写n),跳转到上一个匹配,按下N(大写N)

d>    进入编辑模式:i,修改内容,退出编辑模式:esc,保存并退出文档       :wq

8、检查server是否起来。

运行命令: ps -ef | grep redis (看到./bin/redis-server字样说明已经起来了)

9、启动client端

运行命令:./bin/redis-cli

10、 测试client端是否起来

测试命令:ping(出现PONG字样说明成功了)

四、本地机器访问虚拟机中的Redis服务

1、检测是否可以连通:

a>   本地机器打开cmd,先ping虚拟机地址,是否能ping通:ping 虚拟机IP

b>   检测端口是否通着:telnet  虚拟机IP  6379

2、6379端口不通的解决办法

a>   编辑redis.conf文件

将bind 127.0.0.1改为:

#bind 127.0.0.1

b>   6379端口设置对外开放

端口开放需要将该端口开放规则加到iptables中:

iptables –I INPUT –p tcp –-dport 6379 –j ACCEPT

其中 –I 参数就是添加一条规则的意思,还可以用-A添加在最后面,但是我试了会失效,可能是因为前面的规则优先的原因吧,还有待考究
        INPUT 是进入规则,同样还有OUTPUT
        -p 就是protocol什么协议的意思
        --dport是destination port的意思,目标端口
        -j就是制定规则的,可以是ACCEPT、DROP
 
        这样就是把规则加进去了,此时可以通过下面的命令查看,可以看到6379已经加进去了:

iptables –L –n  | grep 6379

在本机测试一下,发现已经可以连接上了,但是此时还没有真正保存,重启之后会失效,但是这个还需要用下面的命令进行保存:

service iptables save

该命令会将6379端口规则写入/etc/sysconfig/iptables,文件中,而不是临时的,重启之后也不会消失,至此虚拟机上面开启redis端口的工作就完成了。