2
0
mirror of https://github.com/xcat2/xcat-core.git synced 2025-05-29 17:23:08 +00:00

update example

This commit is contained in:
hu-weihua 2016-04-14 03:25:54 -04:00
parent 642059b3c2
commit b2a8ddecf0
2 changed files with 93 additions and 66 deletions

View File

@ -3,11 +3,11 @@ Configuration for Diskful Installation
1. Set script ``mlnxofed_ib_install`` as ``postbootscripts`` or ``postscripts`` ::
chdef <node> -p postbootscripts="mlnxofed_ib_install -p /install/<path>/<MLNX_OFED_LINUX.iso>"
chdef <node> -p postbootscripts="mlnxofed_ib_install -p /install/<subpath>/<MLNX_OFED_LINUX.iso>"
Or ::
chdef <node> -p postscripts="mlnxofed_ib_install -p /install/<path>/<MLNX_OFED_LINUX.iso>"
chdef <node> -p postscripts="mlnxofed_ib_install -p /install/<subpath>/<MLNX_OFED_LINUX.iso>"
xCAT simulates completely the way Mellanox scripts work by using ``postbootscripts``. This way need to reboot after drive installation to make Mellanox drives work reliably just like Mellanox suggested. If you want to use the reboot after operating system installation to avoid reboot twice, you can using ``postscripts`` attribute to install Mellanox dreives. This way has been verified in limited scenarios. For more information please refer to :doc:`The Scenarioes Have Been Verified </advanced/networks/infiniband/mlnxofed_ib_verified_scenario_matrix>`. You can try this way in other else scenarios if you needed.
@ -20,12 +20,12 @@ Configuration for Diskful Installation
imagetype=linux
....
pkgdir=/<os packages directory>
pkglist=/<os packages list directory>/compute.<os>.pkglist
pkglist=/<os packages list directory>/compute.<os>.<arch>.pkglist
....
You can append the ib dependency packages list in the end of ``/<os packages list directory>/compute.<os>.pkglist`` directly like below: ::
You can append the ib dependency packages list in the end of ``/<os packages list directory>/compute.<os>.<arch>.pkglist`` directly like below: ::
#cat /<os packages list directory>/compute.<os>.pkglist
#cat /<os packages list directory>/compute.<os>.<arch>.pkglist
@base
@x11
openssl
@ -38,9 +38,9 @@ Configuration for Diskful Installation
....
Or if you want to isolate IB dependency packages list into a separate file, after you edit this file, you can append the file in ``/<os packages list directory>/compute.<os>.pkglist`` like below way: ::
Or if you want to isolate IB dependency packages list into a separate file, after you edit this file, you can append the file in ``/<os packages list directory>/compute.<os>.<arch>.pkglist`` like below way: ::
#cat /<os packages list directory>/compute.<os>.pkglist
#cat /<os packages list directory>/compute.<os>.<arch>.pkglist
@base
@x11
openssl
@ -50,7 +50,7 @@ Configuration for Diskful Installation
xCAT has shipped some ib pkglist files under ``/opt/xcat/share/xcat/ib/netboot/<ostype>/``, these pkglist files have been verified in sepecific scenarion. Please refer to :doc:`The Scenarioes Have Been Verified </advanced/networks/infiniband/mlnxofed_ib_verified_scenario_matrix>` to judge if you can use it directly in your environment. If so, you can use it like below: ::
#cat /<os packages list directory>/compute.<os>.pkglist
#cat /<os packages list directory>/compute.<os>.<arch>.pkglist
@base
@x11
openssl
@ -133,19 +133,37 @@ Configuration for Diskful Installation
port_lmc: 0x00
link_layer: InfiniBand
Using ``service openibd status`` to verify if openibd works well. Below is the output in SLES ::
#service openibd status
openibd.service - openibd - configure Mellanox devices
Loaded: loaded (/usr/lib/systemd/system/openibd.service; enabled)
Active: active (exited) since Sun 2016-04-10 07:13:46 EDT; 3h 24min ago
Docs: file:/etc/infiniband/openib.conf
Main PID: 48133 (code=exited, status=0/SUCCESS)
CGroup: /system.slice/openibd.service
Apr 10 07:13:39 c910f05c33 openibd[48133]: [34B blob data]
Apr 10 07:13:46 c910f05c33 openibd[48133]: [49B blob data]
Apr 10 07:14:06 c910f05c33 logger[49644]: openibd: Set node_desc for mlx5_0: HCA-1
Using ``service openibd status`` to verify if openibd works well. Below is the output in rhels7.2. ::
# service openibd status
HCA driver loaded
Configured IPoIB devices:
ib0 ib1
Currently active IPoIB devices:
Configured Mellanox EN devices:
Currently active Mellanox devices:
The following OFED modules are loaded:
rdma_ucm
rdma_cm
ib_addr
ib_ipoib
mlx4_core
mlx4_ib
mlx4_en
mlx5_core
mlx5_ib
ib_uverbs
ib_umad
ib_ucm
ib_sa
ib_cm
ib_mad
ib_core

View File

@ -10,17 +10,19 @@ Configuration for Diskless Installation
imagetype=linux
....
pkgdir=/<os packages directory>
pkglist=/<os packages list directory>/compute.<os>.pkglist
pkglist=/<os packages list directory>/compute.<os>.<arch>.pkglist
....
You can append the ib dependency packages list in the end of ``/<os packages list directory>/compute.<os>.pkglist`` directly like below: ::
You can append the ib dependency packages list in the end of ``/<os packages list directory>/compute.<os>.<arch>.pkglist`` directly like below: ::
#cat /<os packages list directory>/compute.<os>.pkglist
@base
@x11
#cat /<os packages list directory>/compute.<os>.<arch>.pkglist
bash
nfs-utils
openssl
ntp
rsyn
dhclient
kernel
.....
#ib part
createrepo
kernel-devel
@ -28,24 +30,26 @@ Configuration for Diskless Installation
....
Or if you want to isolate IB dependency packages list into a separate file, after you edit this file, you can append the file in ``/<os packages list directory>/compute.<os>.pkglist`` like below way: ::
Or if you want to isolate IB dependency packages list into a separate file, after you edit this file, you can append the file in ``/<os packages list directory>/compute.<os>.<arch>.pkglist`` like below way: ::
#cat /<os packages list directory>/compute.<os>.pkglist
@base
@x11
#cat /<os packages list directory>/compute.<os>.<arch>.pkglist
bash
nfs-utils
openssl
ntp
rsyn
dhclient
kernel
.....
#INCLUDE:/<ib pkglist path>/<you ib pkglist file>#
xCAT ships some ib pkglist files under ``/opt/xcat/share/xcat/ib/netboot/<ostype>/``, these pkglist files have been verified in sepecific scenarion. Please refer to :doc:`The Scenarioes Have Been Verified </advanced/networks/infiniband/mlnxofed_ib_verified_scenario_matrix>` to judge if you can use it directly in your environment. If so, you can use it like below: ::
#cat /<os packages list directory>/compute.<os>.pkglist
@base
@x11
#cat /<os packages list directory>/compute.<os>.<arch>.pkglist
bash
nfs-utils
openssl
ntp
rsyn
dhclient
kernel
.....
#INCLUDE:/opt/xcat/share/xcat/ib/netboot/<ostype>/ib.<os>.<arch>.pkglist#
@ -70,48 +74,53 @@ Configuration for Diskless Installation
**[Note]** Mellanox OFED ISO was built on a certain kernal version, If your kernel version does not match with any of the Mellanox offered pre-built RPMs, you can pass ``--add-kernel-support`` attribute to Mellanox to rebuild these RPMs base on your kernel. The line added into ``<profile>.postinstall`` should like below ::
/install/postscripts/mlnxofed_ib_install \
-p /install/<path>/<MLNX_OFED_LINUX.iso> -m --add-kernel-support -end- -i $1 -n genimage
-p /install/<subpath>/<MLNX_OFED_LINUX.iso> -m --add-kernel-support -end- -i $1 -n genimage
Take rhels7.2 on ppc64le for example: ::
# lsdef -t osimage rhels7.2-ppc64le-netboot-compute
#lsdef -t osimage rhels7.2-ppc64le-netboot-compute
Object name: rhels7.2-ppc64le-netboot-compute
exlist=/opt/xcat/share/xcat/netboot/rh/compute.rhels7.ppc64le.exlist
imagetype=linux
osarch=ppc64le
osdistroname=rhels7.2-ppc64le
osname=Linux
osvers=rhels7.2
otherpkgdir=/install/post/otherpkgs/rhels7.2/ppc64le
pkgdir=/install/rhels7.2/ppc64le
pkglist=/install/custom/install/rh/compute.rhels7.ib.pkglist
postinstall=/install/custom/install/rh/compute.rhels7.ppc64le.postinstall
profile=compute
provmethod=netboot
rootimgdir=/install/netboot/rhels7.2/ppc64le/compute
exlist=/opt/xcat/share/xcat/netboot/rh/compute.rhels7.ppc64le.exlist
imagetype=linux
osarch=ppc64le
osdistroname=rhels7.2-ppc64le
osname=Linux
osvers=rhels7.2
otherpkgdir=/install/post/otherpkgs/rhels7.2/ppc64le
permission=755
pkgdir=/install/rhels7.2/ppc64le
pkglist=/install/custom/netboot/rh/compute.rhels7.ppc64le.pkglist
postinstall=/install/custom/netboot/rh/compute.rhels7.ppc64le.ib.postinstall
profile=compute
provmethod=netboot
rootimgdir=/install/netboot/rhels7.2/ppc64le/compute
**[Note]**: If the osimage definition was generated by xCAT command ``copycds``, default value ``/opt/xcat/share/xcat/install/rh/compute.rhels7.pkglist`` was assigned to ``pkglist`` attribute. ``/opt/xcat/share/xcat/install/rh/compute.rhels7.pkglist`` is the sample pkglist shipped by xCAT, recommend to make a copy of this sample and using the copy in real environment. In the above example, ``/install/custom/install/rh/compute.rhels7.ib.pkglist`` is a copy of ``/opt/xcat/share/xcat/install/rh/compute.rhels7.pkglist``. For the same reason, ``/install/custom/install/rh/compute.rhels7.ppc64le.postinstall`` is a copy of ``/opt/xcat/share/xcat/netboot/rh/compute.rhels7.ppc64le.postinstall``. ::
**[Note]**: If the osimage definition was generated by xCAT command ``copycds``, default value ``/opt/xcat/share/xcat/netboot/rh/compute.rhels7.ppc64le.pkglist`` was assigned to ``pkglist`` attribute. ``/opt/xcat/share/xcat/netboot/rh/compute.rhels7.ppc64le.pkglist`` is the sample pkglist shipped by xCAT, recommend to make a copy of this sample and using the copy in real environment. In the above example, ``/install/custom/netboot/rh/compute.rhels7.ppc64le.pkglist`` is a copy of ``/opt/xcat/share/xcat/netboot/rh/compute.rhels7.ppc64le.pkglist``. For the same reason, ``/install/custom/netboot/rh/compute.rhels7.ppc64le.ib.postinstall`` is a copy of ``/opt/xcat/share/xcat/netboot/rh/compute.rhels7.ppc64le.postinstall``. ::
# cat /install/custom/install/rh/compute.rhels7.ib.pkglist
#Please make sure there is a space between @ and group name
wget
ntp
``compute.rhels7.ppc64le.pkglist`` looks like below: ::
# cat /install/custom/netboot/rh/compute.rhels7.ppc64le.pkglist
bash
nfs-utils
net-snmp
rsync
yp-tools
openssh-server
util-linux
openssl
dhclient
bc
......
lsvpd
irqbalance
procps-ng
parted
net-tools
#INCLUDE:/opt/xcat/share/xcat/ib/netboot/rh/ib.rhels7.ppc64le.pkglist#
``compute.rhels7.ppc64le.ib.postinstall`` looks like below: ::
#cat /install/custom/install/rh/compute.rhels7.ppc64le.postinstall
# cat /install/custom/netboot/rh/compute.rhels7.ppc64le.ib.postinstall
#!/bin/sh
#-- Do not remove following line if you want to make use of CVS version tracking
......
.....
# [ -r $workdir/$profile.$ext ] && cat $workdir/$profile.$ext | grep -E '^[[:space:]]*#.*[[:space:]]\$Id' >> $installroot/etc/IMGVERSION
#done
/install/postscripts/mlnxofed_ib_install -p /install/ofed/MLNX_OFED_LINUX-3.2-2.0.0.0-rhel7.2-ppc64le.iso -i $1 -n genimage