为了后续实战演练的方便,本章我将从零开始,一步一步搭建出一个4节点的CentOS集群。后续章节,我们会在这个集群上部署Redis、Nginx、MySQL、Storm等分布式框架。
我的笔记本配置是4核12G,所以4台虚拟机,每台虚拟机分配1G的内存。涉及到的主要软件如下:
- VirtualBox虚拟机 5.2
- CentOS-6.5-i386-minimal
- jdk-7u65-linux-i586
- VanDyke SecureCRT v7.3.5
一、CentOS安装
首先,安装完VirtualBox后,我们新建虚拟机,进行CentOS的安装,这里节点名称可以自定义,我这里叫做“ressmix-dsf01”,后面还要重复相同的步骤装3个节点,版本注意选择Red Hat:
然后一路下一步,注意文件位置根据自己硬盘空间的情况进行选择:
创建完后,注意设置下网卡的模式为“桥接模式”:
然后启动,选择第一项:
点击"skip":
然后改下主机名:
最后安装:
注意,如果读者是WIndows 10的系统,可能因为Hyper-V导致无法启动镜像,可以参考这篇文章解决。
二、系统配置
2.1 网络配置
安装完成后,需要进行基本的网络配置,便于连接到Internet,修改/etc/sysconfig/network-scripts/ifcfg-eth0
文件:
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=dhcp
然后执行service network restart
重启下网卡。通过ifconfig
可以看到这台机器的IP信息:
为了方便后续节点间的通信,我们需要把这台机器的IP固化下,继续修改/etc/sysconfig/network-scripts/ifcfg-eth0
文件,然后重启service network restart
:
BOOTPROTO=static
IPADDR=192.168.0.106
NETMASK=255.255.255.0
GATEWAY=192.168.0.1
GATEWAY就是默认网关,在你自己本机通过
ipconfig
查看。
2.2 host配置
修改/etc/hosts
文件,配置hostname到IP地址(192.168.0.106)的映射:
之后,我们就可以在本机通过SecureCRT连接了:
2.3 关闭防火墙
为了我们后面的实操不出问题,把系统的火墙关闭:
service iptables stop
service ip6tables stop
chkconfig iptables off
chkconfig ip6tables off
然后修改/etc/selinux/config
:
SELINUX=disabled
2.4 yum配置
后面我们需要通过yum安装一些软件,所以进行yum配置:
yum clean all
yum makecache
yum install wget
2.5 安装GCC、JDK和Perl
安装完成后,修改环境变量~/.bashrc
,然后执行source .bashrc
:
Perl的话直接用wget
命令安装就可以了,先执行yum install -y gcc
安装GCC,然后执行如下命令:
wget http://www.cpan.org/src/5.0/perl-5.16.1.tar.gz
tar -xzf perl-5.16.1.tar.gz
cd perl-5.16.1
./Configure -des -Dprefix=/usr/local/perl
make && make test && make install
perl -v
2.6 免密通信配置
首先在机器上配置对本机的ssh免密码登录,执行ssh-keygen -t rsa
,生成本机的公钥,过程中不断敲回车即可,ssh-keygen命令默认会将公钥放在/root/.ssh
目录下。
然后执行以下命令,将公钥复制为authorized_keys文件,此时使用ssh连接本机就不需要输入密码了:
cd /root/.ssh
cp id_rsa.pub authorized_keys
接着配置三台机器互相之间的ssh免密码登录,使用ssh-copy-id -i hostname
命令将本机的公钥拷贝到指定机器的authorized_keys
文件中。
三、总结
本章,我带领大家搭建了一个4节点的CentOS集群。这个集群将作为我们后续分布式实战的基础。