拿出你的网线。在第一个非头节点上安装 Linux。对于每个非头节点,请按照以下步骤操作。
按照我的示例节点名称和 IP 地址,这是我在设置期间选择的内容
Workstation auto partition remove all partitions on system use LILO as the boot loader put boot loader on the MBR host name wolf01 ip address 192.168.0.101 add the user "wolf" same password as on all other nodes NO firewall |
唯一安装的软件包:网络服务器。取消选择所有其他软件包。
你选择其他任何内容都无关紧要;这是你需要的最低限度。为什么要用你永远不会使用的非必要软件来填充盒子呢?我的研究一直专注于找到启动并运行所需的最小配置。
这里还有另一个非常重要的点:当你转向自动化安装和配置时,你真的永远不会登录到这台机器。只有在设置和安装期间,我才会在机器上直接输入任何内容。
当计算机启动时,如果未连接键盘,它会报错。我无法修改 BIOS,因为我使用的是较旧的废弃机器,没有文档,所以我只是连接了一个“假”键盘。
我在计算机行业工作,看到成百上千的键盘来来往往,有些偶尔会进入垃圾箱。我从垃圾箱里拿出旧的坏键盘,只取出带有角落里小电路板的线缆,即数字锁定键和大小写锁定键指示灯所在的位置。然后我插入线缆,计算机就会认为它有一个完整的键盘,而不会发生任何问题。
同样,如果可以的话,你最好修改你的 bios。这只是一个在没有 bios 程序时使用的技巧。
在你新安装的机器重启后,再次以 root 身份登录,然后...
执行上面提到的相同的 chkconfig 命令来设置正确的服务。
修改 hosts 文件;从 localhost 中删除 “wolfnn”,然后只添加 wolfnn 和 wolf00。
安装 lam
创建 /mnt/wolf 目录并为其设置安全性。
进行 ssh 配置
到目前为止,我们几乎与头节点相同。我不进行 exports 文件的修改。
另外,不要将此行添加到 .bash_profile
sh -c 'ssh-add && bash' |
回想一下,在头节点上,我们创建了一个文件 “authorized_keys”。将该文件(在你的头节点上创建)复制到从节点上的 ~/.ssh 目录。HEAD 节点将登录到所有 SLAVE 节点。
正如 LAM 用户手册中所述,要求是从头节点登录到任何从节点时,不应需要任何交互。因此,将公钥从头节点复制到每个从节点的文件 “authorized_keys” 中,告诉每个从节点“允许 wolf 用户在 wolf00 上无需任何密码即可登录此处;我们知道这是安全的。”
但是你可能还记得文档中指出,首次登录时,它会要求确认。因此,仅在完成上述配置后,返回到头节点,然后键入 ssh wolfnn,其中 “wolfnn” 是你新配置的从节点的名称。它会要求你确认,你只需回答 “yes”,这将是你最后一次需要交互。
通过注销来证明这一点,然后 ssh 返回到该节点,它应该会立即让你登录,而没有任何对话框。
以 root 身份,输入以下命令
cat >> /etc/fstab wolf00:/mnt/wolf /mnt/wolf nfs rw,hard,intr 0 0 <control d> |
我们在这里所做的是自动挂载我们在头节点上的 /etc/exports 文件中放置的导出目录。有关 nfs 的更多讨论将在本文档的后面部分进行。
然后修改 /etc/lilo.conf。
此文件的第二行说
timeout=nn |
修改该行为
timeout=1200 |
修改完成后,我们调用更改。你键入 “/sbin/lilo”,它将显示 “added linux *” 以确认它已接受你对 lilo.conf 文件所做的更改
/sbin/lilo Added linux * |
我为什么要进行此 lilo 修改?如果你在网上研究 Beowulf,并且理解了我到目前为止所做的一切,你可能会想,“我不记得读到过任何关于 lilo.conf 的内容。”
我的所有 Beowulf 节点共享一个电源排插。我打开电源排插,集群中的每个机器都会立即启动。随着启动过程的进行,它会挂载文件系统。看到非头节点从头节点挂载共享目录,它们都必须稍微等待一下,直到头节点启动,并且 NFS 准备就绪。因此,我让每个从节点在 lilo 步骤中等待 2 分钟。与此同时,头节点启动,并使共享目录可用。到那时,从节点最终开始启动,因为 lilo 已经等待了 2 分钟。