There are currently three types of machines that can be managed in the NIM environment. These are standalone, diskless, and dataless clients. This section describes the differences between the machines, the attributes required to define the machines, and the operations that can be performed on them. The NIM environment is composed of two basic machine roles: master and client. The NIM master manages the installation of the rest of the machines in the NIM environment. The master is the only machine that can remotely run NIM commands on the clients. All other machines participating in the NIM environment are clients to the master, including machines that may also serve resources.
There are unique operations to initialize the different client configurations. NIM uses this fact to check that the operation is a valid operation for a specific client configuration. The following table shows the operations that can be performed on the different client configuration types.
NIM Operation | Machine Configuration | ||
Standalone | Diskless | Dataless | |
bos_inst | x | ||
dkls_init | x | ||
dtls_init | x | ||
diag | x | x | x |
cust | x | ||
fix_query | x | ||
lppchk | x | ||
maint | x | ||
maint_boot | x | ||
reset | x | x | x |
check | x | x | x |
showlog | x | x | x |
reboot | x | x | x |
For more information about NIM operations, see "NIM Operations".
Standalone, diskless, and dataless clients are defined in the NIM environment using the NIM define operation. The command line syntax is as follows:
nim -o define -t MachineType -a Attribute=Value ... MachineName
where the following attributes are required:
Standalone NIM clients are clients with the capability of booting and running from local resources. Standalone clients mount all file systems from local disks and have a local boot image. Standalone clients are not dependent upon network servers for operation.
Although an installed standalone client is capable of booting from the local disk, it may be necessary to perform a network boot of the client for certain NIM operations. Clients must boot over the network in order for NIM to perform a BOS installation (bos_inst) of the client or to boot into maintenance mode (maint_boot) and diagnostics (diag). For instructions on booting a client over the network, see "Booting a Machine Over the Network".
The AIX Base Operating System can be installed directly on standalone clients using the NIM bos_inst operation. Additional software and updates can be installed and managed on standalone clients using the NIM cust and maint operations. See "NIM Operations" for more information about these and other operations.
Diskless and dataless clients are machines that are not capable of booting and running without the assistance of servers on a network. As their names imply, diskless clients have no hard disk, and dataless clients have disks that are unable to hold all the data that may be required for operation. Diskless machines must mount paging space and all file systems from remote servers. Dataless machines can only use a local disk for paging space and the /tmp and /home file systems. Neither diskless nor dataless clients have a local boot image, and they must boot from servers on the network.
The reasons for defining a machine as diskless or dataless are:
No hard disk is required for diskless clients. Only a small hard disk is needed for dataless clients.
On diskless and dataless clients, the file system containing the Base Operating System is mounted from a server. All client systems that mount the same file system for BOS run from identical software.
User data for diskless and dataless clients are stored on remote servers. A system administrator can manage storage allocation and data backups for the client machines by managing the data on the server, rather than on each machine separately.
The file systems that are mounted by the diskless and dataless client machines are treated as resources in the NIM environment. Like other resources, they exist on a server in the NIM environment, and they are NFS-exported to the clients that use them.
The following resources are managed by NIM to support diskless and dataless clients:
boot | Defined as a network boot image for NIM clients. The boot resource is managed automatically by NIM and is never explicitly allocated or deallocated by users. |
SPOT | Defined as a directory structure that contains the AIX run-time files common to all machines. These files are referred to as the usr parts of the fileset. The SPOT resource is mounted as the /usr file system on diskless and dataless clients.
Contains the root parts of filesets. The root part of a fileset is the set of files that may be used to configure the software for a particular machine. These root files are stored in special directories in the SPOT, and they are used to populate the root directories of diskless and dataless clients during initialization. The network boot images used to boot clients are constructed from software installed in the SPOT. A SPOT resource is required for both diskless and dataless clients. |
root | Defined as a parent directory for client "/" (root) directories. The client root directory in the root resource is mounted as the "/" (root) file system on the client.
When the resources for a client are initialized, the client root directory is populated with configuration files. These configuration files are copied from the SPOT resource that has been allocated to the same machine. A root resource is required for both diskless and dataless clients. |
dump | Defined as a parent directory for client dump files. The client dump file in the dump resource is mounted as the dump device for the client.
A dump resource is required for both diskless and dataless clients. |
paging | Defined as a parent directory for client paging files. The client paging file in the paging resource is mounted as the paging device for the client.
A paging resource is required for diskless clients and optional for dataless clients. |
home | Defined as a parent directory for client /home directories. The client directory in the home resource is mounted as the /home file system on the client.
A home resource is optional for both diskless and dataless clients. |
shared_home | Defined as a /home directory shared by clients. All clients that use a shared_home resource will mount the same directory as the /home file system.
A shared_home resource is optional for both diskless and dataless clients. |
tmp | Defined as a parent directory for client /tmp directories. The client directory in the tmp resource is mounted as the /tmp file system on the client.
A tmp resource is optional for both diskless and dataless clients. |
resolv_conf | Contains nameserver IP addresses and a network domain name.
Unlike the other resources used by diskless/dataless clients, the resolv_conf resource does not remain mounted by the client. Instead, it is copied to the /etc/resolv.conf file in the client's root directory. A resolv_conf resource is optional for both diskless and dataless clients. |
Diskless and dataless clients are not installed in the same way as standalone machines. Instead, they are initialized. Initialization of diskless and dataless clients involves several phases of operation:
Resource Allocation | The resources required to support a diskless/dataless client must be allocated to the client before or during the initialization operation.
If the resource is a parent directory of client directories, the allocation will create an empty subdirectory for the client. The client subdirectory is then NFS-exported to the client. The client subdirectories are not populated until the initialization is actually performed. |
Client Initialization | The dkls_init and dtls_init operations are used in NIM to initialize the resources for client use.
Among the operations performed during client initialization are the following:
|
Network Boot of the Client | The client machine is booted over the network using standard bootp procedures for the machine type. The client obtains the boot image and begins running a mini-kernel in a file system in RAM.
The client tftp's the Client.info file from the /tftpboot directory on the SPOT server. The information in the Client.info file is used to properly configure the client as a diskless or dataless machine. The remote file systems are mounted from the resource servers. If the client is a dataless client, and no paging, tmp, home, or shared_home resource is allocated, then the client will create the missing file system(s) on the local hard disk. |
The /usr and root file systems of diskless and dataless clients are resources that have been mounted from a server. Therefore, in order to install or deinstall software on a diskless/dataless client, the processing must actually occur on the resources that the clients use.
The SPOT contains the directory structure for an installed /usr file system. It also contains subdirectories for the "root" parts of installed filesets. Since the SPOT contains both usr and root files, software maintenance must be performed on the SPOT in order to update the software that is running on the clients. Such actions must be performed using the NIM cust and maint operations. See "NIM Operations" for more information about the cust and maint operations.
If the SPOT is currently allocated for client use, NIM will prevent software customization operations from being performed on it. This is to safeguard the SPOT from changes that may adversely affect running client machines. However, this restriction can be overridden by specifying the force option when performing the operation.
When NIM is used to install software in a SPOT, the following operations are performed to manage the software for diskless and dataless clients:
When NIM is used to deinstall software in a SPOT, the following operations are performed to manage the software for diskless and dataless clients:
NIM also provides a sync_roots operation to perform consistency verification and correction to ensure the client root directories match the root parts stored in the SPOT.