集群基础环境搭建

本测试环境为3台ubuntu18版虚拟机, 地址分别为node1: 192.168.110.222, node2: 192.168.110.223, node3: 192.168.110.224。

安装ssh server并启用root远程登陆

sudo apt-get install openssh-server
sudo passwd root
 sudo sed -i 's/#PermitRootLogin prohibit-password/PermitRootLogin yes/' /etc/ssh/sshd_config
sudo service ssh restart

配置host

按如下命令分别修改三台主机hostname分别为node1, node2, node3

echo node1 > /etc/hostname

设置域名解析,在/etc/hosts文件中加入三行:

192.168.110.222 node1
192.168.110.223 node2
192.168.110.224 node3

设置集群节点之间免密ssh登陆

进入.ssh下rsa公钥私钥文件存放的目录,删除目录下的id_rsa,id_rsa.pub文件。

  1. 登陆node1, 在~/.ssh目录下,执行下面的命令三次回车后生成id_rsa,id_rsa.pub文件。其他主机也使用该方式产生密钥文件。
ssh-keygen -t rsa
  1. 登录hadoop01,输入以下命令,,将id_rsa.pub公钥内容拷贝到authorized_keys文件中。
cat id_rsa.pub >> authorized_keys
  1. 登录其他主机,将其他主机的公钥文件内容都拷贝到node1主机上的authorized_keys文件中,命令如下:
ssh-copy-id -i node1

保证所有节点的公钥都拷贝到了node1主机上的authorized_keys文件中。

  1. 授权authorized_keys文件并分发
chmod 600 authorized_keys
scp authorized_keys root@node2:/root/.ssh
scp authorized_keys root@node3:/root/.ssh
  1. 免密登陆设置完成,通过ssh node2即可自动登陆。

运维自动化轻量级工具pssh

  1. pssh介绍
    pssh是python写的可以并发在多台机器上批量执行命令的工具,它的用法可以媲美ansible的一些简单用法,执行起来速度比ansible快它支持文件并行复制,远程命令执行,杀掉远程主机上的进程等等。杀手锏是文件并行复制,,当进行再远程主机批量上传下载的时候,最好使用它。
  2. 安装
    从https://code.google.com/archive/p/parallel-ssh/downloads下载2.3.1版本。
tar -zxvf pssh-2.3.1.tar.gz
cd pssh-2.3.1
python setup.py install
  1. 命令介绍
  • pssh:在远程多台主机上并行运行命令
  • pscp :把文件并行复制到多台远程主机上
  • prsync:使用rsync协议本地文件同步到远程多台主机上。
  • pnuke:在远程多台主机上并行killall某一进程
  • pslurp:把文件从远程多台主机上复制到本地主机上

用户组与用户

  1. 将明文密码生成加密后的密码
root@zoo1:~# openssl passwd -stdin
hello
mt6AbFh1gQ0rM
  1. 添加用户组
pssh -h ips groupadd hadoop
  1. 添加用户
pssh -h ips useradd hadoop   //  未设密码的方式
pssh -h ips useradd -p mt6AbFh1gQ0rM  hadoop   // 设置密码的方式
  1. 关联用户组
pssh -h ips usermod -g hadoop  hadoop
  1. 目录文件授权
pssh -h ips chgrp -R hadoop /usr/lib/hadoop-xxx/
pssh -h ips chmod -R 770 /usr/lib/hadoop-xxx/

你可能感兴趣的:(集群基础环境搭建)