Verwenden Sie diese SaltStack Config-Systemanforderungen, um zu ermitteln, was Ihr System unterstützen kann.
Unterstützte Betriebssysteme für Salt
SaltStack Config wird auf Salt, einer Open-Source-Automatisierungs- und Konfigurationsverwaltungs-Engine, ausgeführt. Um SaltStack Config für die Konfigurationsverwaltung verwenden zu können, müssen Sie zudem den Salt-Minion-Dienst auf allen Knoten, die Sie mit SaltStack Config verwalten möchten, installieren und ausführen.
Salt selbst ist so konzipiert, dass es betriebssystemunabhängig ist und die Knoten der meisten Standardbetriebssysteme verwalten kann. Eine Liste der unterstützten Salt-Betriebssysteme finden Sie unter Salt-Plattform-Unterstützung.
Unterstützte Betriebssysteme für SaltStack Config
Die für SaltStack Config konzipierte Architektur ist am besten für den Betrieb auf folgenden Systemen geeignet:
- RedHat 7.4 - 7.9 (RHEL 7)
- CentOS 7 (CentOS7)
Wenn Ihre Version von RHEL 7 niedriger als 7.4 ist, müssen Sie Ihre OpenSSL-Version auf 1.0.2k aktualisieren, bevor Sie das Installationsskript ausführen. Wenn diese Version nicht über ein Yum-Update verfügbar ist oder Ihr Server keinen direkten Internetzugriff hat, rufen Sie die folgenden Pakete von RedHat oder Ihrem bevorzugten öffentlichen Spiegel ab:
- openssl-1.0.2k-12.el7.x86_64.rpm
- openssl-libs-1.0.2k-12.el7.x86_64.rpm
Bestimmen der Minion-Architektur
Im Kontext von SaltStack Config bezieht sich ein Minion im Allgemeinen auf einen Knoten in Ihrer Produktionsumgebung, der über einen oder mehrere Salt-Master eine Verbindung mit SaltStack Config herstellt und von dieser Instanz verwaltet wird.
Salt wurde für die Verwendung mit allen Betriebssystemen entwickelt, die möglicherweise auf einem Minion ausgeführt werden. Zusätzlich zu den Standardbetriebssystemen (Linux, Windows, MacOS) bietet Salt spezielle Minion-Software (im Allgemeinen als „native Minions“ bezeichnet) für Betriebssysteme, die für verschiedene Netzwerkgeräte wie Arista, Juniper, AIX und Solaris eindeutig sind.
In dieser Tabelle sind die Mindestanforderungen an den Arbeitsspeicher für den Salt-Minion-Dienst nach Betriebssystemen aufgelistet:
Betriebssystem | Mindestanforderungen an den Arbeitsspeicher |
---|---|
AIX-Minion | 512 MB RAM |
MacOS-Minion | 4 GB RAM |
Linux-Minion | 512 MB RAM |
Windows-Minion | 4 GB RAM |
Andere Netzwerkgeräte, einschließlich Proxy-Minions | 40 MB RAM pro gesteuertem Gerät |
Schätzen Sie die Anzahl der Salt-Master und Minions.
Obwohl der Durchsatz Ihres Systems vor der Installation schwer zu messen ist, können Sie Ihren Bedarf basierend auf der Anzahl der Minions (Knoten) in Ihrem System schätzen, die von SaltStack Config verwaltet werden. Der letzte Abschnitt dieses Handbuchs enthält zusätzliche Messungen zum Ermitteln Ihres Systemdurchsatzes.
Wenn Sie weitere Salt-Minions durch SaltStack Config verwalten, müssen Sie möglicherweise Ihre Systemarchitektur entsprechend erweitern.
In dieser Tabelle wird die empfohlene Anzahl von Salt-Mastern aufgelistet, die Sie möglicherweise basierend auf der Anzahl der verwalteten Salt-Minions (Knoten) in Ihrem System benötigen:
Minions | Salt-Master (16 CPUs/16 GB) |
---|---|
5.000 | 1 |
10.000 | 2 |
15.000 | 3 |
20.000 | 4 |
25.000 | 5 |
30.000 | 6 |
35.000 | 7 |
40.000 | 8 |
45.000 | 9 |
50.000 | 10 |
55.000 | 11 |
60.000 | 12 |
65.000 | 13 |
70.000 | 14 |
75.000 | 15 |
80.000 | 16 |
85.000 | 17 |
90.000 | 18 |
95.000 | 19 |
100.000 | 20 |
Schätzen Sie die Anzahl der benötigten RaaS-Knoten.
In dieser Tabelle wird die empfohlene Anzahl von RaaS-Knoten aufgelistet, die Sie möglicherweise basierend auf der Anzahl der verwalteten Salt-Minions (Knoten) in Ihrem System benötigen:
Minions | RaaS-Knoten mit 16 CPUs/16 GB | RaaS-Knoten mit 32 CPUs/32 GB |
---|---|---|
5.000 | 1 | |
10.000 | 1 | |
15.000 | 1 | |
20.000 | 1 | |
25.000 | 2 | |
30.000 | 2 | |
35.000 | 2 | |
40.000 | 2 | |
45.000 | 1 | 1 |
50.000 | 1 | 1 |
55.000 | 1 | 1 |
60.000 | 1 | 1 |
65.000 | 2 | |
70.000 | 2 | |
75.000 | 2 | |
80.000 | 2 | |
85.000 | 1 | 2 |
90.000 | 1 | 2 |
95.000 | 1 | 2 |
100.000 | 1 | 2 |
Schätzen Sie die Anzahl der benötigten PostgreSQL-Knoten.
Die nächsten beiden Tabellen enthalten die empfohlene Anzahl an PostgreSQL-Datenbankknoten, die Sie möglicherweise basierend auf der Anzahl der verwalteten Salt-Minions (Knoten) in Ihrem System benötigen:
Minions | PostgreSQL-Knoten mit 8 CPUs/8 GB | PostgreSQL-Knoten mit 16 CPUs/16 GB | PostgreSQL-Knoten mit 24 CPUs/24 GB | PostgreSQL-Knoten mit 32 CPUs/32 GB |
---|---|---|---|---|
5.000 | 1 | |||
10.000 | 1 | |||
15.000 | 1 | |||
20.000 | 1 | |||
25.000 | 1 | |||
30.000 | 1 | |||
35.000 | 1 | |||
40.000 | 1 | |||
45.000 | 1 | |||
50.000 | 1 | |||
55.000 | 1 | |||
60.000 | 1 |
Minions | PostgreSQL-Knoten mit 48 CPUs/48 GB | PostgreSQL-Knoten mit 56 CPUs/56 GB | PostgreSQL-Knoten mit 64 CPUs/64 GB |
---|---|---|---|
65.000 | 1 | ||
70.000 | 1 | ||
75.000 | 1 | ||
80.000 | 1 | ||
85.000 | 1 | ||
90.000 | 1 | ||
95.000 | 1 | ||
100.000 | 1 |
Schätzen Sie die Anzahl der benötigten Redis-Knoten.
Die nächsten beiden Tabellen enthalten die empfohlene Anzahl an Redis-Datenbankknoten, die Sie möglicherweise basierend auf der Anzahl der verwalteten Salt-Minions (Knoten) in Ihrem System benötigen:
Minions | Redis-Knoten mit 4 CPUs/4 GB | Redis-Knoten mit 8 CPU/8 GB | Redis-Knoten mit 12 CPUs/12 GB |
---|---|---|---|
5.000 | 1 | ||
10.000 | 1 | ||
15.000 | 1 | ||
20.000 | 1 | ||
25.000 | 1 | ||
30.000 | 1 | ||
35.000 | 1 | ||
40.000 | 1 | ||
45.000 | 1 | ||
50.000 | 1 | ||
55.000 | 1 | ||
60.000 | 1 |
Minions | Redis-Knoten mit 16 CPU/16 GB | Redis-Knoten mit 20 CPUs/20 GB |
---|---|---|
65.000 | 1 | |
70.000 | 1 | |
75.000 | 1 | |
80.000 | 1 | |
85.000 | 1 | |
90.000 | 1 | |
95.000 | 1 | |
100.000 | 1 |
Optimieren Sie Ihre Architektur nach der Installation basierend auf dem Durchsatz.
Nachdem Sie Ihre SaltStack Config-Installation abgeschlossen haben, können Sie Systemüberwachungsmetriken verwenden, um den Durchsatz und die architektonischen Anforderungen Ihres Systems besser zu ermitteln.
Beachten Sie bei der Bestimmung, was überwacht werden soll, die folgenden Faktoren:
- Menge des Datenverkehrs auf dem Ereignissystem – Das Ereignissystem (auch als „Ereignisbus“ bezeichnet) wird für die Kommunikation zwischen den Prozessen sowohl von Salt-Master als auch von Salt-Minions verwendet. Wenn Ihr Ereignisbus sehr ausgelastet ist, sollten Sie die Erhöhung Ihrer Arbeitsspeicherzuteilungen in Betracht ziehen.
- Auftragsrückgaben pro Stunde – SaltStack Config verwendet den Begriff „Aufträge“, um auf jeden der Befehle, Aufgaben und Vorgänge zu verweisen, die von SaltStack Config ausgeführt werden. Jeder Auftrag sendet seine Ausgabe zu Berichts- und Datenerfassungszwecken an SaltStack Config. Die Anzahl der Auftragsrückgaben, die Ihr System innerhalb einer bestimmten Stunde produziert, kann sich auf Ihre Architekturanforderungen auswirken.
- Menge der Pfeilerdaten – Pfeilerdaten sind Daten, die auf dem Salt-Master gespeichert werden müssen. Der Pfeiler wird in erster Linie zum Speichern von geheimen Schlüsseln oder anderen hochsensiblen Daten wie Kontoanmeldedaten, kryptografischen Schlüsseln oder Kennwörtern verwendet. Der Pfeiler ist auch nützlich, um nicht geheime Daten zu speichern, die Sie nicht direkt in Ihren Zustandsdateien ablegen möchten, wie z. B. Konfigurationsdaten. Die Menge der Daten, die auf Ihrem Salt-Master gespeichert werden (und später bei Bedarf von Minions aufgerufen werden) kann sich auf Ihre Arbeitsspeicher- und Datenspeicheranforderungen auswirken.
- Menge der benutzerdefinierten Körnungen – Körnungen werden in Salt verwendet, um die Minions für einen bestimmten Auftrag oder Befehl als Ziel zu verwenden. Körnungen beziehen sich auf die grundlegenden Daten und Merkmale jedes Minion. Salt ist mit vielen vorgefertigten Körnungen ausgestattet. Beispielsweise können Sie Minions nach Betriebssystem, Domänenname, IP-Adresse, Kernel, Arbeitsspeicher und vielen anderen Systemeigenschaften als Ziel verwenden. Sie können auch benutzerdefinierte Grain-Daten erstellen, um eine Gruppe von Minions von einer anderen basierend auf einem Merkmal zu unterscheiden, das Sie in Ihrem System als eindeutiges Ziel verwenden. Die Anzahl der von Ihnen erstellten benutzerdefinierten Körnungen kann sich auf Ihre Architekturanforderungen auswirken.
- Anzahl der Beacons und Reaktoren – Das Beacon-System ist ein Überwachungstool, das eine Vielzahl von Systemprozessen auf Salt-Minions überwachen kann. Beacons können Reaktoren auslösen, die dann bei der Implementierung einer Änderung oder bei der Behebung eines Problems helfen können. Wenn beispielsweise die Antwort eines Dienstes abgelaufen ist, kann das Reaktorsystem den Dienst neu starten. Bei Kopplung mit Reaktoren können Beacons automatisierte vorab verfasste Reaktionen auf Infrastruktur- und Anwendungsprobleme erstellen. Reaktoren erweitern Salt um automatisierte Reaktionen unter Verwendung von vorab verfassten Standardisierungszuständen. Wenn Ihr System über Beacons und Reaktoren verfügt, die regelmäßig aktiviert werden, kann dies die Anforderungen Ihrer Systemarchitektur erhöhen.
- Anforderungen an Festplattengröße – Möglicherweise müssen Sie die Festplattengröße basierend auf der Anzahl der verwalteten Minions und für die Daten jedes Jahres erhöhen, die Sie im Speicher aufbewahren müssen. Wenn Sie beispielsweise über ein System mit hohem Durchsatz verfügen und sich Ihr System in einer stark regulierten Branche befindet, für die eine Datenspeicherung von 7 bis 8 Jahren erforderlich ist, kann dies eine höhere Festplattengröße und Speicherkapazität erfordern.
- Geografischer Standort und Entfernung zwischen Komponenten – Bei einer Latenz von 65 ms oder mehr zwischen dem Salt-Master und dem Server, auf dem SaltStack Config (RaaS) ausgeführt wird, treten möglicherweise Probleme auf. Glücklicherweise ist Salt weniger anfällig für Latenz zwischen dem Salt-Minion und dem Salt-Master. Beachten Sie beim Ablegen dieser Komponenten, dass es besser ist, bei Bedarf den Master in der Nähe von RaaS und den Minion weiter entfernt zu platzieren.
- Geschäftskritische Vorgänge – Wenn Sie bewerten, wie geschäftskritisch SaltStack Config in Ihrer Umgebung ist, fragen Sie sich, wie sehr sich ein SaltStack Config-Ausfall auf Ihr Unternehmen auswirken würde. Wenn die Instanz eine Stunde oder länger inaktiv wäre, würde dies schwerwiegende Auswirkungen haben? Falls ja, müssen Sie möglicherweise Hochverfügbarkeitsanforderungen für Ihre SaltStack Config-Systemarchitektur entwerfen.
Basierend auf diesen Faktoren sollten Sie inkrementell ihre Ressourcen erhöhen und die Auswirkungen auf die Leistung Ihres Systems überwachen. Erhöhen Sie beispielsweise Ihre Arbeitsspeicherzuteilungen um 4 GB RAM mit 4 CPUs.
Die folgende Abbildung zeigt ein Beispiel für ein SaltStack Config-Architekturdesign mit Hochverfügbarkeit:
Wie in diesem Bild dargestellt, stellen viele Hochverfügbarkeitssysteme eine Verbindung mit mehreren Salt-Mastern her. Hochverfügbarkeitssysteme erstellen auch oft Redundanz in die PostgreSQL- und Redis-Datenbanken, sodass eine ein Failover auf die andere durchführen kann. Beachten Sie, dass die aktuellen Hochverfügbarkeitslösungen für PostgreSQL und Redis nur manuelle Failover unterstützen.