因为是在主机上新建的两个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
这样前期各节点的配置环境就弄好了。