From 2b32e1e9f434744eaed836298ebd3b4b2463373b Mon Sep 17 00:00:00 2001 From: Nico Schottelius Date: Wed, 21 Nov 2012 11:26:52 +0100 Subject: [PATCH] more reasons to use cdist Signed-off-by: Nico Schottelius --- docs/web/cdist/why.mdwn | 36 +++++++++++++++++++++++++++++++++++- 1 file changed, 35 insertions(+), 1 deletion(-) diff --git a/docs/web/cdist/why.mdwn b/docs/web/cdist/why.mdwn index 883d6338..6aa3516f 100644 --- a/docs/web/cdist/why.mdwn +++ b/docs/web/cdist/why.mdwn @@ -1,5 +1,7 @@ [[!meta title="Why should I use cdist?"]] +[[!toc]] + There are several motivations to use cdist, these are probably the most popular ones. @@ -30,8 +32,40 @@ If you compare regular shell scripting with cdist, there is one major difference: When using cdist types, the results are [idempotent](https://en.wikipedia.org/wiki/Idempotence). -In practise, that means it does not matter in which order you +In practise that means it does not matter in which order you call cdist types, the result is always the same. +## Zero dependency configuration management + +Cdist requires very litte on a target system. Even better, +in almost all cases all dependencies are usually fulfilled. +Cdist does not require an agent or a high level programming +languages on the target host: it will run on any host that +has an **ssh server running** and a posix compatible shell +(**/bin/sh**). + +## Push based distribution + +Cdist uses the push based model for configuration. In this +scenario, one (or more) computers connect the target hosts +and apply the configuration. That way the source host has +very little requirements: Cdist can even run on a sysadmin +notebook that is loosely connected to the network and has +limited amount of resources. + +Furthermore, from a security point of view, only one machine +needs access to the target hosts. No target hosts will ever +need to connect back to the source host, which contains the +full configuration. + +## Highly scalable + +If at some point you manage more hosts than can be handled from +a single source host, you can simply add more resources: Either +add more cores to one host or add hosts. +Cdist will utilise the given resources in parallel. + +## Integration into inventory management + [[!tag cdist unix]]