
Ich habe eine Webanwendung entwickelt, die vor Kurzem gestartet ist. Jetzt mache ich mit Verbesserungen weiter und möchte einen Staging-Server ähnlich dem Produktionsserver erstellen.
Ich weiß, dass es Tools wie Ansible, Puppet und Chef gibt, aber wenn ich mir die Dokumentation ansehe, scheinen sie für meinen einfachen Anwendungsfall etwas übertrieben. Natürlich gibt es die Lösung, die Anwendung vollständig zu dockerisieren, was eine gute Sache wäre.
Aber was würden Sie außer der Dockerisierung der Anwendung zum einfachen Neuerstellen eines Produktionsservers empfehlen?
Alles was es tun muss, ist:
- Installieren Sie einige Abhängigkeiten: PHP, MySQL, Nginx, Java, Elasticsearch
- Datenbank, Datenbankbenutzer hinzufügen
- Einen Benutzer hinzufügen
- Konfigurieren von SSH-Schlüsseln
- Ändern Sie SSH in eine Autorisierung nur per Schlüsseldatei
- Fügen Sie einige Firewall-Regeln hinzu
Antwort1
Tatsächlich verfügt Puppet über eine sehr einfach zu implementierende lokale Konfiguration für kleine Umgebungen und ist hierfür eines der besten Tools.
Auf dieser Seite finden Sie Informationen zu einer sehr, sehr schnellen und einfachen Einrichtung.
http://projects.puppetlabs.com/projects/1/wiki/simplest_puppet_install_pattern
Antwort2
Haftungsausschluss – hierin gibt es viele Meinungen.
Nachdem das geklärt ist, wäre meine erste Frage: „Wie groß wird diese Anwendung werden?“ Wenn die Antwort >10 Server lautet, würde ich vorschlagen, in den sauren Apfel zu beißen und den Puppet/Chef/Ansible-Weg zu gehen. Wenn <10 Server vorhanden sind, reproduzieren Sie es einfach manuell, indem Sie sich die Paketmanifeste ansehen und sich Notizen machen, während Sie Ihren zweiten Server erstellen.