Mac配置Hadoop前,各节点的设置。

因为是在主机上新建的两个linux虚拟机作为节点,遇到了一些问题。
所以记录下整个过程,当然是从像我一样的菜鸟的角度出发。

Linux配置环境

1. 作为root用户登录linux

sudo passwd root
#新建密码
su root
#输入密码

在terminal下root用户切换回普通用户:

su username#用户名
或者
exit
或者
Ctrl + D
su命令用作用户切换
sudo命令用作下放权限

如果想要以root用户图形界面登录系统:

sudo vim /usr/share/lightdm/ligthdm.conf.d/50-ubuntu.conf
#在后面添加
greeter-show-manual-login=true
#:wq
reboot#重启

如遇到 mesg: ttyname failed: Inappropriate ioctl for device 错误

vim /root/.profile
#修改mesg n || true
tty -s && mesg n
#:wq

到这里,作为root用户登录基本无碍。

2. vim 无法insert,方向键乱码,无法删除

删了重装vim

sudo apt-get remove vim-common
sudo apt-get install vim

3. 统一用户名:Mac上Parallels desktop 13 下载的ubuntu直接会生成一个用户名为parallels的用户,但是我们为了mac主机与节点之间通信操作方便,统一为mac的用户名。不采用繁琐的修改文件等操作,所以这里需要重新添加一个用户。

sudo userdel -r dennis(原有用户)
sudo useradd new_dennis(新用户) -m -s /bin/bash
sudo passwd new_dennis
reboot

*删除用户,需要切换到别的用户才能操作。
新用户使用sudo可能会出现 xxx(当前用户) is not in the sudoers file.的问题。是因为没有加入sudo group。

adduser username sudo
或者
usermode -G username sudo 
或者更直接修改文件:
su root
visudo #vi和sudo间没有空格
#在最后一行或者找到root ALL=(ALL) ALL
#添加
用户名 ALL=(ALL) ALL
#按照窗口下方提示退出。我的上面是control + X

4. 修改主机名, hosts添加ip地址

su root#root下修改
vim /etc/hostname
#两个虚拟机分别修改成node1,node2
reboot #生效
sudo scutil –set HostName master #修改mac的hostname为master

在/etc/hosts中添加master,node1,node2的ip地址,可以用相对应的用户名替代其ip地址。每个系统都要添加一遍。

su root #同样需要在root下修改
vim /etc/hosts
#删除127.0.1.1,添加master,node1,node2的ip,如:
10.211.55.5    node1

5. linux下安装openssh-server

ps -e | grep sshd # 查看是否有sshd进程
#如果没有就说明没有安装
sudo apt-get install openssh-server
sudo service ssh start #启动服务

6. 各节点间免密互通

cd ~/.ssh
ssh-keygen -t rsa #生成一对key
cat id_rsa.pub >> authorized_keys # 将公有key添加进authorized_keys

上面的过程在每个系统里都要操作一遍,完成后通过ssh登录当前主机名则不需要输入密码,如:

ssh master

为了让各系统之间互相免密,需要将自己的public key添加至别的节点中。

scp 用户名@主机名:~/.ssh/id_rsa.pub ~/.ssh/authorized_keys_(主机名) #从别的系统下拷贝至当前系统下
或者
scp ~/.ssh/id_rsa.pub 用户名@主机名:~/.ssh/authorized_keys_(主机名) #在当前系统下发送至别的系统下

cat authorized_keys_(主机名) >> authorized_keys #添加进authorized_keys免密

至此,节点间均可互相免密登录。

6.1 root用户远程登录:Permission denied

如果遇到root用户远程登录被拒绝的情况,需要修改/etc/ssh/sshd_config文件。

sudo vim /etc/ssh/sshd_config
#修改 PermitRootLogin  prohibit-password
PermitRootLogin  yes
#save writing
sudo service ssh restart #ssh服务重启生效

7. JDK

从oracle官网下载适用的jdk版本,我安装的是1.8.0_162的。

cd /usr/local/Java/jvm   #jdk压缩包所在目录
sudo tar -xzvf jdk-8u162-linux-x64.tar.gz #解压缩
#修改java相关环境变量
sudo vim ~/.bashrc
#添加
export $JAVA_HOME="/usr/local/Java/jvm/jdk1.8.0_162" #解压后jdk的根目录
export $JRE_HOME=$JAVA_HOME/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib
export PATH=$JAVA_HOME/bin:$PATH
#esc, :wq
#记得source
source ~/.bashrc

这样前期各节点的配置环境就弄好了。

你可能感兴趣的:(Mac配置Hadoop前,各节点的设置。)