3

I am looking for the best available option for a Linux server deployment and configuration management. Unfortunately this is not a typical scenario with servers placed in a data center. Instead we have multiple remote servers with limited internet connection (on board vessels). A summary of the requirements based on importance:

  1. The configuration tool must use a pull model. Network connections to the remote servers are difficult or not allowed.
  2. The bandwidth is extremely limited and expensive. The internet connection is over satellite using a metered connection.
  3. The internet connection has a high latency and packet loss due to the satellite. The network connection can be unavailable for hours or even days. Configuration changes must be applied when internet connection is restored.
  4. Ability to run without internet connection. This is last based on importance and we can live without it. A possible implementation for this would be, for example in case of an update, to send the files needed by the configuration tool using a USB drive. The Linux server can use shell scripts to copy the USB data and update its configuration status.

All servers will use CentOS 7 as the operating system. Operating system updates will be handled using USB drives or local repositories.

All servers will be initially configured before leaving our premises and going to the remote locations.

chicks
  • 3,639
  • 10
  • 26
  • 36
  • Product recommendations are generally off-topic. However, I find your use case rather interesting and therefore I would like to keep this open. – Esa Jokinen May 12 '17 at 18:32

1 Answers1

0

Take a look at puppet.

  1. Puppet agents check into a remote server and pulls the configuration manifests to the local machine to be applied.

  2. You don't need a puppet master at all and thus no internet traffic. The puppet manifest can be applied locally and can pull any software, configurations, and files from a local repo or disk.

  3. You could perhaps script a test for network connectivity and if there is, trigger a puppet agent connection to puppet master.

  4. See item #2
sd40
  • 46
  • 2