| | 83 | === QRC / QRD - N. Williams === |
| | 84 | |
| | 85 | Goal: manage non-Linux machines like appliances, ESX clusters... |
| | 86 | * QRC = Quattor Remote Configure (equivalent of `ncm-ncd`) |
| | 87 | * QRD = Quattor Remote Dispatcher (equivalent of `listend` + `cdispd`) |
| | 88 | |
| | 89 | Idea is to have a machine that acts as a proxy and listens for changes in profiles to implement them on a remote device using a management API for the device. |
| | 90 | * Use components in a namespace specific to the device instead of NCM::Component |
| | 91 | * QRD is the complex part in charge of doing profile change analysis: support failover between 2 QRD servers |
| | 92 | * QRD synchronization rewritten using Apache Zookeeper |
| | 93 | |
| | 94 | QRD listens to CDB notification rather than CDP: the notification is sent when there is a profile change, no matter what is the exact profile modified. |
| | 95 | |
| | 96 | QRC in a Git repository on SF. |
| | 97 | * QRD currently being rewritten in Python, not yet in SF. |
| | 98 | |
| | 99 | MS currently managing mainly ESX clusters with QRD/QRC. Planning at managing network switches |
| | 100 | |
| | 101 | We may discuss in the future possibility for common schema for some appliances/devices and a library of connectors for widely used devices like CISCO switches... |
| | 280 | |
| | 281 | === Writing Components in Python === |
| | 282 | |
| | 283 | Several problems: |
| | 284 | * `ncm-ncd` should fork a process to run a component rather than running the component inside `ncm-ncd`: not a very big change... |
| | 285 | * Implication on locking? |
| | 286 | * CCM API in Python: almost done by MS as part of Quattor FS |
| | 287 | * No locking implemented yet to access the profile |
| | 288 | * Python version of CAF to ensure consistency of some low-level operation: more work... |
| | 289 | * Also the idea of using a standard library to access config files and ensure they use a consistent format |
| | 290 | |
| | 291 | Add to future sprints a proof of concept development and attempt to address the required changes in `ncm-ncd`. |
| | 292 | |