如何在Power System自动部署Linux开源系统

发布时间:2021-12-16 16:24:17 作者:小新
来源:亿速云 阅读:140

这篇文章主要介绍如何在Power System自动部署Linux开源系统,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!

一、Power Linux部署技术背景

1、背景简介

Linux 诞生至今,它作为一种开源操作系统,已经可以在大多数计算机体系结构上部署,涉及平台从嵌入式芯片系统到大型超级计算机。

一直以来 Power 服务器都支持 Linux 操作系统,但限于其应用范围,普及度和使用度都不高,而与具体系统部署相关描述就更加寥寥。随着 IBM 宣布在北京成立 Power System Linux 中心,这标志着 Power 服务器将在支持 Linux 企业服务方面发力,越来越多的企业级应用会运行在 Power Linux 上。相应地各种 Linux 系统的安装需求会越来越多,如果能使 Linux 自动部署将会给日常维护工作带来极大的方便。

如何在Power System自动部署Linux开源系统

2、Power System 7逻辑分区的两种运行模式

与 x86 平台不同的是, Power 服务器的硬件可扩展性,硬件虚拟化功能。 本文介绍基于 POWER7 的系统针对逻辑分区可以提供 2 种模式:P6/P6+模式和P7模式。其区别如下表所示:

注:同一台 POWER7 服务器内的不同 LPAR 可以运行在不同模式下。

通过以上对比,不难看出系统运行在 Power 7 模式下会使Power system的各方面性能得到更有效地发挥。

3、Linux对Power System 7支持情况

许多Linux发行版都可以运行在Power系列服务器上,这里主要列举Redhat 和 SuSE 对Power 7支持的具体情况:

如何在Power System自动部署Linux开源系统

Linux在Power 7 逻辑分区上支持处理器及线程情况:

如何在Power System自动部署Linux开源系统

值得注意的几点:

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

2. SLES 11 and RHEL6 默认情况下在POWER7上只支持以Power7模式运行

3. 运行SLES 11或RHEL 6的逻辑分区,如果以Power6模式从Power6系统上迁移到Power7上,当重新启动系统的时候将被自适应为Power7模式运行

4. 当Power7的逻辑分区被迁移到Power6以后,重启系统以后将以Power6模式运行

二、Power Linux网络部署原理及方式

1、Power Linux网络部署原理

Power 上 Linux 的网络安装原理与 x86 架构基本类似,不同的是:在系统启动的时,PowerPC 架构系统使用的是 Open Firmware,x86 架构系统使用的是 BIOS。 这种差异就导致Power上无法直接使用 pxelinux 作为网络引导管理器(boot loader)来安装Linux系统,Yaboot 作为 PowerPC 下的网络引导管理器(boot loader)将代替pxelinux完成网络引导安装操作。

Yaboot 是一个针对 PowerPC 的网络引导管理器,主要用于基于Open Firmware 启动引导的机器,包括Apple Macintosh, IBM RS/6000, IBM pSeries and IBM OpenPower。

PowerPC 下的 Linux 网络启动过程,如下图所示:

如何在Power System自动部署Linux开源系统

PowerPC 下的 Linux 网络启动过程

网络启动过程描述:

2、Power Linux网络部署方式

Power 平台下 Linux 可以选择两种网络安装方式:一种是基于 AIX NIM 服务器,另外一种是基于Linux DHCP 服务器。

两种方式的使用特点具体如下:

基于 AIX NIM 服务器:

需要被安装 Linux 的网络启动镜像文件(即,安装光盘目录下文件 images/netboot/ppc64.img 下同)

在 Linux 的网络启动镜像文件不大于32MB的情况下,本安装方式可以工作。

特别注意:当网络启动镜像文件大于32MB时,不得不采用另外的方式进行网络安装

(例如:RHEL6 GA 64位系统的网络启动镜像文件--images/netboot/ppc64.img是大于32MB的,将不能直接采用此文件并基于这种方式网络安装)

基于 Linux DHCP 服务器:

根据以上特点,管理员可以根据自己硬件的环境情况,选择合适的安装方式。

三、以Redhat和SuSE为例介绍自动部署及实践

介绍网络自动化部署 Linux 的文章已经很多,这里就不再详细描述安装步骤,请参考相关文章。本节将偏重介绍 Linux 在具体的 Power 逻辑分区网络自动安装时应注意的问题和实践。

1、准备逻辑分区和安装介质

如果在逻辑分区上安装 Linux 系统,需要事先划分逻辑分区,并分配足够大小的硬盘空间。 可以通过购买安装 CD/DVD,或者从网络上下载安装镜像文件。获得安装介质后,将对应安装文件迁移到共享服务器上。

注意:获得介质必须是针对 PowerPC 平台的安装文件;检查实际存放的安装介质路径与NFS服务共享目录保持一致。

2、配置安装服务器

分别以两种安装方式介绍 TFTP/DHCP 的配置情况:

a. 基于NIM服务器:

TFTP资源定义:将 Red Hat/SuSE Linux 网络引导镜像,从安装介质中复制到 /tftpboot 下,如下所示:

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

BOOTP配置定义:

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

注:检查 /etc/tftpaccess.ctl 文件,确认网络安装需访问的目录定义生效

# NIM access for network boot allow:/tftpboot

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

refresh -s inetd

b. 基于 Linux DHCP服务器:

TFTP资源定义:

root@dhcp:/tftpboot> tree /tftpboot | |--pSeries/ | |-- rhel | | |-- vmlinuz | | `-- ramdisk.image.gz | |-- sles | | `-- sles11-sp2-inst64 | `-- yaboot `-- yaboot.conf

DHCP配置情况:

#/etc/dhcp/dhcpd.conf option domain-name "test.power.com"; option domain-name-servers 192.168.0.8; option routers 192.168.0.1; ddns-update-style none; ignore unknown-clients; allow bootp; subnet 192.168.0.0 netmask 255.255.255.0 { default-lease-time 86400; max-lease-time 604800; host test1-rhel5 { next-server 192.168.0.102; filename "pSeries/yaboot"; hardware ethernet AA:BB:CC:DD:11:22; fixed-address 192.168.0.10; } host test2-sles10 { next-server 192.168.0.102; filename "pSeries/yaboot"; hardware ethernet AA:BB:CC:DD:11:33; fixed-address 192.168.0.11; } }

Yaboot的配置定义:

default=test1-rhel5 timeout=100 image=pSeries/rhel/vmlinuz #指定内核镜像文件路径 label=test1-rhel5 initrd=pSeries/rhel/ramdisk.image.gz#指定内存镜像文件路径append="ks=nfs:9.181.0.102:/export/ksFiles/test1-rhel5.ks.cfg ksdevice=eth0\ initrd=pSeries/rhel/ramdisk.image.gz\ dns=192.168.0.8 ip=192.186.0.10 gateway=192.186.0.1 netmask=255.255.255.0\ method=nfs:9.181.0.102:/export/redhat5u5p\ keymap=us lang=en_GB.UTF-8 vnc"#指定kickstart文件及网络安装参数 read-only image=pSeries/rhel/sles11-sp2-inst64#指定网络引导内核镜像文件路径 label=test2-sles10#定义安装标签append="autoyast=nfs://192.186.0.102:/export/autoyast/test2-sles10.yast.xml\ dns=9.181.2.101\install=nfs://192.186.0.102:/export/SLES11SP2\ hostip=192.186.0.11 gateway=192.186.0.1 netmask=255.255.255.0"#指定AutoYaST2文件及网络安装参数 #此处添加”\”仅为显示需要,实际配置中均为连续一行。

3、NFS服务定义:

共享对应安装介质存放目录,为网络安装提供安装介质连接。

root@dhcp:/tftpboot> exportfs /export <world>

4、自动安装应答文件kickstart/AutoYaST:

定义自动安装应答文件是自动部署中的重要环节。kickstart/AutoYaST2分别是Redhat和SuSE下的自动化安装管理工具,在此工具中不仅可以定义几乎所有交互安装时需要的信息(包括指定分区大小,需要安装软件等),还可以定义在安装之前或之后执行自定义的脚本。这让系统安装操作范围得到很大的扩展,使得系统部署工作可以很轻松地满足各种系统安装需求。

关于这两个工具的使用说明,读者可以访问本文给出的相关连接进行了解,下面分别给出 Redhat 的kickstart 和 SuSE 的AutoYaST2 两个实例模板

#test1-rhel5.ks.cfg install nfs --server 192.168.0.102 --dir /export/redhat5u5p key --skip lang en_US.UTF-8 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 rootpw 123456 firewall --disabled authconfig --enableshadow --enablemd5 selinux --permissive timezone --utc Asia/Shanghai reboot bootloader --location=partition --driveorder=sda --append="console=hvc0 rhgb quiet" clearpart --all --initlabel --drives=sda part prepboot --fstype "PPC PReP Boot" --size=10 --ondisk=sda part / --fstype ext3 --size=1024 --ondisk=sda part swap --size=2048 --ondisk=sda part pv.5 --size=100 --grow --ondisk=sda volgroup basevg --pesize=32768 pv.5 logvol /tmp --fstype ext3 --name=tmp --vgname=basevg --size=1024 logvol /opt --fstype ext3 --name=opt --vgname=basevg --size=1024 logvol /usr --fstype ext3 --name=usr --vgname=basevg --size=2976 logvol /var --fstype ext3 --name=var --vgname=basevg --size=2048 logvol /home --fstype ext3 --name=home --vgname=basevg --size=1024 %packages @admin-tools @base @core @editors @base-x @gnome-desktop %post echo "search test.power.com" > /etc/resolv.conf echo "nameserver 192.168.0.8" >> /etc/resolv.conf BOOT=`nvsetenv | grep boot-device | sed s/:.*$/,0/ | cut -d '=' -f 2` nvsetenv boot-device $BOOT #test2-sles10.yast.xml 由于篇幅限制,本例在保证定义完整情况下对具体配置有所删减,请使用时参考相关文档 <?xml version="1.0"?> <!DOCTYPE profile SYSTEM "/usr/share/autoinstall/dtd/profile.dtd"> <profile xmlns="http://www.suse.com/1.0/yast2ns" xmlns:config="http://www.suse.com/1.0/configns"> <configure> <networking> <interfaces config:type="list"> <interface> #在此处定义网络配置信息,具体请格式参考AutoYaST2文档 </interface> </interfaces> </networking> <scripts> #可以在此处定义安装前/后执行的脚本,具体请格式参考AutoYaST2文档 </scripts> </configure> <install> <bootloader> <global> <activate>true</activate>   <boot_chrp_custom>/dev/sda1</boot_chrp_custom> </global> <loader_type>ppc</loader_type> </bootloader> <general> <clock> <hwclock>localtime</hwclock> <timezone>Asia/Shanghai</timezone> </clock> </general> <partitioning config:type="list"> <drive> <device>/dev/sda</device> <initialize config:type="boolean">true</initialize> <use>all</use> </drive> </partitioning> <runlevel> <default>3</default> </runlevel> <users config:type="list"> <user> <encrypted config:type="boolean">false</encrypted> <home>/root</home> <shell>/bin/bash</shell> <uid>0</uid> <user_password>123456</user_password> <username>root</username> </user> </users> <software> <packages config:type="list"> <package>perl-Digest-MD4</package> </packages> <patterns config:type="list"> <pattern>Basis-Devel</pattern> <pattern>x11-64bit</pattern> </patterns> </software> </install> </profile>

5、HMC中网络启动逻辑分区

本文介绍在HMC中使用 lpar_netboot 命令,通过指定网络引导服务器来启动逻辑分区。

详细命令如下所示:

启动test1-rhel5

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

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环境。

以上是“如何在Power System自动部署Linux开源系统”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注亿速云行业资讯频道!

推荐阅读:
  1. IBM Power6、7配件FC号描述翻译(unix360.part08)
  2. 如何在Kubernetes上部署和伸缩Jenkins

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

linux

上一篇:怎么集成Spring和Struts

下一篇:怎么解析Python中的Dict

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》