A large number of resources (files and directories) are needed to support NIM software installation and maintenance operations. Resources can be added through the Web-based System Manager New Resources wizard. The NIM resources are as follows:
To obtain detailed information about any resource, enter the following from the NIM master:
lsnim -Pa ResourceType
The following sections describe detailed information about each NIM resource. The Web-based System Manager and SMIT interfaces are designed to hide much of the detail required for the command line interface. Therefore, this section only documents the resource task procedures for the command line. The following information applies to the other interfaces as well, but discussion of those interfaces is deferred to the online contextual help available for those applications.
The boot resource is an internally managed NIM resource used to indicate that a boot image has been allocated to a client. The boot resource is automatically allocated to clients to support NIM operations requiring a network boot. The boot resource will be automatically deallocated when the operation completes.
A bosinst_data resource represents a file that contains information for the BOS installation program. Normally, the BOS installation program looks for this information in the /bosinst.data file in the BOS installation image. If this file does not exist or if it does not contain all the information that the BOS installation program requires, the program prompts for information by using a console that is local to the target. Information must then be specified manually for the BOS installation to proceed. With a bosinst_data resource, the data can be specified in a NIM resource prior to the installation to prevent the need for prompting at the console.
A sample bosinst.data file (SPOT_Offset /usr/lpp/bosinst/bosinst.template) is located on the SPOT resource server. Also, see Performing a Nonprompted BOS Installation for a sample bosinst_data file.
For instructions on how to create and use a bosinst_data file, see Performing a Nonprompted BOS Installation.
The command line syntax for defining a bosinst_data resource is:
nim -o define -t bosinst_data -a Attribute=Value ... bosinst_dataName
The following attributes are required for the bosinst_data resource:
-a location=Value | Specifies the full path name of the bosinst_data resource file. |
-a server=Value | Specifies the name of the machine where the bosinst_data resource file resides. |
The following attributes are optional for the bosinst_data resource:
A dump resource represents a directory in which client dump directories are maintained. When this type of resource is allocated to a client, NIM creates a subdirectory for the client's exclusive use. This allocated subdirectory is initialized by the dkls_init or dtls_init operation, which creates an empty file in this subdirectory. After initialization, the client uses this file to store any dump images it creates.
The command line syntax for defining a dump resource is:
nim -o define -t dump -a Attribute=Value ... DumpName
The following attributes are required for the dump resource:
The following attributes are optional for the dump resource:
An exclude_files resource represents a file that contains a list of files and directories that should be excluded when creating a system backup image. This resource may be used when a mksysb resource is being created from a running NIM client.
The command line syntax for defining an exclude_files resource is:
nim -o define -t exclude_files -a Attribute=Value ... exclude_filesName
The following attributes are required for the exclude_files resource:
The following attributes are optional for the exclude_files resource:
An fb_script resource represents a file that is used to configure devices when a NIM client is booting for the first time after the BOS installation process is completed. During BOS installation, certain customization operations (such as device configuration) cannot be performed because they require certain daemons to be running. However, at this point in the BOS installation process, daemons are not available. As a result, certain devices may not be configured during system reboot, and have to be manually configured after the system has booted.
You can use an fb_script resource to provide device configuration information. The BOS installation process adds the content of the fb_script resource to the /etc/firstboot file, which is run the first time a client is booted. The /etc/firstboot file then performs the device configuration.
The command line syntax for defining an fb_script resource is as follows:
nim -o define -t fb_script -a server=server_name \ -a location=fbscript_file_location fbscript_object_name
After the fb_script resource is defined, you can allocate the resource and initiate a BOS installation operation using the fb_script resource, as follows:
nim -o bos_inst -a fb_script=fbscript_object_name client_name
The following attributes are required for the fb_script resource:
-a location=Value | Specifies the full path name of the file being defined as the fb_script resource. |
-a server=Value | Specifies the name of the machine where the file for the fb_script resource resides. |
The following attributes are optional for the fb_script resource:
-a comments=Value | Describes the resource. |
-a source=Value | Specifies an existing fb_script resource to be replicated when defining a new resource. The file pointed to by the source resource will be copied to the new location. |
A fix_bundle resource represents a file containing fix keywords to be used by the instfix command which is called by the NIM cust and fix_query operations. NIM mounts the fix_bundle resource on the client so it can be used by the local instfix command. NIM automatically unmounts the resource when the operation has completed.
A fix can include either a single fileset update or multiple fileset updates that are related in some way; fixes are identified by unique keywords. When a fix is identified with an Authorized Program Analysis Report (APAR) number, it includes all the fileset updates that are necessary to fix the reported software problem identified by that number.
The command line syntax for defining a fix_bundle resource is:
nim -o define -t fix_bundle -a Attribute=Value ... fix_bundleName
The following attributes are required for the fix_bundle resource:
-a location=Value | Specifies the full path name of the file containing the list of fixes to manage. |
-a server=Value | Specifies the name of the machine where the fix_bundle resource file resides. |
The following attributes are optional for the fix_bundle resource:
A home resource represents a directory in which client /home directories are maintained. When this type of resource is allocated to a client, NIM creates a subdirectory for the client's exclusive use. This allocated subdirectory is subsequently initialized when you perform the dkls_init or dtls_init operation. After initialization, any time the client performs a network boot, the client NFS mounts this subdirectory over /home to gain access to the home directory that has been set up for its use. This subdirectory remains mounted over /home on the client as long as the client is running.
The command line syntax for defining a home resource is:
nim -o define -t home -a Attribute=Value ... HomeName
The following attributes are required for the home resource:
The following attributes are optional for the home resource:
An image_data resource represents a file that contains information for the BOS installation program. This information describes how physical disks and file systems should be configured in the root volume group during installation. Normally, the BOS installation program determines default values that should be used, or uses an image.data file from a mksysb being restored. You would use a customized image_data resource only in special cases.
A sample image.data file (SPOT_Offset/usr/lpp/bosinst/image.template) is located on the SPOT resource server. For more information about image.data files, see the AIX 5L Version 5.2 Files Reference.
The command line syntax for defining an image_data resource is:
nim -o define -t image_data -a Attribute=Value ... image_dataName
The following attributes are required for the image.data resource:
-a location=Value | Specifies the full path name of the image_data resource file. |
-a server=Value | Specifies the name of the machine where the image_data resource file resides. |
The following attributes are optional for the image.data resource:
An installp_bundle resource represents a file that contains the names of filesets that should be managed by NIM. During an installation or maintenance operation, NIM mounts the installp_bundle file on the client machine so it can be used by the local installp command. NIM automatically unmounts the resource from the client when the operation has completed.
The command line syntax for defining an installp_bundle resource is:
nim -o define -t installp_bundle -a Attribute=Value ... installp_bundleName
The following attributes are required for the installp_bundle resource:
The following attributes are optional for the installp_bundle resource:
An lpp_source resource represents a directory in which software installation images are stored. If the lpp_source contains the minimum set of support images required to install a machine, it is given the simages attribute and can be used for BOS installation (bos_inst) operations. If an lpp_source does not contain enough software to be an simages lpp_source, then it can only be used in NIM cust operations to install software on running machines and SPOTs.
NIM uses an lpp_source for an installation operation by first mounting the lpp_source on the client machine. The installp commands are then started on the client using the mounted lpp_source as the source for installation images. When the installation operation has completed, NIM automatically unmounts the resource.
In addition to providing images to install machines, lpp_source resources can also be used to create and update SPOT resources.
cp /cdfs/usr/sys/inst.images/devices.pci.* lpp_source_directory
You can define an lpp_source in several ways:
The size of an lpp_source may vary greatly with the amount of software it includes. A minimum lpp_source with just enough software to qualify for the simages attribute may be under 100 MB, but a default lpp_source created from a CD-ROM may be over 350 MB. It is recommended that a separate file system be created to contain an lpp_source so the space can be more easily managed. By default, NIM automatically expands a file system as needed when creating an lpp_source and copying images from a source device.
In AIX 5.2 or later, the simages message will only be displayed if the user is creating an lpp_source with the default installation packages. The simages message will display if the simages attribute could not be set for the lpp_source. If a user creates an lpp_source and specifies a list of packages, then the simages message is not printed. The simages attribute is set correctly regardless if a simages message is printed or not.
If a user attempts to do a rte BOS installation with an lpp_source that does not have the simages attribute, the user receives an error. The error message instructs the user to run nim -o check on the lpp_source to determine the missing packages needed for an rte BOS installation. Whenever a user runs nim -o check on an lpp_source after it has been created, the simages message is printed if the lpp_source does not contain all the images needed for a rte BOS installation.
The command line syntax for defining an lpp_source resource is:
nim -o define -t lpp_source -a Attribute=Value ... lpp_sourceName
The following attributes are required for the lpp_source resource:
-a location=Value | Specifies the directory that will contain the installation images. |
-a server=Value | Specifies the name of the machine where the lpp_source is to be created. |
The following attributes are optional for the lpp_source resource:
If a migration installation will be performed on NIM client machines, the lpp_source used in the operation must contain all the required software to migrate the machine.
If the directory specified in the location attribute does not exist, NIM will create the directory. NIM will also remove the directory and its contents if the lpp_source is later removed.
A mksysb resource represents a file that is a system backup image created using the mksysb command. This type of resource can be used as the source for the installation of a client. The mksysb image must reside on the hard disk of a machine in the NIM environment in order to be defined as a resource. It cannot be located on a tape or other external media.
A mksysb resource can be defined from an image that already exists on the hard disk of the NIM master or any NIM client. If such an image does not exist, it can be created when the resource is defined. To create the image when the resource is defined, specify the name of the NIM client that will be the source for the backup, and set the mk_image attribute to yes in the command to define the mksysb resource. Use an exclude_files resource to list any files and directories that should not be included in the backup image.
The command line syntax for defining a mksysb resource is:
nim -o define -t mksysb -a Attribute=Value ... mksysbName
The following attributes are required for the mksysb resource:
-a location=Value | Specifies the full path name of the mksysb image. |
-a server=Value | Specifies the name of the machine where the mksysb image resides or is to be created. |
The following attributes are optional for the mksysb resource:
The nim_script resource is an internally managed NIM resource used to indicate that a script should be run by NIM as part of a NIM operation. The nim_script resource is automatically allocated to support some NIM operations, and it is automatically deallocated when the operations complete.
Depending on the operation, NIM will use the following rules to determine which NIM server to place the nim_script resource on:
A paging resource represents a directory where client paging files are maintained. When this type of resource is allocated to a client, NIM creates a subdirectory for the client's exclusive use. This allocated subdirectory is initialized by the dkls_init or dtls_init operation, which creates a file in this subdirectory that the client configures as a paging device when it performs a network boot. By default, 32 MB are reserved for this file. A different value can be specified using the size flag when the dkls_init or dtls_init operation is performed.
After this resource has been initialized for a client, it is configured as a paging device by the client each time the client performs a network boot.
The command line syntax for defining a paging resource is:
nim -o define -t paging -a Attribute=Value ... PagingName
The following attributes are required for the paging resource:
The following attributes are optional for the paging resource:
A resolv_conf resource represents a file containing valid /etc/resolv.conf entries that define Domain Name Protocol name-server information for local resolver routines. A resolv_conf resource can be allocated to a standalone machine as part of a bos_inst operation or to a diskless or dataless machine as part of a dkls_init or dtls_init operation. Upon successful installation and reboot, the machine will be configured to use the domain name services defined by the resource.
The following are sample entries in a resolv_conf resource file:
nameserver 129.35.143.253 domain test.ibm.com
The command line syntax for defining a resolv_conf resource is:
nim -o define -t resolv_conf -a Attribute=Value ... resolv_confName
The following attributes are required for the resolv_conf resource:
The following attributes are optional for the resolv_conf resource:
A root resource represents a directory in which client root directories are maintained. When this type of resource is allocated to a diskless or a dataless client, NIM creates a subdirectory for the client's exclusive use. This allocated subdirectory is subsequently initialized when you perform the dkls_init or dtls_init operation.
After initialization, anytime the client performs a network boot, the client NFS mounts this subdirectory over "/" to gain access to the root directory that has been set up for its use. This subdirectory remains mounted over / on the client as long as the client is running.
The command line syntax for defining a root resource is:
nim -o define -t root -a Attribute=Value ... RootName
The following attributes are required for the root resource:
The following attributes are optional for the root resource:
A script resource represents a file that is a user-defined shell script. Once defined, this type of resource can be used to perform processing on a client as part of a NIM cust or bos_inst operation.
The script resources are always run by NIM after software installation is performed in cust or bos_inst operations. This allows the scripts to perform configuration processing on the client after all the software is installed. Multiple script resources can be allocated for client use, but the order in which the scripts will be run is not predictable.
The command line syntax for defining a script resource is:
nim -o define -t script -a Attribute=Value ... ScriptName
The following attributes are required for the script resource:
-a location=Value | Specifies the full path name of the script resource file. |
-a server=Value | Specifies the name of the machine where the script resource file resides. |
The following attributes are optional for the script resource:
A shared_home resource represents a directory that can be used as a common /home directory by one or more clients. When this type of resource is allocated to a client, and when the dkls_init or dtls_init operation is performed, NIM configures the client's configuration to use this common directory. After initialization, anytime the client performs a network boot, the client NFS mounts this common directory over its /home directory. This common directory remains mounted as long as the client is running.
The command line syntax for defining a shared_home resource is:
nim -o define -t shared_home -a Attribute=Value ... shared_homeName
The following attributes are required for the shared_home resource:
The following attributes are optional for the shared_home resource:
The SPOT (Shared Product Object Tree ) is a fundamental resource in the NIM environment. It is required to install or initialize all machine configuration types. A SPOT provides a /usr file system for diskless and dataless clients, as well as the network boot support for all clients.
Everything that a machine requires in a/usr file system, such as the AIX kernel, executable commands, libraries, and applications are included in the SPOT. Machine-unique information or user data is usually stored in the other file systems. A SPOT can be located on any standalone machine within the NIM environment, including the master. The SPOT is created, controlled, and maintained from the master, even though the SPOT can be located on another system.
You can create a SPOT by converting the /usr file system (/usr SPOT, or you can locate the SPOT elsewhere within the file system (non-/usr SPOT) on the server.
The /usr SPOT inherits all the optional software that is already installed on the server. All the clients using the /usr SPOT have access to the optional software installed on the server. The non-/usr SPOT can be used to manage a different group of optional software than those that are installed and licensed for the server.
Creating a SPOT by converting the /usr file system has the advantage of being fast and using much less disk space. However, this method does not give you the flexibility to choose which software packages will be included in the SPOT, because all the packages and filesets installed in the /usr file system of the machine serving the SPOT will be included in the SPOT. The second method, creating a non-/usr SPOT, uses a lot more disk space, but it is more flexible. Initially, only the minimum set of software packages required to support NIM clients is installed in the SPOT, but additional packages and filesets can be installed. Also, it is possible to have multiple SPOTs, all with different additional packages and filesets installed, serving different clients.
A SPOT varies in size from 100 MB up to, and sometimes in excess of, 300 MB depending on the software that is installed. Because all device support is installed in the SPOT and the number of device filesets typically increases, the size is not easily predictable from one release of AIX to another.
SPOTs are used to support all NIM operations that require a machine to boot over the network. These operations are as follows:
When a SPOT is created, network boot images are constructed in the /tftpboot directory of the SPOT server, using code from the newly created SPOT. When a client performs a network boot, it uses tftp to obtain a boot image from the server. After the boot image is loaded into memory at the client, the SPOT is mounted in the client's RAM file system to provide all additional software support required to complete the operation.
Each boot image created is up to 4 MB in size. Before creating a SPOT, ensure there is sufficient space in the root (/) file system, or create a separate file system for /tftpboot to manage the space required for the network boot images.
A single network boot image can be accessed by multiple clients; therefore, the network boot image cannot contain any client-specific configuration information. The platform type is specified when the machine object is defined, while the network type is determined from the primary interface definition. Two files are created in the /tftpboot directory on the SPOT server for each client to be network-booted: ClientHostName and ClientHostName.info. The ClientHostName file is a link to the correct network boot image, while the ClientHostName.info file contains the client configuration information.
When the SPOT is defined (and created), the following occurs:
To list the software installed in a SPOT, enter the following command:
nim -o lslpp SPOTName
If you want to change your /usr SPOT back to a normal /usr file system, you must remove the SPOT from the NIM database.
For information about software installation and maintenance tasks you can perform on a SPOT, see Customizing NIM Clients and SPOT Resources.
Each network boot image supports a single network, platform, and kernel type. The network boot image files are named SPOTName.Platform.Kernel.Network. The network types are Token-Ring, Ethernet, and FDDI. The platform types are:
The rs6ksmp platform for AIX 4.2 (and later) SPOTs is represented by the boot image with a platform type of rs6k and a kernel type of mp.
The kernel types are:
up | Used for single processor machines. |
mp | Used for multiple processor machines. |
Both up and mp boot images are created for each platform and network type. The network boot images located in /tftpboot for a SPOT named 42spot look similar to the following:
42spot.rs6k.mp.ent 42spot.rs6k.mp.fddi 42spot.rs6k.mp.tok 42spot.rs6k.up.ent 42spot.rs6k.up.fddi 42spot.rs6k.up.tok 42spot.rspc.mp.ent 42spot.rspc.mp.tok 42spot.rspc.up.ent 42spot.rspc.up.tok
The amount of space used in the /tftpboot directory for boot images may become very large. An AIX 4.2.1 (or later) SPOT that supports network boot for all possible combinations of platforms, kernel types, and network adapters may require as much as 60 MB in /tftpboot. If the same server serves multiple SPOTs, the space required in /tftpboot will be even more because each SPOT creates its own set of boot images.
In AIX 4.3 or later, NIM creates by default only the boot images required to support the machines and network types that are defined in the environment. This should significantly reduce the amount of disk space used and the time required to create boot images from SPOT resources.
The command line syntax for defining a SPOT resource is:
nim -o define -t spot -a Attribute=Value ... SPOTName
The following attributes are required for the SPOT resource:
The following attributes are optional for the SPOT resource:
A tmp resource represents a directory where client /tmp files are maintained. When this type of resource is allocated to a client, NIM creates a subdirectory for the client's exclusive use. This allocated subdirectory is subsequently initialized when you perform the dkls_init or dtls_init operation. After initialization, anytime the client performs a network boot, the client NFS mounts this subdirectory over /tmp to gain access to the /tmp directory that has been set up for its use. This subdirectory remains mounted over /tmp on the client as long as the client is running.
The command line syntax for defining a tmp resource is:
nim -o define -t tmp -a Attribute=Value ... TmpName
The following attributes are required for the tmp resource:
The following attributes are optional for the tmp resource:
Usually, a NIM administrator will use the NIM master as the server for all resources. This strategy keeps all resources together on one machine. However, there are several reasons to distribute resources onto client machines:
Distributing resources on different machines in the NIM environment is simply a matter of specifying the correct server information when the resource is defined. After the resources are created, they are used no differently than resources defined on the master.