Table Of Contents
The CTRL Component
CTRL
CTRL operation
Operation within multiple domains
Starting up CTRL
Prerequisites for running CTRL
Conclusion
The CTRL Component
This section describes CTRL, the MWFM NMOS component responsible for controlling and managing all other components in the MWFM NMOS.
CTRL
The process controller component CTRL, also known as riv_ctrl, is the master MWFM NMOS component used to manage the operational status of all other MWFM NMOS components. For example, CTRL is also used by MONITOR to initiate the Polling Agents.
Figure 18-1 CTRL controlling other MWFM NMOS components
CTRL operation
In order to perform its operation, CTRL uses a database to manage MWFM NMOS processes. The Services database stores the operational status of MWFM NMOS processes. Insertion of services into the tables in active mode results in these services being executed. Similarly, the deletion of services from the tables in active mode will result in the services being terminated. This means that it is possible for you to fully interrogate the status of MWFM NMOS processes by simply interrogating and manipulating the entries made into the database tables, or control their execution.
You specify the MWFM NMOS services to run either before starting CTRL, by amending the CtrlSchema.cfg configuration file, or while CTRL is running, by logging into the CTRL database using the OQL service provider riv_oql and the domain name under which you wish to control the processes. The information held about each inserted MWFM NMOS process into the CTRL tables is detailed in "The Database of CTRL."
Operation within multiple domains
MWFM NMOS supports multiple domains; for this you can set up a single CTRL component to manage all of the processes specific to each and every domain. Insertions can be made into the tables of the CTRL database by the user or by MWFM NMOS processes and components. For instance, MONITOR communicates with CTRL and makes OQL insertions into the tables of CTRL in order for CTRL to launch specified Polling Agents.
CTRL manages MWFM NMOS components.
Note
That DISCO, which interacts with the Stitchers, Finders, and Discovery Agents, has its own management system for restarting processes and will interact with CTRL to facilitate this internally.
Starting up CTRL
The process controller CTRL is started by using the following command line:
riv_ctrl -domain <DOMAIN_NAME> [-cachesize <SIZE_IN_MB>]
[-cachepercent <PERCENTAGE_OF_CACHE_IN_MEMORY>] [-slave] &
|
<DOMAIN_NAME>
|
Refers to the name of the domain whose processes you wish CTRL to manage. As you can manage multiple domains using the same CTRL process (any executable specified within the tables of CTRL must have an associated domain), the -domain option is required for access to the databases using the OQL service provider, riv_oql.
|
<SIZE_IN_MB>
|
Specifies the size of the cache in megabytes (MB).
|
<PERCENTAGE_OF_CACHE_IN_MEMORY>
|
| |
Enables you to specify the ratio of the cache that will be resident in memory to the cache that will be resident on the hard disk.
Note The ratio that you specify is dependent on the amount of memory that exists on the host machine and the number or processes it will be running.
|
-slave
|
Instructs this instance of CTRL to run in slave mode. The slave CTRL process must have the same domain name as the master CTRL process.
While running in slave mode, CTRL accepts requests from the master process to launch services; this can be used in fail over recovery to start a secondary process on the slave device, which will take over from the primary process when it dies.
|
A help option can be accessed using the following command line:
-help
|
Prints out a synopsis of all the command line options available for running CTRL. CTRL is not started even if -help is used in conjunction with other arguments.
|
Prerequisites for running CTRL
CTRL is the master process and it must be run before all other processes. Access to the internal databases of CTRL is via OQL inserts, which can be made by the user while CTRL is running (using the OQL service provider riv_oql), by the user appending inserts to the schema CtrlSchema.cfg before CTRL launches, or by MWFM NMOS components in the course of the latter's normal operation.
Conclusion
This chapter has described the function of the MWFM NMOS component CTRL. CTRL is responsible for controlling all of the other MWFM NMOS components. Similar to other MWFM NMOS components, CTRL uses a series of tables within its database to manage other processes.
The next chapter introduces STORE, the MWFM NMOS persistent storage engine.