自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

在Power System自動部署Linux開源系統(tǒng)

運維 系統(tǒng)運維
本文以在IBM Power 7邏輯分區(qū)LPAR( Logic Partition )中部署 Linux (主要發(fā)行版 Redhat, SuSE)為例,總結在 Power System 上自動部署 Linux 系統(tǒng)的實踐及經(jīng)驗。

在信息技術變化日新月異的今天, Linux 開源系統(tǒng)以其突出的高性價比,穩(wěn)定性和靈活的跨平臺支持,迅速滲透到各個行業(yè)的應用領域; Power System 憑借其在性能上的優(yōu)勢一直在服務器領域處于前列。 借助日漸成熟的虛擬化技術,Linux 開源系統(tǒng)和 Power System 將會更加有效的結合,在生產(chǎn)應用中發(fā)揮出更大的作用。然而在Power System 上自動部署 Linux 并不像在x86架構下那么為人熟悉,常常會因為各種原因而導致部署失敗。本文將用實例介紹其部署特點及應注意的問題,這會使在Power System 上管理維護Linux工作變得簡單方便。

本文以在IBM Power 7邏輯分區(qū)LPAR( Logic Partition )中部署 Linux (主要發(fā)行版 Redhat, SuSE)為例,總結在 Power System 上自動部署 Linux 系統(tǒng)的實踐及經(jīng)驗。

一、Power Linux部署技術背景

1、背景簡介

Linux 誕生至今,它作為一種開源操作系統(tǒng),已經(jīng)可以在大多數(shù)計算機體系結構上部署,涉及平臺從嵌入式芯片系統(tǒng)到大型超級計算機。

一直以來 Power 服務器都支持 Linux 操作系統(tǒng),但限于其應用范圍,普及度和使用度都不高,而與具體系統(tǒng)部署相關描述就更加寥寥。隨著 IBM 宣布在北京成立 Power System Linux 中心,這標志著 Power 服務器將在支持 Linux 企業(yè)服務方面發(fā)力,越來越多的企業(yè)級應用會運行在 Power Linux 上。相應地各種 Linux 系統(tǒng)的安裝需求會越來越多,如果能使 Linux 自動部署將會給日常維護工作帶來極大的方便。

2、Power System 7邏輯分區(qū)的兩種運行模式

與 x86 平臺不同的是, Power 服務器的硬件可擴展性,硬件虛擬化功能。 本文介紹基于 POWER7 的系統(tǒng)針對邏輯分區(qū)可以提供 2 種模式:P6/P6+模式和P7模式。其區(qū)別如下表所示:

注:同一臺 POWER7 服務器內(nèi)的不同 LPAR 可以運行在不同模式下。

通過以上對比,不難看出系統(tǒng)運行在 Power 7 模式下會使Power system的各方面性能得到更有效地發(fā)揮。

3、Linux對Power System 7支持情況

許多Linux發(fā)行版都可以運行在Power系列服務器上,這里主要列舉Redhat 和 SuSE 對Power 7支持的具體情況:

Linux在Power 7 邏輯分區(qū)上支持處理器及線程情況:

值得注意的幾點:

1. SLES10 SP3 and RHEL 5.5 在POWER7上只支持以Power6兼容模式運行

2. SLES 11 and RHEL6 默認情況下在POWER7上只支持以Power7模式運行

3. 運行SLES 11或RHEL 6的邏輯分區(qū),如果以Power6模式從Power6系統(tǒng)上遷移到Power7上,當重新啟動系統(tǒng)的時候將被自適應為Power7模式運行

4. 當Power7的邏輯分區(qū)被遷移到Power6以后,重啟系統(tǒng)以后將以Power6模式運行

#p#

二、Power Linux網(wǎng)絡部署原理及方式

1、Power Linux網(wǎng)絡部署原理

Power 上 Linux 的網(wǎng)絡安裝原理與 x86 架構基本類似,不同的是:在系統(tǒng)啟動的時,PowerPC 架構系統(tǒng)使用的是 Open Firmware,x86 架構系統(tǒng)使用的是 BIOS。 這種差異就導致Power上無法直接使用 pxelinux 作為網(wǎng)絡引導管理器(boot loader)來安裝Linux系統(tǒng),Yaboot 作為 PowerPC 下的網(wǎng)絡引導管理器(boot loader)將代替pxelinux完成網(wǎng)絡引導安裝操作。

Yaboot 是一個針對 PowerPC 的網(wǎng)絡引導管理器,主要用于基于Open Firmware 啟動引導的機器,包括Apple Macintosh, IBM RS/6000, IBM pSeries and IBM OpenPower。

PowerPC 下的 Linux 網(wǎng)絡啟動過程,如下圖所示:

 

PowerPC 下的 Linux 網(wǎng)絡啟動過程

網(wǎng)絡啟動過程描述:

  • 在網(wǎng)絡環(huán)境準備好后,被安裝節(jié)點加電啟動;
  • 被安裝節(jié)點選擇啟動方式:硬盤、光盤、網(wǎng)絡。圖中選擇網(wǎng)絡啟動,發(fā)送 dhcp 請求;
  • 安裝服務器獲取 dhcp 請求后,根據(jù) dhcpd.conf 的配置給被安裝節(jié)點分配IP;
  • 通過yaboot獲取并啟動內(nèi)核初始化程序;
  • 被安裝節(jié)點內(nèi)核啟動,尋找安裝介質并開始安裝工作;
  • 被安裝節(jié)點系統(tǒng)安裝成功。

2、Power Linux網(wǎng)絡部署方式

Power 平臺下 Linux 可以選擇兩種網(wǎng)絡安裝方式:一種是基于 AIX NIM 服務器,另外一種是基于Linux DHCP 服務器。

兩種方式的使用特點具體如下:

基于 AIX NIM 服務器:

  • 使用直接的 Bootp 請求
  • 不要求提供網(wǎng)卡的 MAC 地址

需要被安裝 Linux 的網(wǎng)絡啟動鏡像文件(即,安裝光盤目錄下文件 images/netboot/ppc64.img 下同)

在 Linux 的網(wǎng)絡啟動鏡像文件不大于32MB的情況下,本安裝方式可以工作。

特別注意:當網(wǎng)絡啟動鏡像文件大于32MB時,不得不采用另外的方式進行網(wǎng)絡安裝

(例如:RHEL6 GA 64位系統(tǒng)的網(wǎng)絡啟動鏡像文件--images/netboot/ppc64.img是大于32MB的,將不能直接采用此文件并基于這種方式網(wǎng)絡安裝)

基于 Linux DHCP 服務器:

  • 使用廣播的Bootp 請求
  • 要求提供網(wǎng)卡的 MAC 地址
  • 使用 Yaboot 定義進行網(wǎng)絡啟動安裝
  • 沒有網(wǎng)絡啟動鏡像大小限制

根據(jù)以上特點,管理員可以根據(jù)自己硬件的環(huán)境情況,選擇合適的安裝方式。#p#

三、以Redhat和SuSE為例介紹自動部署及實踐

介紹網(wǎng)絡自動化部署 Linux 的文章已經(jīng)很多,這里就不再詳細描述安裝步驟,請參考相關文章。本節(jié)將偏重介紹 Linux 在具體的 Power 邏輯分區(qū)網(wǎng)絡自動安裝時應注意的問題和實踐。

1、準備邏輯分區(qū)和安裝介質

如果在邏輯分區(qū)上安裝 Linux 系統(tǒng),需要事先劃分邏輯分區(qū),并分配足夠大小的硬盤空間。 可以通過購買安裝 CD/DVD,或者從網(wǎng)絡上下載安裝鏡像文件。獲得安裝介質后,將對應安裝文件遷移到共享服務器上。

注意:獲得介質必須是針對 PowerPC 平臺的安裝文件;檢查實際存放的安裝介質路徑與NFS服務共享目錄保持一致。

2、配置安裝服務器

分別以兩種安裝方式介紹 TFTP/DHCP 的配置情況:

a. 基于NIM服務器:

TFTP資源定義:將 Red Hat/SuSE Linux 網(wǎng)絡引導鏡像,從安裝介質中復制到 /tftpboot 下,如下所示:

  1. root@nim:/tftpboot> ls -l * 
  2. -rw-r--r-- 1 root system 11333732 Nov 15 2012 rhel5u5-netboot.img 
  3. -rw-r--r-- 1 root system 11612524 Nov 15 2012 rhel5u6-netboot.img 
  4. -rw-r--r-- 1 root system 15006880 Aug 27 17:19 rhel5u7-netboot.img 
  5. -rw-r--r-- 1 root system 9512595 Nov 15 2012 sles10-sp3-inst32 
  6. -rw-r--r-- 1 root system 10682935 Nov 15 2012 sles10-sp3-inst64 
  7. -rw-r--r-- 1 root system 10082439 Nov 15 2012 sles10-sp4-inst32 
  8. -rw-r--r-- 1 root system 11307427 Sep 9 18:08 sles10-sp4-inst64 
  9. -rw-r--r-- 1 root system 19809567 Sep 9 18:18 sles11-inst64 
  10. -rw-r--r-- 1 root system 23733099 Sep 9 19:20 sles11-sp1-inst64 

BOOTP配置定義:

  1. #/etc/bootptab: 
  2. test1-rhel5:bf=/tftpboot/test1-rhel5:ip=192.168.0.10:ht=ethernet:sa=192.168.0.100:sm=255.255.255.0: 
  3. test2-sles10:bf=/tftpboot/test2-sles10:ip=192.168.0.11:ht=ethernet:sa=192.168.0.100:sm=255.255.255.0: 
  4. root@nim:/tftpboot> ls -l test* 
  5. lrwxrwxrwx 1 root system Sep 9 18:15 test1-rhel5 -> rhel5u5-netboot.img 
  6. lrwxrwxrwx 1 root system Sep 9 18:30 test2-sles10 -> sles10-sp3-inst64 

注:檢查 /etc/tftpaccess.ctl 文件,確認網(wǎng)絡安裝需訪問的目錄定義生效

  1. # NIM access for network boot 
  2. allow:/tftpboot 

在每次更改 Bootp 配置之后,需要運行如下命令使新的配置生效。

  1. refresh -s inetd 

b. 基于 Linux DHCP服務器:

TFTP資源定義:

  1. root@dhcp:/tftpboot> tree /tftpboot 
  2. |--pSeries/ 
  3. | |-- rhel 
  4. | | |-- vmlinuz 
  5. | | `-- ramdisk.image.gz 
  6. | |-- sles 
  7. | | `-- sles11-sp2-inst64 
  8. | `-- yaboot 
  9. `-- yaboot.conf 

DHCP配置情況:

  1. #/etc/dhcp/dhcpd.conf 
  2. option domain-name "test.power.com"; 
  3. option domain-name-servers 192.168.0.8; 
  4. option routers 192.168.0.1; 
  5. ddns-update-style none; 
  6. ignore unknown-clients; 
  7. allow bootp; 
  8. subnet 192.168.0.0 netmask 255.255.255.0 { 
  9. default-lease-time 86400; 
  10. max-lease-time 604800; 
  11. host test1-rhel5 { 
  12. next-server 192.168.0.102; 
  13. filename "pSeries/yaboot"; 
  14. hardware ethernet AA:BB:CC:DD:11:22; 
  15. fixed-address 192.168.0.10; 
  16. host test2-sles10 { 
  17. next-server 192.168.0.102; 
  18. filename "pSeries/yaboot"; 
  19. hardware ethernet AA:BB:CC:DD:11:33; 
  20. fixed-address 192.168.0.11; 

Yaboot的配置定義:

  1. default=test1-rhel5 
  2. timeout=100 
  3. image=pSeries/rhel/vmlinuz #指定內(nèi)核鏡像文件路徑 
  4. label=test1-rhel5 
  5. initrd=pSeries/rhel/ramdisk.image.gz#指定內(nèi)存鏡像文件路徑append="ks=nfs:9.181.0.102:/export/ksFiles/test1-rhel5.ks.cfg ksdevice=eth0
  6. initrd=pSeries/rhel/ramdisk.image.gz\ 
  7. dns=192.168.0.8 ip=192.186.0.10 gateway=192.186.0.1 netmask=255.255.255.0\ 
  8. method=nfs:9.181.0.102:/export/redhat5u5p\ 
  9. keymap=us lang=en_GB.UTF-8 vnc"#指定kickstart文件及網(wǎng)絡安裝參數(shù) 
  10. read-only 
  11. image=pSeries/rhel/sles11-sp2-inst64#指定網(wǎng)絡引導內(nèi)核鏡像文件路徑 
  12. label=test2-sles10#定義安裝標簽append="autoyast=nfs://192.186.0.102:/export/autoyast/test2-sles10.yast.xml\ 
  13. dns=9.181.2.101\install=nfs://192.186.0.102:/export/SLES11SP2\ 
  14. hostip=192.186.0.11 gateway=192.186.0.1 netmask=255.255.255.0"#指定AutoYaST2文件及網(wǎng)絡安裝參數(shù) 
  15. #此處添加”\”僅為顯示需要,實際配置中均為連續(xù)一行。 

3、NFS服務定義:

共享對應安裝介質存放目錄,為網(wǎng)絡安裝提供安裝介質連接。

  1. root@dhcp:/tftpboot> exportfs 
  2. /export <world> 

#p#

4、自動安裝應答文件kickstart/AutoYaST:

定義自動安裝應答文件是自動部署中的重要環(huán)節(jié)。kickstart/AutoYaST2分別是Redhat和SuSE下的自動化安裝管理工具,在此工具中不僅可以定義幾乎所有交互安裝時需要的信息(包括指定分區(qū)大小,需要安裝軟件等),還可以定義在安裝之前或之后執(zhí)行自定義的腳本。這讓系統(tǒng)安裝操作范圍得到很大的擴展,使得系統(tǒng)部署工作可以很輕松地滿足各種系統(tǒng)安裝需求。

關于這兩個工具的使用說明,讀者可以訪問本文給出的相關連接進行了解,下面分別給出 Redhat 的kickstart 和 SuSE 的AutoYaST2 兩個實例模板

  1. #test1-rhel5.ks.cfg 
  2. install 
  3. nfs --server 192.168.0.102 --dir /export/redhat5u5p 
  4. key --skip 
  5. lang en_US.UTF-8 
  6. network --device eth0 --bootproto static --ip 192.168.0.10 --netmask 255.255.255.0 --gateway 192.168.0.1 --nameserver 192.168.0.8 --hostname test1-rhel5 
  7. rootpw 123456 
  8. firewall --disabled 
  9. authconfig --enableshadow --enablemd5 
  10. selinux --permissive 
  11. timezone --utc Asia/Shanghai 
  12. reboot 
  13. bootloader --location=partition --driveorder=sda --append="console=hvc0 rhgb quiet" 
  14. clearpart --all --initlabel --drives=sda 
  15. part prepboot --fstype "PPC PReP Boot" --size=10 --ondisk=sda 
  16. part / --fstype ext3 --size=1024 --ondisk=sda 
  17. part swap --size=2048 --ondisk=sda 
  18. part pv.5 --size=100 --grow --ondisk=sda 
  19. volgroup basevg --pesize=32768 pv.5 
  20. logvol /tmp --fstype ext3 --name=tmp --vgname=basevg --size=1024 
  21. logvol /opt --fstype ext3 --name=opt --vgname=basevg --size=1024 
  22. logvol /usr --fstype ext3 --name=usr --vgname=basevg --size=2976 
  23. logvol /var --fstype ext3 --name=var --vgname=basevg --size=2048 
  24. logvol /home --fstype ext3 --name=home --vgname=basevg --size=1024 
  25. %packages 
  26. @admin-tools 
  27. @base 
  28. @core 
  29. @editors 
  30. @base-x 
  31. @gnome-desktop 
  32. %post 
  33. echo "search test.power.com" > /etc/resolv.conf 
  34. echo "nameserver 192.168.0.8" >> /etc/resolv.conf 
  35. BOOT=`nvsetenv | grep boot-device | sed s/:.*$/,0/ | cut -d '=' -f 2` 
  36. nvsetenv boot-device $BOOT 
  37. #test2-sles10.yast.xml 由于篇幅限制,本例在保證定義完整情況下對具體配置有所刪減,請使用時參考相關文檔 
  38. <?xml version="1.0"?> 
  39. <!DOCTYPE profile SYSTEM "/usr/share/autoinstall/dtd/profile.dtd"> 
  40. <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"> 
  41. <configure> 
  42. <networking> 
  43. <interfaces config:type="list"> 
  44. <interface> 
  45. #在此處定義網(wǎng)絡配置信息,具體請格式參考AutoYaST2文檔 
  46. </interface> 
  47. </interfaces> 
  48. </networking> 
  49. <scripts> 
  50. #可以在此處定義安裝前/后執(zhí)行的腳本,具體請格式參考AutoYaST2文檔 
  51. </scripts> 
  52. </configure> 
  53. <install> 
  54. <bootloader> 
  55. <global> 
  56. <activate>true</activate>   <boot_chrp_custom>/dev/sda1</boot_chrp_custom> 
  57. </global> 
  58. <loader_type>ppc</loader_type> 
  59. </bootloader> 
  60. <general> 
  61. <clock> 
  62. <hwclock>localtime</hwclock> 
  63. <timezone>Asia/Shanghai</timezone> 
  64. </clock> 
  65. </general> 
  66. <partitioning config:type="list"> 
  67. <drive> 
  68. <device>/dev/sda</device> 
  69. <initialize config:type="boolean">true</initialize> 
  70. <use>all</use> 
  71. </drive> 
  72. </partitioning> 
  73. <runlevel> 
  74. <default>3</default> 
  75. </runlevel> 
  76. <users config:type="list"> 
  77. <user> 
  78. <encrypted config:type="boolean">false</encrypted> 
  79. <home>/root</home> 
  80. <shell>/bin/bash</shell> 
  81. <uid>0</uid> 
  82. <user_password>123456</user_password> 
  83. <username>root</username> 
  84. </user> 
  85. </users> 
  86. <software> 
  87. <packages config:type="list"> 
  88. <package>perl-Digest-MD4</package> 
  89. </packages> 
  90. <patterns config:type="list"> 
  91. <pattern>Basis-Devel</pattern> 
  92. <pattern>x11-64bit</pattern> 
  93. </patterns> 
  94. </software> 
  95. </install> 
  96. </profile> 

5、HMC中網(wǎng)絡啟動邏輯分區(qū)

本文介紹在HMC中使用 lpar_netboot 命令,通過指定網(wǎng)絡引導服務器來啟動邏輯分區(qū)。

詳細命令如下所示:

啟動test1-rhel5

  1. lpar_netboot -f -i -T off -t ent -s auto -d auto -S 192.168.0.100 -G 192.168.0.1 -C 192.168.0.0 "LPAR01" "test1-rhel5" "POWER01" 

啟動test2-sles10

  1. lpar_netboot -f -i -T off -t ent -s auto -d auto -S 192.168.0.100 -G 192.168.0.1 -C 192.168.0.0 "LPAR02" "test1-sles10" "POWER01" 

通常情況下,在運行啟動命令大約十幾分鐘后,整個安裝部署工作將完成。你將得到一個全新的運行在Power System 7上的按照模板定制好的pLinux環(huán)境。

四、Linux在Power System上的自動部署經(jīng)驗總結

本文從Power Linux的技術背景介紹出發(fā),分析了Linux在Power虛擬化環(huán)境自動部署的原理及方式,并以具體安裝實例來說明自動部署的要點和使用網(wǎng)絡安裝命令的實踐,極大簡化了系統(tǒng)安裝的操作步驟,為Power平臺的Linux部署提供有力的技術支持。

本文著重介紹了Linux在Power system上自動部署的特點和常見問題及相應解決辦法,并結合實例詳細說明 PowerPC 下的系統(tǒng)引導管理器-- Yaboot 及其在網(wǎng)絡安裝中的使用方法。

【作者簡介】曲家富(系統(tǒng)工程師),任職于某大型外資IT企業(yè),從事系統(tǒng)管理工作,專注于系統(tǒng)自動化部署。

責任編輯:黃丹 來源: it168
相關推薦

2015-10-12 10:55:17

Linux開源生態(tài)系統(tǒng)聯(lián)盟

2010-02-05 18:22:30

IBM Power

2010-02-05 18:07:15

IBM Power

2010-02-05 15:13:23

IBM Power S

2013-07-24 14:03:06

Active Powe電源銀行系統(tǒng)

2020-07-27 10:15:51

LinuxJenkins命令

2009-11-13 05:27:44

PowerIBM

2011-03-09 15:17:13

IBM

2021-04-25 18:22:21

Linux服務器論壇

2017-01-03 09:35:36

IBM

2009-08-18 13:56:18

開源代碼Linux系統(tǒng)云計算

2009-04-28 19:09:43

LinuxPower服務器

2017-07-17 10:34:53

Linux系統(tǒng)休眠設備中斷

2009-08-17 08:37:31

2009-02-18 10:23:33

開源Linux經(jīng)濟環(huán)境

2021-11-02 15:49:46

低代碼編程Power Fx微軟

2015-10-08 15:30:29

Linux on PoIBMPower體驗營

2020-05-09 12:01:40

Linux開源軟件SDN

2012-06-25 17:27:46

云計算案例

2017-04-24 18:50:15

AnboxLinuxAndroid
點贊
收藏

51CTO技術棧公眾號