Vorheriges Thema: Grid-DatensatzNächstes Thema: Spezifikation für externe Speicherung


Spezifikation der Serverauswahlkriterien

Mithilfe von Auswahlkriterien für Grid-Server können Sie die verfügbare Server klassifizieren und ihnen eine Rangfolge zuordnen. Nachdem Sie mithilfe von Kennungen Klauseln mit den Auswahlkriterien erstellt haben, können Sie Auswahl der Grid-Server steuern. Zwei Typen von Tags stehen zur Verfügung: Tags und Smarttags. Sie verwenden ein Tag, um eine grundlegende Serverzuweisung festzulegen. Sie verwenden ein Smarttag, um detaillierte Eigenschaften für eine Gruppe von Servern anzugeben. Zu den Eigenschaften, die Sie festlegen können, gehören CPU-Kerne, CPU-Geschwindigkeit, Erkennungsdatum, Speicher, Stromtyp und Festplattenkapazität insgesamt.

Wenn Tags vorhanden sind, werden sie zusätzlich zu den Mindestanforderungen für den Server angewendet, die durch die CA AppLogic®-Version festgelegt sind, die Sie für das Grid auswählen.

Tags werden in Conjunctive Normal Form (CNF)-Klauseln kombiniert, um eine Reihe von Tests festzulegen, die als Serverauswahlkriterien für das Grid verwendet werden. Die Syntax für die Angabe von Auswahlkriterien erfordert die Übersetzung der als CNF festgelegten Tests in ein (JSON-)Array von zusammenhangslosen Literalen (ORed in bevorzugter Reihenfolge) innerhalb einer Liste, die die Konjunktion darstellt. Literale innerhalb der CNF-Klauseln stellen Einschränkungen für Anforderungen (also Tag-Namen) oder nicht zugelassene Bedingungen (negierte Tag-Namen) dar.

In den folgenden Beispielen werden hypothetische Sätze verwendet, die Tag-Auswahlkriterien darstellen. Sie verwenden anschließend CNF-Anweisungen, um Werte für die Auswahlkriterien zurückzugeben.

Beispiel 1

In diesem Beispiel verfügen Sie für die Mitglieder der folgenden drei Sätze über definierte Servertags:

Sie möchten beispielsweise Serverkriterien für Ihr Grid festlegen, sodass der Platin-Server vor einem Gold- oder Silber-Server, ungeachtet der Farbe, ausgewählt wird. In diesem Beispiel kann das Grid keinen Bronze- oder Dreieck-Server akzeptieren.

In CNF wird dies wie folgt geschrieben:

((Platin oder Gold oder Silber) und (kein Dreieck)) 

Dies ergibt den folgenden Auswahlkriteriumswert:

[["Platin","Gold","Silber"],["~Dreieck"]] 

Die Bedingungen "und" und "oder" sind in der Syntax nicht vorhanden. Eine Konjunktion von Disjunktionen wird durch die Verwendung von CNF angenommen. Folglich sind sie in der Syntax enthalten.

Dies wird folgendermaßen interpretiert, wobei jede Zeile ausprobiert wird, bis genug Server gefunden werden, um das Grid-Defizit auszugleichen:

  1. Wählen Sie einen Platin-Server, der kein Dreieck ist.
  2. Wählen Sie einen Gold-Server, der kein Dreieck ist.
  3. Wählen Sie einen Silber-Server, der kein Dreieck ist.

Beispiel 2:

In diesem Beispiel beschließen Sie, dass ein roter Server besser ist als ein blauer oder grüner Server. Ein gelbes Tag ist auch hinzugefügt worden. Sie möchten aber festlegen, dass gelbe Server nicht für das Grid verwendet werden können.

Der Auswahlwert lautet jetzt:

[["Platin","Gold","Silber"],["Rot","~Gelb"],["~Dreieck"]] 

Dies wird folgendermaßen interpretiert:

  1. Wählen Sie einen roten Platin-Server, der kein Dreieck ist.
  2. Wählen Sie einen Platin-Server, der nicht gelb ist und kein Dreieck ist.
  3. Wählen Sie einen roten Gold-Server, der kein Dreieck ist.
  4. Wählen Sie einen Gold-Server, der nicht gelb ist und kein Dreieck ist.
  5. Wählen Sie einen roten Silber-Server, der kein Dreieck ist.
  6. Wählen Sie einen Silber-Server, der nicht gelb ist und kein Dreieck ist.

Beispiel 3:

Sie könnten die Grid-Auswahl ändern, die in Beispiel 2 veranschaulicht wird, um die Kriterien hinzuzufügen, dass das Grid nicht nur gelbe Server ausschließt, sondern auch blaue Server grünen Servern vorgezogen werden. Der Auswahlwert kann folgendermaßen geändert werden:

[["Platin","Gold","Silber"],["Rot","Blue","Grün"],["~Dreieck"]] 

Dies wird dazu führen, dass das BFC Server in der folgenden Reihenfolge sucht, bis genug Server gefunden wurden:

  1. Wählen Sie einen roten Platin-Server, der kein Dreieck ist.
  2. Wählen Sie einen blauen Platin-Server, der kein Dreieck ist.
  3. Wählen Sie einen grünen Platin-Server, der kein Dreieck ist.
  4. Wählen Sie einen roten Gold-Server, der kein Dreieck ist.
  5. Wählen Sie einen blauen Gold-Server, der kein Dreieck ist.
  6. Wählen Sie einen grünen Gold-Server, der kein Dreieck ist.
  7. Wählen Sie einen roten Silber-Server, der kein Dreieck ist.
  8. Wählen Sie einen blauen Silber-Server, der kein Dreieck ist.
  9. Wählen Sie einen grünen Silber-Server, der kein Dreieck ist.

Beispiel 4

In diesem Beispiel schließen die Formkriterien anstelle von disqualifizierenden Dreiecken Kreise ein:

[["Platin","Gold","Silber"],["Rot","Blue","Grün"],["~Kreis"]] 

Dies wirkt sich folgendermaßen auf die Auswahl aus:

  1. Wählen Sie einen roten Kreis aus Platin.
  2. Wählen Sie einen blauen Kreis aus Platin.
  3. Wählen Sie einen grünen Kreis aus Platin.
  4. Wählen Sie einen roten Kreis aus Gold.
  5. Wählen Sie einen blauen Kreis aus Gold.
  6. Wählen Sie einen grünen Kreis aus Gold.
  7. Wählen Sie einen roten Kreis aus Silber.
  8. Wählen Sie einen blauen Kreis aus Silber.
  9. Wählen Sie einen grünen Kreis aus Silber.

Beispiel 5

Wenn Sie eine Negierung für die Serverkriterien auswählen, berücksichtigen Sie das Verhalten, ob und wann sich Mitglieder einer Tag-Kategorie ändern. Welche Server würden beispielsweise anhand der obigen Abfragen ausgewählt werden, wenn ein Quadrat als Form hinzugefügt werden würde. Beachten Sie auch, wie Unbekannte verarbeitet werden. Es ist wirklich etwas schwierig, einen Server nicht als Dreieck festzulegen, wenn es nur Kreise und Dreiecke gibt. Sobald Quader vorhanden sind, werden sie Grid1 mit der gleichen Wahrscheinlichkeit als Kreis hinzugefügt, sofern nicht die obige Einstellung verwendet wird, dass Kreise ausdrücklich hervorgehoben werden.

Im folgenden Beispiel ist für das Grid nur erforderlich, dass die zugehörigen Server nicht aus Gold bestehen und dass sie keine Kreise sind.

In CNF wird dies wie folgt geschrieben:

((nicht Gold) und (nicht Kreis)) 

Dies wird in die folgende Auswahlzeichenfolge übersetzt:

[["~Gold"],["~Kreis"]] 

Wenn Gold-Server fälschlicherweise ausgeschlossen wurden, werden die Kriterien folgendermaßen geändert:

[["~Kreis"]]