[ Back to Top ]
The basic idea is simple: you have things you want to track. We call these systems, and they can be physical or virtual. A system is defined as a logical unit that does some work and has configuration, monitoring, and other tasks associated with it. Walrus bases everything on this concept, so it is vitally important that this part of the engine is working correctly.
To that end, this is going to be the first part of Walrus to be implemented. With a robust inventory management system, we can easily write the other systems.
Clouds / Groups
For large site installations, it is expected that not all systems will be located on the same network. Sometimes sites will even be located in other parts of the world, providing issues with latency and access.
Walrus defines a "cloud" as a logical set of machines that are all accessible to eachother. This is required to be true, as you will have to define how clouds can access eachother so that Walrus can properly work across the entire infrastructure.
Also, a machine can only be part of a single cloud. If you are trying to define machines as being in multiple clouds, you are probably trying to do something that should be better done with tags.
Defining a System
A system has to have data that we track. Most notably, we need to know information that allows us to access the system. Once access to a system is setup and Walrus can get there, the rest of the dominos will fall into place.
Access is generally defined as specifying a few bits of information:
- Technically this can be optional if clouds are defined by IP blocks
- IP Address
- This is optional, if the Walrus setup daemon is in easy mode, then we don't need credentials the first time
As above, clouds are used to define how to get to a particular grouping of machines. It is assumed that you have the cloud access setup, so that the IP is enough to get to the machine. It is also assumed that you do the initial legwork of installing Walrus so that there is a daemon running for us to connect to.
Once a system has been adopted into the Walrus cluster, it is configured and normal handling commences. (I.e., scheduled tasks begin to happen, etc.)