[  Next Article  |
Previous Article  |
Book Contents |
Library Home |
Legal |
Search ]
Network Installation Management Guide and Reference
NIM Machines
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.
NIM Operations on Client Machines
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
. 
Defining NIM Clients
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:
| -t MachineType  | 
  Specifies the type of machine being defined. Valid values are 
standalone, diskless, and dataless.  | 
| -a if=Value ... | 
  Stores network interface information for a NIM client, and requires 
a sequence number when specified. The value for this attribute consists of three 
required values and a fourth, optional value:  
- Value 1
 
-   Specifies the name of the NIM network to which this interface 
connects. If the name of the NIM network is unknown, then the find_net 
keyword can be used to match the client's IP address to a defined NIM network. 
If the find_net keyword is used, but NIM does not find a matching 
network, the optional net_definition attribute should be used to define 
the network, as well.
 
- Value 2
 
-   Specifies the host name associated with this interface.
 
- Value 3
 
-   Specifies the network adapter hardware address of this interface. A 
value of 0 can be specified unless broadcasting is used for network boot 
of the client.
 
- Value 4
 
-   Specifies the logical device name of the network adapter used for 
this interface. If this value is not specified, NIM uses a default based on the 
type of network interface defined. This field is required when the client is 
defined on a heterogeneous network. 
This attribute requires a sequence number for NIM to distinguish between multiple network interfaces. Because machines can be 
multihomed, NIM allows more than one if attribute per machine.    
 | 
The following attributes are optional:
| -a ring_speed=Value | 
  Specifies the ring speed of the client's token-ring adapter. This 
value is required if the client's NIM network is token-ring. This attribute 
requires a sequence number for NIM to distinguish between ring speeds for 
multiple interfaces on the machine.  | 
| -a cable_type=Value | 
   Specifies the cable type of the client's ethernet adapter. This 
value is required if the client's NIM network is ethernet. This attribute 
requires a sequence number for NIM to distinguish between cable types for 
multiple interfaces on the machine.  | 
| -a platform=Value | 
  Specifies the platform of the machine being defined. The default 
value is platform=rs6k. Other examples are rspc and chrp. 
Run the bootinfo -p command on a running machine to determine its 
platform.  | 
| -a netboot_kernel=Value | 
  Specifies the kernel type of the client. Valid values are up 
for uniprocessor machines and mp for multiprocessor machines. The 
default 
value is netboot_kernel=up. | 
| -a iplrom_emu=Value | 
  Specifies the device that contains the IPL ROM emulation software. 
IPL ROM emulation is required for machines that do not have bootp-enabled IPL 
ROM. | 
| -a net_definition=Value ... | 
  Defines a NIM network to be associated with the client being defined. The value for this 
attribute consists of two required values and three optional values:  
- Value 1 = NetworkType (required)
 
-   Specified values are tok, ent, fddi, and 
generic.
 
- Value 2 = SubnetMask (required)
 
-   Specifies the dotted decimal mask for the network.
 
- Value 3 = ClientGateway 
(optional)
 
-   Specifies the IP address or host name of the default gateway used by 
the machine being defined to communicate with the NIM master.
 
- Value 4 = MasterGateway 
(optional)
 
-   Specifies the IP address or host name of the default gateway used by 
the NIM master to communicate with clients on other subnets.
 
- Value 5 = NetworkName 
(optional)
 
-   Specifies a name to be given to the NIM definition created for the 
network. (Otherwise, a unique default value is assigned.)
  
When specifying the net_definition 
attribute to create or change a machine definition, the find_net keyword 
must be specified as the first component of the if attribute for the 
machine. The net_definition attribute may also be specified when 
defining additional NIM interfaces (if attributes) for machine definitions.   | 
| -a cpuid=Value | 
  Specifies the CPU ID of the machine being defined. This attribute 
can be used for client verification during NIM operations. To display the CPU ID on 
a running machine, use the uname -m command. This field is optional and 
will be automatically set the first time a client communicates with the NIM 
master.  | 
| -a master_port=Value | 
  Specifies the port number used by the NIM master for socket 
communication with the clients. The default master port number is 
1058. | 
| -a 
registration_port=Value | 
  Specifies the port number used by clients to register themselves 
with the NIM master. The default registration port number is 1059. | 
| -a group=Value | 
  Specifies a machine group to which the client should be added. The 
group will be defined if it does not exist.  | 
| -a comments=Value | 
  Provides comments about the client being defined. | 
| -a verbose=Value | 
  Displays information for debugging. Use verbose=5 to show maximum detail.  | 
Standalone Clients
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.
Network Booting a Standalone Client
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 
. 
Managing Software on Standalone Clients
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
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: 
- Cost savings
No hard disk is required for diskless clients. 
Only a small hard disk is needed for dataless clients.
 
- Manage software configurations on 
machines
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.
 
- Manage storage of user data
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.
 
Required and Optional Resources for Diskless 
and Dataless Clients
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.  | 
Initialization of 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: 
- The boot image is made available to the 
client for performing a network boot.
 
- The root files, which are used for 
machine-specific customization, are copied into the client's subdirectory in 
the 
root resource. The files that are copied into the client root 
directories 
come from the SPOT resource that has been allocated to the client.
 
- The 
/tftpboot/Client.info 
file is created on the boot server (which is the SPOT server). This file 
contains information that will be needed by the client during the start-up 
configuration processing to successfully configure as a diskless or dataless 
client.
The following are some of the variables 
defined 
in the Client.info file: 
export NIM_CONFIGURATION=diskless
export RC_CONFIG=rc.dd_boot
export ROOT=Host:Client_Root_Directory
export DUMP=Host:Client_Dump_Directory
export SPOT=Host:SPOT_Location 
The paging location is set in the client's root directory in the 
/etc/swapspaces file.  
 | 
| 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 on the local 
hard disk.  | 
Managing Software on Diskless and Dataless 
Clients
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:
- The /usr files are installed in 
the 
SPOT. These files are automatically seen by all the clients that mount 
the SPOT as their /usr file systems.
 
- The root files are installed in special 
subdirectories in the SPOT.
 
- After all the filesets have been installed in 
the SPOT, the root files are copied to the root 
directories 
of any diskless or dataless clients that have been initialized with the 
SPOT.
 
When NIM is used to deinstall software in a 
SPOT, the following operations are performed to manage the software for 
diskless and dataless clients:
- The /usr files are removed from 
the 
SPOT. This automatically "removes" the files from the client systems as 
well.
 
- The root files of the software are 
removed from the client root directories. 
 
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.
[  Next Article  |
Previous Article  |
Book Contents |
Library Home |
Legal |
Search ]