大数据学习01之基于vbox 6.0搭建ubuntu 18.04伪集群

概要说明

先看下效果
大数据学习01之基于vbox 6.0搭建ubuntu 18.04伪集群
mac上用vbox 6.0搭建基于Ubuntu 18.04的3台虚拟机,并在虚拟机上安装jdk,设置静态ip,各个虚拟机之间配置ssh免密登录等,windows大同小异。

安装vbox

网上下载,一步一步安装就行,很简单,不多说

安装虚拟机

安装Ubuntu

下载最新的Ubuntu Server长期支持镜像ubuntu-18.04.3-live-server-amd64.iso。
新建虚拟机,选择镜像,一步一步默认就行了,我输入的虚拟机名为Ubuntu0,用户名为hadoop,虚拟机的服务名为hadoop0,大家可以任意,只要符合命名规则就好,设置网络方式为桥接方式,虚拟机通过宿主机器上网,宿主机器也能在网络中识别虚拟机:
大数据学习01之基于vbox 6.0搭建ubuntu 18.04伪集群
启动用hadoop用户进入系统。

设置共享目录

可以直接在虚拟机里面下载,但是网速慢,我在外面通过迅雷等工具下载好,然后共享到虚拟机来安装。

设置共享目录

在本地新建一个目录vmshare,在vbox里面映射到虚拟机。点击设置–>共享文件夹,点击最右边的加号图标,路径为刚建立的目录vmshare,如下:
大数据学习01之基于vbox 6.0搭建ubuntu 18.04伪集群
不要自动挂载,我们手动挂载。

安装增强功能

配置好了共享目录,还需要安装增强功能才能实现共享,启动虚拟机,点击如下菜单安装:
大数据学习01之基于vbox 6.0搭建ubuntu 18.04伪集群
如果没有任何报错,那就成功安装了,我出现了如下报错:
Could not mount the media/drive ‘/Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso’ (VERR_PDM_MEDIA_LOCKED)
大数据学习01之基于vbox 6.0搭建ubuntu 18.04伪集群:Could not mount the media/drive '/Applications/VirtualBox.app/Contents/MacOS/VBoxGuestAdditions.iso' (VERR_PDM_MEDIA_LOCKED)
解决方案:进入虚拟机,执行以下命令:

sudo apt-get install virtualbox-guest-utils

一样的效果。

挂载目录

进入虚拟机,新建一个映射目录:/media/cdrom,我们将共享目录映射到这个目录:

sudo mount -t vboxsf vmshare /media/cdrom

我们在共享目录里面放的东西,就可以在看到了:
大数据学习01之基于vbox 6.0搭建ubuntu 18.04伪集群
我在共享目录放了一个jdk8,在虚拟机可以看到了,后面我们直接把该jdk给安装。

设置静态ip

我们安装集群,ip老变不行,我们给虚拟机设置静态ip,执行下面的命令:

sudo vim /etc/netplan/50-cloud-init.yaml

修改成如下:

network:
    ethernets:
        enp0s3:
            dhcp4: false
            addresses: [192.168.1.102/24]
            gateway4: 192.168.1.1
            nameservers:
                addresses: [192.168.1.1]
    version: 2

启用配置文件:

sudo netplan apply

或是是重新启动,我们ping一下,应该可以了。

安装JDK

这个很简单,做过java开发的,应该都配置过

  • 解压
    把共享目录的jdk,解压到/usr/local/java
sudo tar xvf ~/Downloads/jdk-8u221-linux-x64.tar.gz -C  /usr/local/java
  • 配置环境变量
sudo vim ~/.bashrc

在末尾添加:

export JAVA_HOME=/usr/local/java/jdk1.8.0_221
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib
export PATH=${JAVA_HOME}/bin:$PATH

重新登录下,或者新开一个窗口,用java -version看下效果。

clone多个虚拟机

配置好了一个,没必要每个都这样配置,我们可以使用vbox的clone或者复制功能,需要先关闭虚拟机,右击复制,输入名字,mac地址设定:为所有网卡重新生成MAC地址,其他根据需要选择,使用默认也可以。

设置虚拟机的主机名和静态ip

这样clone的主机名都一样,我们修改下:

sudo vim /etc/hostname

分别为:hadoop1,hadoop2
设置静态ip,只需要将上面第一台机器的ip最后一位修改为103,104即可。
设置主机名跟ip的映射:

sudo vim /etc/hosts

添加:

192.168.1.104 hadoop2
192.168.1.103 hadoop1
192.168.1.102 hadoop0

127.0.0.1也改成相应的服务名,另外一台机器执行同样的操作。切记,只保留这几个,其他不相关的删掉,不然后面会有问题。

配置ssh免密登录

进入用户目录/home/hadoop/.ssh,执行

ssh-keygen -t rsa

一路回车下去,直至完成。
每台机器都执行相同的操作,下面把这三台虚拟机相互交换相互交换。
现在我们让hadoop0上的密钥复制到其他两台机器上去:

scp ~/.ssh/id_rsa.pub hadoop@hadoop1:/home/hadoop/.ssh/id_rsa.pub.UB01
scp ~/.ssh/id_rsa.pub hadoop@hadoop2:/home/hadoop/.ssh/id_rsa.pub.UB01

另外两台机器执行类似的操作,注意后面的文件名:
hadoop01

scp ~/.ssh/id_rsa.pub hadoop@hadoop0:/home/hadoop/.ssh/id_rsa.pub.UB02
scp ~/.ssh/id_rsa.pub hadoop@hadoop2:/home/hadoop/.ssh/id_rsa.pub.UB02

hadoop01

scp ~/.ssh/id_rsa.pub hadoop@hadoop1:/home/hadoop/.ssh/id_rsa.pub.UB03
scp ~/.ssh/id_rsa.pub hadoop@hadoop0:/home/hadoop/.ssh/id_rsa.pub.UB03

把自己的密钥连同别人的两个密钥加到授权密钥中:

cat id_rsa.pub >> authorized_keys;
cat id_rsa.pub.UB01 >> authorized_keys;
cat id_rsa.pub.UB02 >> authorized_keys;

另外两台机器执行类似的操作,注意后面的文件名。
这样三台机器互相就配好了,通过ssh hadoop1可以连过去。

总结

伪分布式集群已经建好,相关的基础软件也装好,还是有很多点要注意,像共享目录和静态ip的配置,都找了不少资料,花了不少时间,下一步,安装hadoop集群。

参考资料

欢迎关注我的微信公众号
大数据学习01之基于vbox 6.0搭建ubuntu 18.04伪集群

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值