📄 0600cluster.htm
字号:
<ul><li>防火墙的设定</li><li>RSH</li><li>NIS Client</li><li>NFS Client</li></ul></ul> <br>基本上,几乎所有的工作都是在 Master 上面做啦! Slave 最大的任务就是进行来自Master 所要求的计算工作,因此,Slave 能够越简单越好~至于 Master 上面,由于我们都是在Master 主机上面下达工作指令,而总不能老是在屏幕前面下达指令吧!因此上,Master通常会有两个网络接口,分别是对外的 Public IP 与对内的 Priavte IP。而既然Master 有提供 Public IP 的设定,自然就比较担心所谓的黑客入侵问题,所以啦,您的Master 主机,要吗就不要开放 Public IP ,要吗就务必要设定很严密的防火墙,并且不必要的服务就尽量关闭他~毕竟我们的Cluster 是要用来做为计算运作的,所以不必要的网络协议服务,当然就是关闭他啦!底下鸟哥将以自己的一个实际案例进行说明的啦!参考看看吧!<br> <br><hr width="100%"><li><a name="step_vbird"></a><font size="+1" color="#000099">鸟哥的一个实例规范</font></li><br> <br>在我这个案例当中, Cluster 主要的功能为:进行 MM5 这个气象模式的运算以及Models-3/CMAQ 这个空气质量模式的运算,而由于这两个咚咚都是使用 PGI Fortran90 做为 Compiler ,因此,我就必须要进行 PGI 的安装啦!而我的硬件架构主要是这样的:<br> <ul><li>Master : 为双 CPU 主机,使用 AMD MP 的 CPU ,并且有一颗 120 GB 的硬盘,此外,由于我的数值模式需要PGI Fortran ,所以就必须要安装 Server 版的 PGI Fortran 喔!</li><li>Slave : 共有三部 Slave ,每一部均为双 CPU 的 AMD MP 的 CPU ,并且有一颗120 GB 的硬盘;</li><li>连接 Master 与 Slave 的为 10/100/1000 的 Switch ,当然,四部主机(1 x master+ 3 x slave)都是安装 Intel 的 1GB 网络卡喔!</li></ul> <br>硬件连接有点像这样:<center><img src="0600cluster_files/cluster-02.jpg" nosave="" height="278" width="410"></center>那么底下就来谈一谈怎么安装他吧!<br> <br><hr width="100%"><li><a name="step_system"></a><font size="+1" color="#000099">系统安装(Red Hat 9 )</font></li><br> <br>我的这个系统使用的是最新的 Red Hat 出版的 Red Hat 9 ,会用这个玩意儿最大的原因是因为Red Hat 是目前支持的 Linux 软件最多的一个 Linux Distribution 了,安装他之后,就比较不会欠东欠西的,此外,很多的软件都是以Red Hat 做为测试的平台,因此我就选择他来做为我的系统平台啊!另外,需要留意的是,由于Slave 并不需要使用到图形接口的功能,他单纯是用在计算上面,因此我没有在slave 上面安装图形接口的打算~至于 Master 则安装了 KDE 这个咚咚喔!好了,Linux的安装相信大家应该都要很熟悉了,所以我就不再谈安装的详细步骤,仅提几个特别需要注意的地方啰:<br> <ul><li><b><font color="#000099">Partition 方面:</font></b></li><br>因为我的硬盘实在是在蛮大的,并且在 Slave 上面也是 120 GB 的硬盘,如果不将Slave 的硬盘使用的话,实在觉得很浪费,因此,一开始我就规划将四部主机的硬盘全部都以NFS 分享到内部网域当中,而为了避免跟系统的档案放在一起,因此,我就将硬盘分割出除了必要的partition 之外,其它的就挂载在 /disk1 这个目录当中,四部主机的 parition都相同,分别是:<br> <ul><li><font color="#000066" face="SimSun">/     : 10GB</font></li><li><font color="#000066" face="SimSun">/var  :  5 GB</font></li><li><font color="#000066" face="SimSun">/tmp  :  3 GB</font></li><li><font color="#000066" face="SimSun">Swap  :  3 GB ( 因为我每部Linux 主机上面都有 1.5 GB 的内存 )</font></li><li><font color="#000066" face="SimSun">/disk1: 96 GB</font></li></ul> <li><b><font color="#000099">安装时选择的套件:</font></b></li><br>所有的主机都需要底下的套件安装(注:因为原本的笔记记录的很乱,所以如果找不到相同的字眼,那就是我写错啦!):<ul><li>Administrattion Tools</li><li>Development Tools</li><li>Editors</li><li>Engineering and Scientific</li><li>FTP Server</li><li>Kernel Development</li><li>Network Servers</li><li>Server configuration Tools</li><li>Sound and vedio</li><li>System Tools</li><li>Text-based Internet</li><li>Windows File servers</li></ul>不过, Master 需要额外再增加 X Window 方面的支持,例如 KDE 与 X-WindowSystem 这两个主要的套件要勾选喔!</ul> <br>系统安装大致上就是这些吧,如果有疏漏的,请未来在安装完毕之后,再以原本Red Hat 9 的光盘来重新安装他吧!反正 Red Hat 系统都是以 rpm 来安装的,挺容易安装的喔!整个安装完毕后,还花不到几分钟呢!<br> <br><hr width="100%"><li><a name="step_network_firewall"></a><font size="+1" color="#000099">防火墙( 含 NAT 主机 ) 与网络设定</font></li><br> <br>由于我们的 Cluster 主要是用在数值运算,因此,当然不需要对外开放网络服务啦!所以,最好就是以私有IP 来进行网络的设定是比较好的!此外,最好还是要设定好防火墙的啦!我的网域参数预设是这样的:<br> <ul><li><font color="#000066">Network/netmask:192.168.10.0/255.255.255.0</font></li><li><font color="#000066">Master:(对外)140.116.xxx.yyy;(对内)192.168.10.30,Gateway 为对外的 Gateway 喔!并且有设定 NAT 啊!</font></li><li><font color="#000066">Slave:192.168.10.10, 192.168.10.20, 192.168.10.40三部,Gateway 为 192.168.10.30</font></li></ul> <br>网络参数的各个档案是这样的:<br> <ul><li><font color="#000066">各个主机的主机名称请修改:/etc/sysconfig/network</font></li><li><font color="#000066">各个主机的网络卡设定项目请修改:/etc/sysconfig/network-scripts/ifcfg-eth0</font></li><li><font color="#000066">各个主机的 DNS 查寻系统请修改:/etc/resolv.conf</font></li><li><font color="#000066">各个主机的内部主机名称查寻系统请修改:/etc/hosts,我的/etc/hosts 如下:</font></li><br><b><font color="#000066" face="SimSun">127.0.0.1      localhost       localhost.localdomain</font></b><br><b><font color="#000066" face="SimSun">192.168.10.10  node1.cluster</font></b><br><b><font color="#000066" face="SimSun">192.168.10.20  node2.cluster</font></b><br><b><font color="#000066" face="SimSun">192.168.10.30  server.cluster</font></b><br><b><font color="#000066" face="SimSun">192.168.10.40  node4.cluster</font></b></ul> <br>而我的每部主机先将所有的网络服务都给他关掉去,仅剩下 SSH 这个网络协议存在而已~所以,我利用Red Hat 提供的 ntsysv 这个指令来选择开机时启动的项目有:<br> <ul><li><font color="#000066" face="SimSun">atd</font></li><li><font color="#000066" face="SimSun">crond</font></li><li><font color="#000066" face="SimSun">iptables</font></li><li><font color="#000066" face="SimSun">keytable</font></li><li><font color="#000066" face="SimSun">network</font></li><li><font color="#000066" face="SimSun">random</font></li><li><font color="#000066" face="SimSun">sshd</font></li><li><font color="#000066" face="SimSun">syslogd</font></li><li><font color="#000066" face="SimSun">xinetd</font></li></ul> <br>至于防火墙系统的规划上面,由于 Master 主机 (192.168.10.30) 具有 NAT的功能,所以必须要修改一下他的防火墙机制,因此,就有两个不同的防火墙机制scripts 啰!另外,由于担心外来的入侵攻击,因此,在这个 Cluster 的系统当中,我的iptables 防火墙机制是使用『MAC(网络卡卡号)』来做为设定的基准,而不是使用IP 啊!为什么呢?因为反正我仅允许我自己同网域内的几部计算机连进来而已,当然没有必要针对IP 啊!所以啰,就必须要收集四部主机的网络卡来允许他进入啰。此外,由于我可能并不在Cluster 前面操作,因此会启用一两部主机的网络卡卡号,好让他能够进入 Cluster呦!底下就将我的防火墙机制给他列出来一下:<br> <ul><li><b><font color="#000099">Master:</font></b></li><table border="1" cols="1" width="550"><tbody><tr><td bgcolor="#000000"><font size="-1" color="#ffffff" face="SimSun">#!/bin/bash</font><br><font size="-1" color="#ffffff" face="SimSun"># This programis for iptables' rules</font><br><font size="-1" color="#ffffff" face="SimSun"># VBird 2003/05/02</font><br><font size="-1" color="#ffffff" face="SimSun">#</font><br><font size="-1" color="#ffffff" face="SimSun"># 0. PATH and
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -