====== AIX Installation in p-Series LPAR ====== This page details the whole operation of defining a p series LPAR and installing AIX in to it. This can be found on SBDOCS at:- [[http://bccappsxx.notes.zz.pri/PSPG/SBDoc.nsf/5F9?OpenDocument|AIX creating an LPAR]] ===== Pre Requisites ===== - Server name - Frame to build on - Disk sizes and server parameters (eg. cpu, memory) - ip addresses for backup and prod networks with associated DNS names - Change request ===== High Level Overview ===== - Log in to appropriate HMC with a browser https://hmc1.zzz.pri for Laindon (or hmc2 or hmc3 for West Malling), log in as hscroot and the password. - Create Profile on appropriate P595, remember the LPAR Partition number. Specify "Normal" as profile name, specify memory, and cpu. Create 2 virtual scsi adapters and one virtual ethernet. The scsi adapters will need changing later on after adding a virtual scsi host adapter to VIO. - On the HMC, create a new virtual scsi adapter on each VIO server profile, and remember to use DLPAR to dynamically bring it online. - Go back the the new server profile and adjust the scsi "Server Adapter ID" to be the correct one as defined in VIO. - Create rootvg and rootvgm disks on SVC. - Use scripts to map these disk to the appropriate server. Do this process one disk at a time!!! - Configure boot parameters on NIM server. - Boot new LPAR to SMS and netboot start Installation. ===== Details ===== ==== Define LPAR Profile on HMC ==== Start up a browser session to the appropriate HMC using [[https://url]] & log in. The screen shot shows the initial step:- {{aix:0-createlpar1.png|Select Frame and start the create dialogue}} Name the LPAR and note the LPAR partition number:- {{aix:1-create-name.png|Name the LPAR}} Create a profile, by convention this is called "Normal". {{aix:2-normalprofile.png|Create the 1st profile}} Select "Shared Processor" and fill in the required CPU units. When selecting the range, bear in mind that the max and min values cannot be dynamically exceeed, altering past these limits requires a shutdown. {{aix:3-sharedprocessor.png|Shared Processor parameters}} {{aix:5-procsettings.png|Vales for Shared Processors}} Set the allocated RAM amounts:- {{aix:7-memory.png|Memory settings}} Create the two scsi adapters and the 1st ethernet adapter on VLAN13:- {{aix:9-create-scsi-adapter.png|1st adapter}} {{aix:11-create-scsi-adapter-2nd.png|2nd adapter}} Add one ethernet adapter on VLAN 13 for backup and admin. Later you will add another for dev / training / production use. {{aix:12-create-ethernet-adapter.png|}} There are no physical adapters to select. (Exceptionally there may be but not for the usual LPARS). Virtual Adapter Summary:- {{aix:14-virtualadapters.png|}} Optional Settings, ensure the two boxes are ticked for monitoring. {{aix:16-optionalsettings.png|Optional Settings}} This stage is complete, but you will need to return to update the scsi server slot number. Click "Finish" to finish. Obvious really. Summary Screen {{aix:18-summary.png|Summary Screen}} Back at the server list in the HMC:- {{aix:20-complete.png|}} **LPAR created!** Now the VIO server adapters have to be defined, discovered and dlpar'ed in. ==== Add new server adapters on VIO Profile ==== Still on the HMC, select the 1st VIO scsi server you have selected in the steps above (either Development or Production). Create an adapter in the profile:- {{aix:21-vio-adapter.png|Add adapter to Profile Normal}} DLPAR it in to the profile to allow it to be used straight away:- {{aix:22-vio-dlpar1.png|DLPAR adapter}} {{aix:22-vio-dlpar3.png|DLPAR adapter}} Repeat the last steps on the 2nd scsi adapter. Back on the client partition, update the scsi server adapter to the value from VIO:- {{aix:23-changescsiadapter2.png|}} Log in to VIO with a console as padmin and use cfgdev to discover the new scsi server adapters. The profile setup is complete. \\ ==== Create LUN on SVC ==== Next we need to create two disks for rootvg and rootvgm, the root volume group and its mirror. These LUNS must not be placed on the same mdisk groups to guiard against failure of the disk storage and must be on different io groups to guard against failure of part of SVC. == 1. Decide where to create vdisk on SVC == On appropriate NIM server, to see mgroup sizes and free space, run:- ssh admin@SVC2(wm) (svc3 for laindon) svcinfo lsmdiskgrp id name status mdisk_count vdisk_count capacity extent_size free_capacity 0 M_4821_1673_5 online 10 180 16733.4GB 64 1320.9GB 1 M_4821_1952_5 online 10 160 19522.5GB 64 15.8GB 2 M_8321_1_5_QUOR online 1 0 704.0MB 64 704.0MB 3 M_8321_909_5_0 online 12 95 10908.0GB 64 287.7GB 4 M_8321_779_5_0 online 12 89 9346.7GB 64 476.4GB 5 M_8321_779_5_1 online 12 94 9348.0GB 64 765.8GB 6 M_4821_1673_5_1 online 4 38 6693.5GB 64 1123.5GB 7 M_8321_909_5_1 online 12 83 10908.0GB 64 1121.6GB 8 M_4821_1952_5_1 online 4 37 7809.0GB 64 2233.6GB == 2. Create Vdisk on SVC == Create the rootvg and rootvgm vdisks, on b0045nim, run:- bash-3.00# ssh admin@SVC3 svctask mkvdisk -mdiskgrp M_53S_1396_5 -iogrp 2 -unit gb -size 60 -name unitst1_rootvg Virtual Disk, id [814], successfully created bash-3.00# ssh admin@SVC3 svctask mkvdisk -mdiskgrp M_53S_1396_5 -iogrp 1 -unit gb -size 60 -name unitst1_rootvgm Virtual Disk, id [817], successfully created ''io group'' is svc node number, ''name'' is name of vdisk to create, should be servername_filesystem == 3. Map disks to client partition == In order for the mapping script to work, the server ipaddress must be present in /etc/hosts as ${servername}-gbe. Now is a good time to add it if it is not already there. cd to /opt/support/svc and run ./mapvclient.ksh. The paramenters for this are:- bash-3.00# ./mapvclient.ksh Usage : Format should be mapvclient.ksh LPARname vdiskname bash-3.00# An example dialogue is below, 1st disk, rootvg:- bash-3.00# ./mapvclient.ksh unixtest1 unitst1_rootvg unixtest1 exists on 1 frame(s) attached to hmc1 Server-9119-595-1-SN83724B2 Is this the frame that you want to map to ? Y/N y Mapping vdisk unitst1_rootvg to unixtest1 (vhost7) on VIOS servers B17D(Server-9119-595-1-SN83724B2) do you wish to continue ? Y/N y /opt/support/svc/utilities/vmapdisk.ksh unitst1_rootvg vhost7 B17D Mapping Vdisk unitst1_rootvg on svc3 to B0017-VIOS1SD Running cfgdev on VIOS server B0017-VIOS1SD Mapping Vdisk unitst1_rootvg (hdisk267) to Vhost vhost7 on B0017-VIOS1SD unitst1_rootvg Available Mapping Vdisk unitst1_rootvg on svc3 to B0017-VIOS2SD Running cfgdev on VIOS server B0017-VIOS2SD Mapping Vdisk unitst1_rootvg (hdisk267) to Vhost vhost7 on B0017-VIOS2SD unitst1_rootvg Available bash-3.00# 2nd disk, rootvgm:- bash-3.00# time ./mapvclient.ksh unixtest1 unitst1_rootvgm unixtest1 exists on 1 frame(s) attached to hmc1 Server-9119-595-1-SN83724B2 Is this the frame that you want to map to ? Y/N y Mapping vdisk unitst1_rootvgm to unixtest1 (vhost7) on VIOS servers B17D(Server-9119-595-1-SN83724B2) do you wish to continue ? Y/N y /opt/support/svc/utilities/vmapdisk.ksh unitst1_rootvgm vhost7 B17D Mapping Vdisk unitst1_rootvgm on svc3 to B0017-VIOS1SD Running cfgdev on VIOS server B0017-VIOS1SD Mapping Vdisk unitst1_rootvgm (hdisk268) to Vhost vhost7 on B0017-VIOS1SD unitst1_rootvgm Available Mapping Vdisk unitst1_rootvgm on svc3 to B0017-VIOS2SD Running cfgdev on VIOS server B0017-VIOS2SD Mapping Vdisk unitst1_rootvgm (hdisk268) to Vhost vhost7 on B0017-VIOS2SD unitst1_rootvgm Available real 1m44.806s user 0m1.027s sys 0m0.179s (If the vdisk is built too small, the vdisk can be expanded with:- ssh admin@svc2 svctask expandvdisksize -size 20 -unit gb cstpro_bpo However the volume group on AIX needs to be varied off, after expansion, use bash-3.00# bootinfo -s >aix-hdisknumber< bash-3.00# varyonvg cstpro_bpovg 0516-1434 varyonvg: Following physical volumes appear to be grown in size. Run chvg command to activate the new space. hdisk10 bash-3.00# chvg -g >volumegroup< ==== Define LPAR on NIM Server ==== In this section, we will create a definition on the NIM server, so that we can install the OS onto the LPAR. On the NIM server, cd to /opt/support/nim and run.. ./nim_defmach.ksh lpar_name-gbe IP_of_LPAR (e.g. ./nim_defmach.ksh unixtest1-gbe 10.87.48.201) This will add an entry to /etc/hosts for the LPAR and setup various parameters for the installation. Then to check that everything has gone okay, do lsnim -l LPAR_NAME (e.g. lsnim –l unixtest1-gbe) Which should create output something like bash-3.00# lsnim -l unixtest1-gbe unixtest1-gbe: class = machines type = standalone connect = shell platform = chrp netboot_kernel = mp if1 = net1 unixtest1-gbe 0 cable_type1 = N/A Cstate = ready for a NIM operation prev_state = ready for a NIM operation Mstate = not running Check that its ‘ ready for a NIM operation’, then you need to check that the image it builds from is the correct one, so do an ls –al of /export/nim/image and check that ‘base.image’ is a soft link to the image that you want. Use base61.image for AIX 6.1 installs. ls -l /export/nim/image/base61.image lrwxrwxrwx 1 root system 18 30 Sep 13:08 base61.image -> oradbt405-gbe.image Finally, to setup the install do.. ./nim_install_53.ksh lpar_name-gbe (e.g. ./nim_install_53.ksh rbisdevapp-gbe ) Or for AIX 6.1:- ./nim_install_61.ksh lpar_name-gbe (e.g. ./nim_install_61.ksh unixtest1-gbe ) ==== Start install of OS from HMC terminal ==== Then go to the HMC, check the new LPAR and in the pop-up menu select "Operations => Activate", which will open a new window. Check ‘Open a terminal window or console session’ and Choose ‘Advanced’ Select ‘SMS’ from the ‘Boot Mode’ drop down menu, and hit ‘OK’ {{aix:sms.png|SMS Boot}} Then choose ‘OK’ to start the partition, which will open a console session to the LPAR. Main Menu, option 2, Setup Remote IPL, option 1, Interpartition Logical LAN, option 1, Ip Parameters, configure 1-4 options 1. Your build server ipaddress on VLAN13 2. NIM, 10.84.48.58 at WestMalling, 10.87.48.60 at Laindon 3. 10.84.48.49 at West Malling, 10.87.48.1 at Laindon. 4. 255.255.240.0 at all sites. ESC up a level, option 2, Adapter Configuration, option 2, Spanning Tree. Option 2, Disable. Esc up a level. Esc up a level. option 3, Ping Test. option 1, Ping with defined values. Esc up a level. Esc up a level. Esc up a level. Back at Main menu. option 5, Select Boot Options. option 1, Select Boot Device. option 6, Network. option 1, Virtual Ethernet. option 2, Normal boot. option 1, Yes you are sure. Network Boot starts BOOTP: chosen-network-type = ethernet,auto,none,auto BOOTP: serverIP = 10.84.48.58 BOOTP: requested filename = BOOTP: clientIP = 10.84.49.46 BOOTP: clientHW addr =3e 5e 0 4 10 4 BOOTP: gateway IP = 10.84.48.49 BOOTP: device /vdevice/l-lan@30000004 BOOTP: loc-code U9119.595.836830F-V65-C4-T1 icmp 5 : redirect BOOTP R = 1 BOOTP S = 2 FILE: /tftpboot/cstsvt5-gbe BOOTP: chosen-network-type = ethernet,auto,none,auto BOOTP: serverIP = 10.84.48.58 BOOTP: requested filename = BOOTP: clientIP = 10.84.49.46 BOOTP: clientHW addr =3e 5e 0 4 10 4 BOOTP: gateway IP = 10.84.48.49 BOOTP: device /vdevice/l-lan@30000004 BOOTP: loc-code U9119.595.836830F-V65-C4-T1 Type 1 to use this virtual terminal Type 1 to use English. Ignore the message about the Mksysb os level and boot (spot) not matching if it appears on screen. Type 1 to continue with install. Type 2 to see that hdisk 0 and 1 are avalable to install on. Type 0 to continue with these settings. ===Example Install=== {{aix:mksysb-install.png|mksysb Install}} ==== 1st Job - IMPORTANT! ==== Find out the process number of dsmcad and kill it! This will stop the server attempting to contact Tivoli Backup with the wrong node name, edit /usr/tivoli/tsm/client/ba/bin/dsm.sys to update the nodename with the correct server name. ==== 2nd Job ==== Set disk priority with:- /opt/support/setpriority.ksh 0 ==== Add User community vlan interface ==== In the HMC interface add another Virtual Ethernet Interface to the Profile, connected to the appropriate VLAN. Also add this to the running profile with the DLPAR option. Don't forget to discover this adapter on the LPAR with cfgmgr! On the build LPAR, run cfgmgr to discover the new interface, probably en1. Add the appripriate info for this interface in smitty. It is likely that a secondary interface has been defined for user services to use, add thei in /etc/rc.net:- bash-3.00# cat /etc/rc.net ....cut.... /usr/sbin/ifconfig en1 inet 10.84.16.124 netmask 255.255.240.0 alias 1>/dev/null 2>&1 Check the output with ifconfig:- bash-3.00# ifconfig -a en0: flags=1e080863,480 inet 10.87.48.201 netmask 0xfffff000 broadcast 10.87.63.255 tcp_sendspace 262144 tcp_recvspace 262144 rfc1323 1 en1: flags=1e080863,480 inet 10.87.32.252 netmask 0xfffff000 broadcast 0.0.0.1 lo0: flags=e08084b inet 127.0.0.1 netmask 0xff000000 broadcast 127.255.255.255 inet6 ::1/0 tcp_sendspace 131072 tcp_recvspace 131072 rfc1323 1 As a curiosity, AIX seems to have an IPv6 loopback address even if IPv6 is not defined for the server (lo0: inet6 ::1/0). ===== Finishing off tasks ===== === Log in from Nim server === Log in to the new lpar with ssh from the NIM servers, this will ask if you want to trust the ssh key from NIM, say yes and logout. === NMON === From Jim:- Just a reminder that the /nmon/nmon_data directory needs to be emptied when you build lpars. If old files from the system the mksysb was taken on are not removed this breaks the nmon processing as it prompts for overwrite of existing files. === Metron === Please check the lpars you have recently built to ensure that all entries are commented out in the metron users crontab. === TSM === [[aix:tsm-config]] If this LPAR is a clone of a mksysb image, ensure that you log in to the original machine to re-establish tsm connectivity. Once TSM is set up, please run /usr/bin/dsmcad to start the scheduler again. === Paperwork === Probably in triplicate, countersigned by at least ten people. This organisation is the spawn of a dreadful consulting company and a local authority. - Server handover document to be sent to the service owner. - what else? ===== Problems ===== 1. Using bare hostname instead of hostname-gbe, some places the server name is used, such as the mapping LUNS to servers, but in others, the -gbe interface is used, such as the NIM building process. 2. There is no NIM object named "xxxxx.image" 3. Using the wrong ipaddress for the client, ping may ping existing server.