1. 虚拟机centos集群搭建

我只是一个虾纸丫 提交于 2020-02-15 11:40:42

课程大纲

1、在虚拟机中安装CentOS
2、在每个CentOS中都安装Java和Perl
3、在4个虚拟机中安装CentOS集群
4、配置4台CentOS为ssh免密码互相通信

整体架构

  1. 一步一步搭建出一个4个节点的CentOS集群。学习大型的分布式的redis集群架构,一步一步纯手工搭建redis集群,集群部署,主从架构,分布式集群架构

  2. 实时计算技术的应用,包括 storm,讲解一下storm的基础知识,对于java工程师来说,会用就可以了,用一些storm最基本的分布式实时计算的feature就ok了,搭建一个storm的集群

  3. 部署我们整套的系统,nginxtomcat+java web应用,mysql

redis集群,独立的一套机器
storm集群,独立的一套机器
nginx,独立部署
tomcat + java web应用,独立部署
mysql,独立部署

十几个机器,去部署整套系统,在自己的笔记本电脑上来讲课的,这么玩儿撑不住的,4台虚拟机,每台虚拟机是1G的内存,电脑基本还能撑住

电脑本身就6个G内存的话,学习这种大型的系统架构的课程,是有点吃力,给大家建议,几个G的内存条,也就几百块钱,给自己最好加个内存条,至少到8G以上,16G凑合

环境搭建

在虚拟机中安装CentOS

  1. 启动一个virtual box虚拟机管理软件(其他如vmware)
  2. 使用课程提供的CentOS 6.5镜像即可,CentOS-6.5-i386-minimal.iso
  3. 创建虚拟机:打开Virtual Box,点击“新建”按钮,点击“下一步”,输入虚拟机名称为eshop-cache01,选择操作系统为Linux,选择版本为Red Hat,分配1024MB内存,后面的选项全部用默认,在Virtual Disk File location and size中,一定要自己选择一个目录来存放虚拟机文件,最后点击“create”按钮,开始创建虚拟机。
  4. 设置虚拟机网卡:选择创建好的虚拟机,点击“设置”按钮,在网络一栏中,连接方式中,选择 Bridged Adapter
  5. 安装虚拟机中的 CentOS 6.5 操作系统:选择创建好的虚拟机,点击“开始”按钮,选择安装介质(即本地的CentOS 6.5镜像文件),选择第一项开始安装-Skip-欢迎界面Next-选择默认语言-Baisc Storage Devices-Yes, discard any data-主机名:spark2upgrade01-选择时区-设置初始密码为hadoop-Replace Existing Linux System-Write changes to disk-CentOS 6.5自己开始安装。
  6. 安装完以后,CentOS会提醒你要重启一下,就是reboot
  7. 配置网络
vi /etc/sysconfig/network-scripts/ifcfg-eth0

DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=dhcp
service network restart
ifconfig

BOOTPROTO=static
IPADDR=192.168.0.X
NETMASK=255.255.255.0
GATEWAY=192.168.0.1

service network restart
  1. 配置hosts

配置集群中每个虚拟机的hostname到ip地址的映射

vi /etc/hosts

192.168.0.106 eshop-cache01
192.168.0.107 eshop-cache02
192.168.0.108 eshop-cache03
192.168.0.109 eshop-cache04

  1. 配置xshell

在windows宿主机中,去连接virtual box中的虚拟机

  1. 关闭虚拟机防火墙
service iptables stop
service ip6tables stop
chkconfig iptables off
chkconfig ip6tables off

vi /etc/selinux/config
SELINUX=disabled
  1. 关闭windows的防火墙

后面要搭建集群,有的大数据技术的集群之间,在本地你给了防火墙的话,可能会没有办法互相连接,会导致搭建失败

  1. 配置yum
yum clean all
yum makecache
yum install wget

每个CentOS中安装Java和Perl

WinSCP,xftp,都是在windows宿主机和linux虚拟机之间互相传递文件的一个工具

安装JDK

  1. jdk-7u60-linux-i586.rpm通过xftp上传到虚拟机中
  2. 安装JDK:rpm -ivh jdk-7u65-linux-i586.rpm
  3. 配置jdk相关的环境变量
vi .bashrc
export JAVA_HOME=/usr/java/latest
export PATH=$PATH:$JAVA_HOME/bin
source .bashrc
  1. 测试jdk安装是否成功:java -version

安装Perl

perl,是一个基础的编程语言的安装,tomcat,跑java web应用。

yum install -y 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

为什么要装perl?我们整个大型电商网站的详情页系统,复杂。java+nginx+lua,需要perl。

在4个虚拟机中安装CentOS集群

  1. 按照上述步骤,再安装三台一模一样环境的linux机器
  2. 另外三台机器的hostname分别设置为eshop-cache02,eshop-cache03,eshop-cache04
  3. 安装好之后,在每台机器的hosts文件里面,配置好所有的机器的ip地址到hostname的映射关系

比如说,在eshop-cache01的hosts里面

192.168.31.187 eshop-cache01
192.168.31.xxx eshop-cache02
192.168.31.xxx eshop-cache03
192.168.31.xxx eshop-cache04
  1. 可以利用virtual box 复制功能,复制后需要修改hostname和固定ip

4

ssh免密码互相通信

  1. 首先在三台机器上配置对本机的ssh免密码登录
    ssh-keygen -t rsa。生成本机的公钥,过程中不断敲回车即可,ssh-keygen命令默认会将公钥放在/root/.ssh目录下
cd /root/.ssh
cp id_rsa.pub authorized_keys

将公钥复制为authorized_keys文件,此时使用ssh连接本机就不需要输入密码了
1

  1. 接着配置三台机器互相之间的ssh免密码登录
    使用ssh-copy-id -i hostname命令将本机的公钥拷贝到指定机器的authorized_keys文件中
    2

总结

基于虚拟机的linux集群环境,都准备好了,手上有4台机器,后面玩儿各种redis、kafka、storm、tomcat、nginx,都有机器了。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!