Quick Start Guide
xCAT can be a comprehensive system to manage infrastructure elements in Data Center, bare-metal servers, switches, PDUs, and Operation System distributions. This quick start guide will instruct you to set up a xCAT system and manage an IPMI managed bare metal server with Red Hat-based distribution in 15 minutes.
The steps below will be focused on RHEL7, however they should work for other distribution, such as CentOS, SLES, etc, details Operating System & Hardware Support Matrix
Prerequisites
Assume there are two servers named xcatmn.mydomain.com
and cn1.mydomain.com
.
They are in the same subnet
192.168.0.0
.
cn1.mydomain.com
has BMC whichxcatmn.mydomain.com
can access it.
xcatmn.mydomain.com
has Red Hat OS installed, and uses IP192.168.0.2
.
xcatmn.mydomain.com
has access to internet.
cn1.mydomain.com
BMC IP address is10.4.40.254
.Prepare a full DVD for OS provision, and not a
Live CD
ISO, for this example, will useRHEL-7.6-20181010.0-Server-x86_64-dvd1.iso
ISO, you can download it from Red Hat website.
All the following steps should be executed in xcatmn.mydomain.com
.
Prepare the Management Node xcatmn.mydomain.com
Disable SELinux:
echo 0 > /selinux/enforce sed -i 's/^SELINUX=.*$/SELINUX=disabled/' /etc/selinux/config
Set the hostname of
xcatmn.mydomain.com
:hostname xcatmn.mydomain.com
Set the IP to STATIC in the
/etc/sysconfig/network-scripts/ifcfg-<proc_nic>
fileUpdate your
/etc/resolv.conf
with DNS settings and make sure that the node could visitgithub
andxcat
official website.Configure any domain search strings and nameservers to the
/etc/resolv.conf
fileAdd
xcatmn
into/etc/hosts
:192.168.0.2 xcatmn xcatmn.mydomain.com
Install xCAT:
wget https://raw.githubusercontent.com/xcat2/xcat-core/master/xCAT-server/share/xcat/tools/go-xcat -O - >/tmp/go-xcat chmod +x /tmp/go-xcat /tmp/go-xcat --yes install source /etc/profile.d/xcat.sh
Configure the system password for the
`root
user on the compute nodes:chtab key=system passwd.username=root passwd.password=abc123
Stage 1 Add your first node and control it with out-of-band BMC interface
Define compute node
cn1
:mkdef -t node cn1 --template x86_64-template ip=192.168.0.3 mac=42:3d:0a:05:27:0c bmc=10.4.40.254 bmcusername=USERID bmcpassword=PASSW0RD
Configure DNS:
makehosts cn1 makedns -n
Check
cn1
Hardware Control:
cn1
power management:
rpower cn1 on
rpower cn1 state
cn1: on
cn1
firmware information:
rinv cn1 firm
cn1: UEFI Version: 1.31 (TDE134EUS 2013/08/27)
cn1: Backup UEFI Version: 1.00 (TDE112DUS )
cn1: Backup IMM Version: 1.25 (1AOO26K 2012/02/23)
cn1: BMC Firmware: 3.10 (1AOO48H 2013/08/22 18:49:44)
Stage 2 Provision a node and manage it with parallel shell
In order to PXE boot, you need a DHCP server to hand out addresses and direct the booting system to the TFTP server where it can download the network boot files. Configure DHCP:
makedhcp -n
Copy all contents of Distribution ISO into
/install
directory, create OS repository and osimage for OS provision:copycds RHEL-7.6-20181010.0-Server-x86_64-dvd1.iso
After
copycds
, the corresponding basic osimage will be generated automatically. Later, package list or postscripts for target compute nodes can be customised. List generated osimages:lsdef -t osimage
Use
xcatprobe
to precheck xCAT management node ready for OS provision:xcatprobe xcatmn [mn]: Checking all xCAT daemons are running... [ OK ] [mn]: Checking xcatd can receive command request... [ OK ] [mn]: Checking 'site' table is configured... [ OK ] [mn]: Checking provision network is configured... [ OK ] [mn]: Checking 'passwd' table is configured... [ OK ] [mn]: Checking important directories(installdir,tftpdir) are configured... [ OK ] [mn]: Checking SELinux is disabled... [ OK ] [mn]: Checking HTTP service is configured... [ OK ] [mn]: Checking TFTP service is configured... [ OK ] [mn]: Checking DNS service is configured... [ OK ] [mn]: Checking DHCP service is configured... [ OK ] ... ... [mn]: Checking dhcpd.leases file is less than 100M... [ OK ] =================================== SUMMARY ==================================== [MN]: Checking on MN... [ OK ]
Start the Diskful OS Deployment:
rinstall cn1 osimage=rhels7.6-x86_64-install-compute
Monitor Installation Process:
makegocons cn1 rcons cn1
Note: The keystroke
ctrl+e c .
will disconnect you from the console.After 5-10 min verify provision status is
booted
:lsdef cn1 -i status Object name: cn1 status=booted
Use
xdsh
to checkcn1
OS version, OS provision is successful:xdsh cn1 more /etc/*release cn1: :::::::::::::: cn1: /etc/os-release cn1: :::::::::::::: cn1: NAME="Red Hat Enterprise Linux Server" cn1: VERSION="7.6 (Maipo)" ... ...