天天看點

RHEL網絡安裝刀片伺服器

最終,跟客戶那邊的工程師進行了相關溝通,将網絡配置成比較“舒服”的環境,本人對網絡不是很懂,一般而言我在客戶那邊部署産品應用,很簡單,給我IP位址或者IP位址段,我在RHEL作業系統上面直接對eth*進行配置就可以使用,是以這次同樣提出這樣的要求,畢竟大家都是搞技術的,要求人家完全同意了。今天就把這個變更做完了,簡單測試了一下,ifconfig eth0 xx.xx.xx.x netmask xx.xx.xx.x ,然後就很順利的通了。

雖然标題為RHEL網絡安裝刀片伺服器,其實說白了,不就是RHEL通過kickstart無人值守安裝普通的機器而已,刀片伺服器,PC機對我們而言不都一樣嘛。因為之前一直沒有将kickstart的配置方法整理到自己部落格上面來,很多時候,還是在網絡上面現找現用,以緻效率有點低。

言歸正傳,下面開始對Kickstart無人值守安裝相關步驟進行簡要說明并記錄如下:

1. 配置yum源,安裝如下服務

1

2

3

4

5

6

7

8

9

<code>[root@blog01 ~]</code><code># mount -o loop /var/www/html/isos/rhel-server-6.3-x86_64-dvd.iso   /media/</code>

<code>[root@blog01 ~]</code><code>#cat /etc/yum.repos.d/core.repo</code>

<code>[core]</code>

<code>name=rhel6u3_core</code>

<code>baseurl=</code><code>file</code><code>:</code><code>///media/</code>

<code>enabled=1</code>

<code>gpgcheck=0</code>

<code>[root@blog01 ~]</code><code># yum install dhcp vsftpd  tftp tftp-server -y</code>

<code>[root@blog01 ~]</code><code>#chkconfig dhcpd on ; chkconfig vsftpd on ; chkconfig xinetd on</code>

2. 相關服務配置檔案修改

1) tftp 相關修改

10

11

12

13

14

15

16

17

18

19

<code>[root@blog01 ~]</code><code># cat /etc/xinetd.d/tftp</code>

<code># default: off</code>

<code># description: The tftp server serves files using the trivial file transfer \</code>

<code>#    protocol.  The tftp protocol is often used to boot diskless \</code>

<code>#    workstations, download configuration files to network-aware printers, \</code>

<code>#    and to start the installation process for some operating systems.</code>

<code>service tftp</code>

<code>{</code>

<code>    </code><code>socket_type        = dgram</code>

<code>    </code><code>protocol        = udp</code>

<code>    </code><code>wait            = </code><code>yes</code>

<code>    </code><code>user            = root</code>

<code>    </code><code>server            = </code><code>/usr/sbin/in</code><code>.tftpd</code>

<code>    </code><code>server_args        = -s </code><code>/tftpboot</code>

<code>    </code><code>disable            = no</code>

<code>    </code><code>per_source        = 11</code>

<code>    </code><code>cps            = 100 2</code>

<code>    </code><code>flags            = IPv4</code>

<code>}</code>

修改16行 server_args 的目錄為/tftpboot

修改17行 disable 設定為no,表明tftp允許被托管

<code>[root@blog01 ~]</code><code># service xinetd  restart  //重新開機xinetd程序</code>

2) dhcp相關修改

20

21

22

23

24

25

26

27

28

29

30

31

32

33

<code>[root@blog01 ~]</code><code># cat /etc/dhcp/dhcpd.conf</code>

<code>ddns-update-style interim;</code>

<code>ignore client-updates;</code>

<code>subnet 10.196.28.0 netmask 255.255.255.0 {</code>

<code>    </code><code>option routers 10.196.28.254;</code>

<code>    </code><code>option subnet-mask 255.255.255.0;</code>

<code>    </code><code>filename </code><code>"pxelinux.0"</code><code>;</code>

<code>    </code><code>next-server 10.196.28.43;</code>

<code>    </code><code>option domain-name-servers 8.8.8.8;</code>

<code>    </code><code>range dynamic-bootp 10.196.28.33 10.196.28.100;</code>

<code>    </code><code>default-lease-</code><code>time</code> <code>21600;</code>

<code>    </code><code>max-lease-</code><code>time</code> <code>43200;</code>

<code>host blog05 {</code>

<code>  </code><code>hardware ethernet 38:EA:A7:A1:FC:7C;</code>

<code>  </code><code>fixed-address 10.196.28.47;</code>

<code>host blog06 {</code>

<code>  </code><code>hardware ethernet 38:EA:A7:A1:FA:A8;</code>

<code>  </code><code>fixed-address 10.196.28.48;</code>

<code>host blog07 {</code>

<code>  </code><code>hardware ethernet 38:EA:A7:A1:F6:DC;</code>

<code>  </code><code>fixed-address 10.196.28.49;</code>

<code>host blog08 {</code>

<code>  </code><code>hardware ethernet 38:EA:A7:A1:FC:58;</code>

<code>  </code><code>fixed-address 10.196.28.50;</code>

<code>host blog09 {</code>

<code>  </code><code>hardware ethernet 38:EA:A7:A1:FE:3E;</code>

<code>  </code><code>fixed-address 10.196.28.78;</code>

啟動dhcp服務

<code>[root@blog01 ~]</code><code># service dhcpd start</code>

<code>Starting dhcpd:                                            [  OK  ]</code>

3)vsftpd 相關配置

安裝好,無需任何配置,啟動服務,直接使用

<code>[root@blog01 ~]</code><code># service vsftpd start</code>

3. 配置kickstart,準備相關檔案

<code>[root@blog01 ~]</code><code># yum install  system-config-kickstart -y</code>

<code>[root@blog01 ~]</code><code># mkdir  /tftpboot</code>

<code>[root@blog01 ~]</code><code># mkdir /tftpboot/pxelinux.cfg</code>

<code>[root@blog01 ~]</code><code># cp /usr/share/syslinux/pxelinux.0 /tftpboot/</code>

<code>[root@blog01 ~]</code><code># cp /media/isolinux/isolinux.cfg /tftpboot/pxelinux.cfg/default</code>

<code>[root@blog01 ~]</code><code># cp /media/isolinux/* /tftpboot/</code>

<code>[root@blog01 ~]</code><code># chmod 644 /tftpboot/pxelinux.cfg/default</code>

<code>[root@blog01 ~]</code><code>#cat  /tftpboot/pxelinux.cfg/default  //檢視如下資訊,添加ks.cfg位置</code>

<code>label linux</code>

<code>menu label ^Install or upgrade an existing system</code>

<code>menu default</code>

<code>kernel vmlinuz</code>

<code>append initrd=initrd.img ks=</code><code>ftp</code><code>:</code><code>//10</code><code>.196.28.43</code><code>/pub/ks</code><code>.cfg</code>

4.生成ks.cfg檔案

<code>[root@blog01 ~]</code><code>#</code> system-config-kickstart

<a href="http://blog.51cto.com/attachment/201310/165802232.jpg" target="_blank"></a>

具體步驟在此不具體說明,貼出最終ks.cfg檔案,如下

34

35

36

37

38

39

40

41

42

43

44

45

46

47

48

49

50

51

52

53

54

55

56

57

58

59

60

61

62

63

64

65

66

67

68

69

70

71

72

73

74

75

76

77

78

79

80

81

82

83

84

85

86

87

88

89

90

91

92

93

94

<code>[root@SJC42KVM01 ~]</code><code># cat /var/ftp/pub/ks.cfg</code>

<code>#platform=x86, AMD64, or Intel EM64T</code>

<code>#version=DEVEL</code>

<code># Firewall configuration</code>

<code>firewall --disabled</code>

<code># Install OS instead of upgrade</code>

<code>install</code>

<code># Use network installation</code>

<code>url --url=</code><code>"ftp://10.196.28.43/pub"</code>

<code># Root password</code>

<code>rootpw --iscrypted $1$eTN.ZnVf$Kprjai3Hzn.qEbSnepP5R/</code>

<code># System authorization information</code>

<code>auth  --useshadow  --passalgo=sha512</code>

<code># Use text mode install</code>

<code>text</code>

<code>firstboot --disable</code>

<code># System keyboard</code>

<code>keyboard us</code>

<code># System language</code>

<code>lang en_US</code>

<code># SELinux configuration</code>

<code>selinux --disabled</code>

<code># Installation logging level</code>

<code>logging --level=info</code>

<code># Reboot after installation</code>

<code>reboot</code>

<code># System timezone</code>

<code>timezone --isUtc Asia</code><code>/Shanghai</code>

<code># Network information</code>

<code>network  --bootproto=dhcp --device=eth0  --onboot=on</code>

<code># System bootloader configuration</code>

<code>bootloader --location=mbr</code>

<code># Clear the Master Boot Record</code>

<code>zerombr</code>

<code># Partition clearing information</code>

<code>clearpart --all --initlabel</code>

<code># Disk partitioning information</code>

<code>part </code><code>/boot</code> <code>--fstype=</code><code>"ext4"</code> <code>--size=400</code>

<code>part swap --fstype=</code><code>"swap"</code> <code>--size=12000</code>

<code>part / --asprimary --fstype=</code><code>"ext4"</code> <code>--grow --size=1</code>

<code>%packages</code>

<code>@base</code>

<code>@client-mgmt-tools</code>

<code>@core</code>

<code>@debugging</code>

<code>@basic-desktop</code>

<code>@desktop-debugging</code>

<code>@desktop-platform</code>

<code>@directory-client</code>

<code>@fonts</code>

<code>@general-desktop</code>

<code>@graphical-admin-tools</code>

<code>@input-methods</code>

<code>@internet-browser</code>

<code>@java-platform</code>

<code>@legacy-x</code>

<code>@network-</code><code>file</code><code>-system-client</code>

<code>@perl-runtime</code>

<code>@print-client</code>

<code>@remote-desktop-clients</code>

<code>@server-platform</code>

<code>@server-policy</code>

<code>@virtualization</code>

<code>@virtualization-client</code>

<code>@virtualization-platform</code>

<code>@virtualization-tools</code>

<code>@x11</code>

<code>pax</code>

<code>python-dmidecode</code>

<code>oddjob</code>

<code>wodim</code>

<code>sgpio</code>

<code>genisoimage</code>

<code>mtools</code>

<code>abrt-gui</code>

<code>certmonger</code>

<code>pam_krb5</code>

<code>krb5-workstation</code>

<code>libXmu</code>

<code>perl-DBD-SQLite</code>

<code>qemu-kvm-tools</code>

<code>qemu-guest-agent</code>

<code>libvirt-snmp</code>

<code>fence-virtd-serial</code>

<code>fence-virtd-multicast</code>

<code>libvirt-java</code>

<code>libvirt-cim</code>

<code>fence-virtd-libvirt</code>

<code>libvirt-qmf</code>

<code>perl-Sys-Virt</code>

<code>libguestfs-java</code>

<code>virt-v2v</code>

<code>libguestfs-tools</code>

<code>%end</code>

拷貝kc.cfg至/var/ftp/pub目錄中

<code>[root@blog01 ~ ]</code><code># cp ks.cfg   /var/ftp/pub/ks.cfg</code>

<code>[root@blog01 ~ ]</code><code># rsync  -avP /media/  /var/ftp/pub/</code>

5.清空防火牆規則,關閉selinux

<code>[root@blog01 ~ ]</code><code># iptables -F;iptables -X; iptables -Z</code>

<code>[root@blog01 ~ ]</code><code># service iptables save; service iptables restart</code>

<code>[root@blog01 ~ ]</code><code># setenforce 0</code>

<code>[root@blog01 ~ ]</code><code># sed -i 's/enforcing/disabled/g' /etc/selinux/config</code>

6.設定刀片第一次從PXE啟動

<a href="http://blog.51cto.com/attachment/201310/170716162.jpg" target="_blank"></a>

然後通過ILO控制刀片啟動即可,等待安裝!

普通PC設定更加簡單,你會的!

本文轉自 暗黑魔君 51CTO部落格,原文連結:http://blog.51cto.com/clovemfong/1306914,如需轉載請自行聯系原作者

繼續閱讀