Changes between Version 45 and Version 46 of Check
- Timestamp:
- Oct 28, 2010, 6:43:12 PM (14 years ago)
Legend:
- Unmodified
- Added
- Removed
- Modified
-
Check
v45 v46 312 312 The Self-healing service in the Check framework overlays the self-healing capabilities provided by the stack running on the nodes. The latter continuously ensures a correct topology of the island. The Self-healing service however understands more complex notions, such as constraints. 313 313 314 == = Software Requirements ===314 == Software Requirements == 315 315 316 316 * [http://www.ubuntu.com/ Linux PC (Ubuntu)] … … 318 318 * libboost-dev, libboost-filesystem-dev or directly from [http://www.boost.org/users/download/ site] (minimum recommended version 1.44; in the boost folder: ./bootstrap.sh; ./bjam install) 319 319 320 == = Project Organization ===320 == Project Organization == 321 321 322 322 The code for self-healing service can be found in the [https://svn-batch.grid.pub.ro/svn/Sensei-WP5/Check-selfheal /Check-selfheal] folder in the SVN. … … 324 324 * [https://svn-batch.grid.pub.ro/svn/Sensei-WP5/Check-selfheal/config.xml config.xml] sample configuration file 325 325 326 == = Compiling the Self-healing service ===326 == Compiling the Self-healing service == 327 327 328 328 Some packages are required to be installed prior to the compilation of the Self-healing service, as the Boost library for C++ is used. At the time of the creation of the code, the Ubuntu repositories hold an older version of the Boost library, which does not contain the Property Tree feature. So the sources of the library should be downloaded and compiled. Download version 1.44.0 from [http://www.boost.org/users/download/ download site]. … … 349 349 }}} 350 350 351 == = Running the Gateway Watchdog ===351 == Running the Self-healing service == 352 352 353 353 The Self-healing service can be run by simply: … … 357 357 }}} 358 358 359 == Demo == 360 361 For demo purposes, we have build two islands, using Raven and Sparrow nodes, each of the islands being connected through a SAM7X edge router to the gateway running on PC. For our demo scenario, let's suppose the two islands are adjacent (e.g. in the same building), although they really were hundreds of kilometers away, one in Bucharest and one in Dresden. Also let's imagine that we need to measure the mean temperature of the area covered by the islands. 362 363 === Configuration === 364 365 The Self-healing service becomes aware of the islands being monitored using a flexible and standard compliant xml file. For this demo, a sample config.xml file is provided: 366 367 [[Image(sh-config.png, center)]] 368 369 The main entities described in the config.xml are: 370 * islands: each island is characterized by a name, its URL and a node name prefix 371 * services: the temperature service is described at a general level, with cross-island information, such as the constraints that need to be fulfilled to run that particular service (for our example, we consider that there need to be at least two nodes to obtain a mean temperature). 372 * island-service: the entities that connect islands and services, describing for each island the particularities that govern the service in that island, such as the URL of the resource on the nodes (in this case it is "temp" in both islands). 373 374 === Demo 1: no Self-healing service === 375 376 === Demo 2: Self-healing inside an island === 377 378 === Demo 3: Self-healing across islands === 379 380 === Performance === 381 382 359 383 360 384 = Proposed Check Demonstration Sketch =