A Rule based static configuration validation technique in an autonomous distributed environment: Implemented in a heterogenous business integration environment
Abstract
In a heterogeneous and complex distributed systems environment, (e.g. business integration), many software systems interchange information, each system stores environment information configuration files. At any given point of time, the interactions are based on these configurations only. Every time a system boots up it validates its own configuration. Whenever there is a failure of a component or its offline without updating, it may lose out on the current context of the environment (changes in the configuration of other systems). E.g. : DHCP induced IP/Port change or a queue name change. Restarting the system without these updates may lead to several problems like erroneous/inconsistent output or failure of the component it selves. To prevent such errors we look in to building autonomy in to such systems by configuration validation. A rule based technique was devised (for individual components in a typical business integration subsystem). To Adapt to such a continuously changing environment (e.g. and to build autonomy (Self-configure /Self-protect/ Self-correct). The rules are run either before restart of a component and whenever the administrator feels such a need arises (E.g: when a dependent enterprise system is restarted). These rules are either discovered from failure scenarios induced by configuration/dependent thirdparty errors or directly from rules used for monitoring various components at runtime. The rules primary check the third-party/dependency configurations, data interchange formats, Enterprise data store connection parameters and software usage links. The recommended storage format is XML. An optional action tag can be utilized to perform corrective actions once a configuration error is discovered. There are options to specify the path of a Operating System Script or a java class implementing a pre-defined interface. In a test environment these rules were executed by a static analyzer tool. It discovered 30% of potential fatal errors (leading to business down situations) and 82% of config based errors. Also these rule formats are reusable across systems and domain specific /standard based rules are interchangeable for similar software products e.g. FTP/email related rules. Also rules can be discovered from log/trace files for specific configuration errors. © 2007 IEEE.