Linux分布式集群

Linux分布式集群搭建

目前已经完成linxu层面的集群基础(网络/主机名/SSH/时钟/统一用户/JDK),为后续的Hadoop部署奠定基础。

目前节点:

  • debian-master:192.168.122.166 (debian13)
  • debian-slave1:192.168.122.112 (debian13)

虚拟化与网络:KVM/QEMU,default:NAT(virbr0),网段192.168.122.0/24

固定主机名与主机名解析

hostnamectl set-hostname debian-master / debian-slave1

两机/etc/hosts相互加入:

1
2
192.168.122.166  debian-master
192.168.122.112 debian-slave1

验证ping debian-master / debian-slave1均成功

SSH互信

在 master 上为登录 slave1 的账户 jiangshun 分发密钥:

1
2
ssh-keygen -t rsa -b 4096
ssh-copy-id jiangshun@debian-slave1

验证ssh jiangshun@debian-slave1 成功登录

在AI建议下,我统一了集群用户与目录,即两机创建相同运行账户(hadoop)

统一集群后的SSH互信

时间同步(chrony)

Master /etc/chrony/chrony.conf

1
2
allow 192.168.122.0/24
local stratum 10

Slave1 /etc/chrony/chrony.conf

1
server debian-master iburst

验证chronyc sources 可见 debian-master 为时间源,输出显示同步成功

JDK安装与环境变量

安装:sudo apt install openjdk-21-jdk

两机 hadoop 用户 ~/.bashrc 添加:

1
2
3
4
export JAVA_HOME=/usr/lib/jvm/java-21-openjdk-amd64
export HADOOP_HOME=/opt/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$JAVA_HOME/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

验证java -versionecho $JAVA_HOME 正常

补充

如何将用户加入sudoers:

su -进root,再visudo进去,添加Username ALL=(ALL:ALL) ALL

如何固定IP

固定IP参考博客园

参考

debian固定IP

vim进阶指令

ISO源