Changes for page Microservice Cmdlets

Last modified by jklein on 2025/08/15 09:48

From version 2.3
edited by jklein
on 2025/06/20 08:14
Change comment: There is no comment for this version
To version 3.1
edited by jklein
on 2025/06/20 11:01
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -157,14 +157,273 @@
157 157  
158 158  == Edit-AESBMicroservices ==
159 159  
160 +Dieses Cmdlet ermöglicht die Bearbeitung der Konfiguration eines spezifischen Microservice. Derzeit unterstützt es die Änderung des Starttyps (StartupType) und optional die Konfiguration von Anmeldeinformationen (Credentials) für den Microservice. Dies ist besonders nützlich, um das Startverhalten von Microservices zu steuern oder SICS-Anmeldeinformationen zu aktualisieren.
161 +
162 +|=(% style="width: 213px;" %)Parameter |=(% style="width: 209px;" %)ParameterSetName|=Datentyp|=Optional|=Beschreibung
163 +|-ConnectionName| |String|✅|Der Name der Verbindung, über die Microservice-Instanzen bearbeitet werden sollen. Wird die Standardverbindung verwendet, wenn nicht angegeben.
164 +|-InstanceName|NoCredentialParameterSetName,
165 +CredentialParameterSetName|String|❌|Gibt den eindeutigen Namen der Microservice-Instanz an, deren Konfiguration geändert werden soll. Dieser Parameter ist in beiden Parametersets obligatorisch.
166 +|-UseCredentials|CredentialParameterSetName|SwitchParameter|✅❌|Gibt an, dass Anmeldeinformationen für den Microservice konfiguriert werden sollen. Dieser Parameter gehört zum CredentialParameterSetName und ist obligatorisch, wenn dieses Set verwendet wird.
167 +|-UserName|CredentialParameterSetName|String|✅❌|Gibt den Benutzernamen an, der verwendet werden soll, wenn UseCredentials aktiviert ist. Dieser Parameter gehört zum CredentialParameterSetName und ist obligatorisch, wenn dieses Set verwendet wird.
168 +|-Password|CredentialParameterSetName|SecureString|✅❌|Gibt das Passwort für den angegebenen Benutzernamen an. Das Passwort muss als SecureString-Objekt übergeben werden. Dieser Parameter gehört zum CredentialParameterSetName und ist obligatorisch, wenn dieses Set verwendet wird.
169 +|-StartupType|NoCredentialParameterSetName,
170 +CredentialParameterSetName|Enum|❌|Legt fest, wie der Microservice beim Systemstart verhalten soll. Dies ist ein Enum-Wert vom Typ InstanceStartType. Gängige Werte sind Automatic (startet automatisch mit dem System) und Manual (muss manuell gestartet werden).
171 +
172 +=== Parameter-Sets ===
173 +
174 +Das Cmdlet verwendet Parameter-Sets, um zwei Hauptszenarien zu unterstützen:
175 +
176 +* **NoCredentialParameterSetName**: Ermöglicht die Bearbeitung des Starttyps ohne die Angabe von Anmeldeinformationen.
177 +* **CredentialParameterSetName**: Ermöglicht die Bearbeitung des Starttyps //und// die Konfiguration von Anmeldeinformationen für den Microservice.
178 +
179 +Sie können immer nur Parameter aus einem dieser Sets gleichzeitig verwenden.
180 +
181 +=== Beispiele ===
182 +
183 +Beispiel 1: Starttyp eines Microservice auf "Automatisch" ändern
184 +
185 +{{code language="PowerShell"}}
186 +Edit-AESBMicroservice -InstanceName "TestMicroservice1" -StartupType Automatic
187 +
188 +{{/code}}
189 +
190 +Dieser Befehl ändert den Starttyp des Microservice mit dem Namen "TestMicroservice" auf "Automatisch". Hier wird das //NoCredentialParameterSetName// verwendet.
191 +
192 +Beispiel 2: Starttyp ändern und individuelle Anmeldeinformationen festlegen
193 +
194 +{{code language="PowerShell" layout="LINENUMBERS"}}
195 +$password = ConvertTo-SecureString "YourSecurePassword" -AsPlainText -Force
196 +Edit-AESBMicroservice -InstanceName "TestMicroservice" -UseCredentials -Username "MySicsUser" -Password $password -StartupType Automatic
197 +{{/code}}
198 +
199 +Dieser Befehl ändert den Starttyp des Microservice "TestMicroservice" auf "Automatisch" und konfiguriert individuelle SICS-Anmeldeinformationen mit dem angegebenen Benutzernamen und Passwort. Hier wird das //CredentialParameterSetName// verwendet.
200 +
160 160  == Kill-AESBMicroservices ==
161 161  
203 +Mit diesem Cmdlet können Sie laufende Microservices gezielt beenden. Dies ist nützlich für die Wartung, Fehlerbehebung oder das Herunterfahren bestimmter Microservice-Instanzen. Das Cmdlet bietet zwei Methoden zum Ansprechen der zu beendenden Microservices: entweder direkt über deren Instanz-IDs oder indirekt über die ID ihres Supervisoren, wodurch alle zugehörigen Microservices beendet werden.
204 +
205 +|=(% style="width: 213px;" %)Parameter |=(% style="width: 209px;" %)ParameterSetName|=Datentyp|=Optional|=Beschreibung
206 +|-ConnectionName| |String|✅|Der Name der Verbindung, über welche die Ausführung von Microservice-Instanzen abgebrochen werden soll. Wird die Standardverbindung verwendet, wenn nicht angegeben.
207 +|-InstanceIds|UseMicroservicesIdListParameterSet|String[]|✅❌|Gibt eine Liste von eindeutigen Instanz-IDs (GUIDs als String) der Microservices an, die beendet werden sollen.
208 +|-SupervisorId|UseSupervisorIdParameterSet|String|✅❌|Der **SupervisorId**-Parameter gibt die eindeutige ID (GUID als String) des Supervisors an. Alle Microservices, die von diesem spezifischen Supervisor verwaltet werden, werden beendet.
209 +
210 +=== Parameter-Sets ===
211 +
212 +Das Cmdlet verwendet Parameter-Sets, um diese beiden Betriebsmodi zu unterscheiden:
213 +
214 +* **UseMicroservicesIdListParameterSet**: Ermöglicht das Ansprechen von Microservices über eine Liste ihrer eindeutigen Instanz-IDs.
215 +* **UseSupervisorIdParameterSet**: Ermöglicht das Ansprechen von Microservices durch Angabe der ID ihres Supervisoren. Alle Microservices, die diesem Supervisor zugeordnet sind, werden beendet.
216 +
217 +Sie können immer nur Parameter aus einem dieser Sets gleichzeitig verwenden.
218 +
219 +=== Beispiele ===
220 +
221 +Beispiel 1: Einen spezifischen Microservice mit seiner Instanz-ID beenden
222 +
223 +{{code language="PowerShell"}}
224 +Kill-AESBMicroservices -InstanceIds "ffffffff-ffff-ffff-ffff-ffffffffffff"
225 +
226 +{{/code}}
227 +
228 +Dieser Befehl versucht, den Microservice mit der angegebenen Instanz-ID zu beenden. Die Beispielausgabe zeigt, dass der Microservice bereits gestoppt war. Hier wird das //UseMicroservicesIdListParameterSet// verwendet.
229 +
230 +Beispiel 2: Mehrere Microservices mit ihren Instanz-IDs beenden
231 +
232 +{{code language="PowerShell"}}
233 +Kill-AESBMicroservices -InstanceIds "ffffffff-ffff-ffff-ffff-fffffffffff1", "ffffffff-ffff-ffff-ffff-fffffffffff2"
234 +
235 +{{/code}}
236 +
237 +Dieser Befehl versucht, die Microservices mit den angegebenen Instanz-IDs zu beenden.
238 +
239 +Beispiel 3: Alle Microservices beenden, die einem bestimmten Supervisor zugeordnet sin
240 +
241 +{{code language="PowerShell"}}
242 +Kill-AESBMicroservices -SupervisorId "ffffffff-ffff-ffff-ffff-ffffffffffff"
243 +{{/code}}
244 +
245 +Dieser Befehl beendet alle Microservices, die dem Supervisor mit der angegebenen ID zugeordnet sind. Hier wird das //UseSupervisorIdParameterSet// verwendet.
246 +
247 +=== Rückgabewerte ===
248 +
249 +Das Cmdlet gibt eine Sammlung von Objekten zurück, die den Status der Beendigung für jeden angesprochenen Microservice anzeigen. Die Ausgabe im Beispiel zeigt folgende Eigenschaften:
250 +
251 +* **Status**: Der Status der Beendigungsoperation (z.B. //Unchanged// wenn bereits gestoppt, //Stopped// wenn erfolgreich beendet).
252 +* **InstanceId**: Die eindeutige ID der betroffenen Microservice-Instanz.
253 +* **InstanceState**: Der Zustand des Microservice nach der Operation (z.B. Already stopped).
254 +* **Error**: Eine Fehlermeldung, falls die Operation nicht erfolgreich war oder ein Problem aufgetreten ist.
255 +
162 162  == Move-AESBMicroservices ==
163 163  
258 +Mit diesem Cmdlet können Sie eine oder mehrere Microservice-Instanzen auf einen anderen Supervisor verschieben. Es unterstützt optionale Parameter für Timeout und asynchrone Ausführung.
259 +
260 +
261 +|=(% style="width: 213px;" %)Parameter |=(% style="width: 217px;" %)Datentyp|=Optional|=Alias|=Beschreibung
262 +|-ConnectionName|String|✅|C|Der Name der Verbindung, über die Microservice-Instanzen verschoben werden sollen. Wird die Standardverbindung verwendet, wenn nicht angegeben.
263 +|-InstanceIds|String[]|❌| |Die IDs der zu verschiebenden Microservice-Instanzen (Pflichtfeld, unterstützt mehrere Werte)
264 +|-SupervisorId|String|❌| |Die Ziel-SupervisorId, auf die die Instanzen verschoben werden sollen
265 +|-Timeout|String|✅| |Optionales Timeout für die Operation (Standard: "30s")
266 +|-NoWait|SwitchParameter|✅| |Gibt an, ob das Cmdlet auf den Abschluss der Operation warten soll (asynchron)
267 +
268 +=== Beispiele ===
269 +
270 +Beispiel 1: Einen Microservice zu einem neuen Supervisor verschieben
271 +
272 +{{code language="PowerShell"}}
273 +Move-AESBMicroservice -InstanceIds "aaaaaaaa-ffff-ffff-ffff-ffffffffffff" -SupervisorId "ffffffff-ffff-ffff-ffff-aaaaaaaa"
274 +{{/code}}
275 +
276 +Dieser Befehl verschiebt den Microservice mit der Instanz-ID "aaaaaaaa-ffff-ffff-ffff-ffffffffffff" zu dem Supervisor mit der ID "ffffffff-ffff-ffff-ffff-aaaaaaaa".
277 +
278 +Das Cmdlet wartet, bis der Vorgang abgeschlossen ist (Standard-Timeout von 30 Sekunden).
279 +
280 +Beispiel 2: Mehrere Microservices zu einem neuen Supervisor verschieben und nicht auf Abschluss warten.
281 +
282 +{{code language="PowerShell"}}
283 +Move-AESBMicroservice -InstanceIds "aaaaaaaa-ffff-ffff-ffff-fffffffffff1", "aaaaaaaa-ffff-ffff-ffff-fffffffffff2" -SupervisorId "ffffffff-ffff-ffff-ffff-aaaaaaaa" -NoWait
284 +
285 +{{/code}}
286 +
287 +Dieser Befehl initiiert die Verschiebung der Microservices mit den Instanz-IDs "aaaaaaaa-ffff-ffff-ffff-fffffffffff1" und "aaaaaaaa-ffff-ffff-ffff-fffffffffff2" zu "ffffffff-ffff-ffff-ffff-aaaaaaaa" und kehrt sofort zurück, ohne auf den Abschluss des Vorgangs zu warten.
288 +
289 +Beispiel 3: Einen Microservice verschieben mit längerem Timeout
290 +
291 +{{code language="PowerShell"}}
292 +Move-AESBMicroservice -InstanceIds "aaaaaaaa-ffff-ffff-ffff-fffffffffff1" -SupervisorId "ffffffff-ffff-ffff-ffff-aaaaaaaa" -Timeout "5m"
293 +{{/code}}
294 +
295 +Dieser Befehl versucht, "aaaaaaaa-ffff-ffff-ffff-fffffffffff1" zu "ffffffff-ffff-ffff-ffff-aaaaaaaa" zu verschieben und wartet bis zu 5 Minuten auf den Abschluss des Vorgangs.
296 +
297 +=== Rückgabewerte ===
298 +
299 +Das Cmdlet gibt für jede verschobene Instanz ein Objekt mit folgenden Eigenschaften zurück:
300 +
301 +* **InstanceId**: Die ID der verschobenen Microservice-Instanz
302 +* **SicsUsername**: Der zugehörige Benutzername (z. B. für die Verbindung)
303 +* **IsIdentified**: Gibt an, ob die Instanz eindeutig identifiziert wurde
304 +* **ProcessState**: Aktueller Prozessstatus der Instanz (z. B. Stopped)
305 +* **LastUpdate**: Zeitpunkt der letzten Statusänderung
306 +* **Timestamp**: Zeitstempel der letzten Änderung
307 +* **ProcessId**: (Optional) Prozess-ID der Instanz
308 +* **CpuUsage**: (Optional) CPU-Auslastung der Instanz
309 +* **RamUsage**: (Optional) RAM-Auslastung der Instanz
310 +
164 164  == Remove-AESBMicroservices ==
165 165  
313 +Dieses Cmdlet entfernt die angegebenen Microservice-Instanzen. Die zu entfernenden Microservices können entweder über ihre Instanz-Namen oder ihre Instanz-IDs identifiziert werden. Es muss einer der Parameter -//InstanceNames// oder -//InstanceIds// angegeben werden. Die Parameter können nicht zusammen verwendet werden.
314 +
315 +|=(% style="width: 213px;" %)Parameter |=(% style="width: 217px;" %)Datentyp|=Optional|=Alias|=Beschreibung
316 +|-ConnectionName|String|✅|C|Der Name der Verbindung, über die Microservice-Instanzen entfernt werden sollen. Wenn nicht angegeben, wird die Standardverbindung verwendet.
317 +|-InstanceNames|String[]|❌|Keine|Gibt die Namen der Microservices an, die entfernt werden sollen. Es kann ein einzelner Name oder ein Array von Namen übergeben werden. Obligatorisch für den Parameter-Satz //ByInstanceName//.
318 +|-InstanceIds|String[]|❌|Keine|Gibt die eindeutigen Instanz-IDs (GUIDs) der Microservices an, die entfernt werden sollen. Es kann eine einzelne ID oder ein Array von IDs übergeben werden. Obligatorisch für den Parameter-Satz //ByInstanceId//.
319 +
320 +=== Beispiele ===
321 +
322 +Beispiel 1: Einen Microservice anhand seiner Instanz-ID entfernen
323 +
324 +{{code language="PowerShell"}}
325 +Remove-AESBMicroservice -InstanceIds "aaaaaaaa-ffff-ffff-ffff-fffffffffff1"
326 +{{/code}}
327 +
328 +Dieser Befehl entfernt den Microservice mit der Instanz-ID "b6cb7044-b6b2-4a64-9997-29f0ea5283db". Die Ausgabe zeigt die Instanz und das Ergebnis "Success".
329 +
330 +Beispiel 2: Mehrere Microservices anhand ihrer Instanz-IDs entfernen
331 +
332 +{{code language="PowerShell"}}
333 +Remove-AESBMicroservice -InstanceIds "aaaaaaaa-ffff-ffff-ffff-fffffffffff1"
334 +{{/code}}
335 +
336 +Dieser Befehl entfernt zwei Microservices, die durch ihre jeweiligen Instanz-IDs identifiziert werden.
337 +
338 +Beispiel 3: Einen Microservice anhand seines Namens entfernen
339 +
340 +{{code language="PowerShell"}}
341 +Remove-AESBMicroservice -InstanceNames "MeinService"
342 +
343 +{{/code}}
344 +
345 +Dieser Befehl entfernt den Microservice mit dem Namen "MeinService".
346 +
347 +Beispiel 4: Mehrere Microservices anhand ihrer Namen entfernen und Bestätigung anfordern
348 +
349 +{{code language="PowerShell"}}
350 +Remove-AESBMicroservice -InstanceNames "Service1", "Service2" -Confirm
351 +{{/code}}
352 +
353 +Dieser Befehl versucht, die Microservices "Service1" und "Service2" zu entfernen. Vor dem eigentlichen Entfernen wird der Benutzer um Bestätigung gebeten.
354 +
355 +Beispiel 5: Microservices über die Pipeline anhand von Instanz-IDs entfernen
356 +
357 +{{code language="PowerShell"}}
358 +"aaaaaaaa-ffff-ffff-ffff-fffffffffff1", "aaaaaaaa-ffff-ffff-ffff-fffffffffff2" | Remove-AESBMicroservice -InstanceIds
359 +
360 +{{/code}}
361 +
362 +Dieser Befehl übergibt zwei Instanz-IDs über die Pipeline an `Remove-Microservice`, um die entsprechenden Microservices zu entfernen.
363 +
364 +=== Rückgabewerte ===
365 +
366 +Das Cmdlet gibt für jeden versuchten Entfernungsvorgang ein Objekt zurück. Dieses Objekt enthält typischerweise die folgenden Informationen:
367 +
368 +* **Instance**: Die ID oder der Name des Microservices.
369 +* **Result**: Das Ergebnis des Entfernungsvorgangs (z.B. "Success", "Failed").
370 +
166 166  == Restart-AESBMicroservices ==
167 167  
373 +Mit diesem Cmdlet können Sie die angegebenen Microservice-Instanzen neu starten. Die neu zu startenden Microservices können entweder über ihre `InstanceIds` oder über eine `SupervisorId` (die alle zugehörigen Instanzen neu startet) identifiziert werden. Es muss einer der Parameter `-InstanceIds` oder `-SupervisorId` angegeben werden.
374 +
375 +|=(% style="width: 213px;" %)Parameter |=(% style="width: 217px;" %)Datentyp|=Optional|=Alias|=Beschreibung
376 +|-ConnectionName|String|✅|C|Der Name der Verbindung, über die Microservice-Instanzen neugestartet werden sollen. Wird die Standardverbindung verwendet, wenn nicht angegeben.
377 +|-SupervisorId|String[]|❌|Keine|Gibt die Namen der Microservices an, die entfernt werden sollen. Es kann ein einzelner Name oder ein Array von Namen übergeben werden. Obligatorisch für Parametersatz ByInstanceName.
378 +|-InstanceIds|String[]|❌|Keine|Gibt die eindeutigen Instanz-IDs (GUIDs) der Microservices an, die entfernt werden sollen. Es kann eine einzelne ID oder ein Array von IDs übergeben werden. Obligatorisch für Parametersatz ByInstanceId.
379 +|-Timeout|String|✅|Keine|Gibt die maximale Wartezeit für den Neustartvorgang an (z.B. "30s", "1m"). Standardwert: "30s".
380 +|-NoWait|SwitchParameter|✅|Keine|Wenn dieser Parameter angegeben ist, wartet das Cmdlet nicht auf den Abschluss des Neustartvorgangs, sondern kehrt sofort zurück.
381 +
382 +==== **Beispiele** ====
383 +
384 +Beispiel 1: Einen Microservice anhand seiner Instanz-ID neu starten
385 +
386 +{{code language="PowerShell"}}
387 +Restart-AESBMicroservices -InstanceIds "aaaaaaaa-ffff-ffff-ffff-fffffffffff1"
388 +{{/code}}
389 +
390 +Dieser Befehl startet den Microservice mit der Instanz-ID "aaaaaaaa-ffff-ffff-ffff-fffffffffff1" neu und wartet auf das Ergebnis.
391 +
392 +Beispiel 2: Mehrere Microservices anhand ihrer Instanz-IDs neu starten mit Timeout
393 +
394 +{{code language="PowerShell"}}
395 +Restart-AESBMicroservices -InstanceIds "aaaaaaaa-ffff-ffff-ffff-fffffffffff1", "aaaaaaaa-ffff-ffff-ffff-fffffffffff2" -Timeout "1m"
396 +
397 +{{/code}}
398 +
399 +Dieser Befehl startet zwei Microservices neu und setzt das Timeout für den Vorgang auf eine Minute.
400 +
401 +Beispiel 3: Alle Microservices eines Supervisors neu starten, ohne auf den Abschluss zu warten
402 +
403 +{{code language="PowerShell"}}
404 +Restart-AESBMicroservices -SupervisorId "aaaaaaaa-ffff-ffff-ffff-fffffffffff1" -NoWait
405 +{{/code}}
406 +
407 +Dieser Befehl initiiert den Neustart aller Microservices, die vom Supervisor "aaaaaaaa-ffff-ffff-ffff-fffffffffff1" verwaltet werden, und kehrt sofort zurück.
408 +
409 +Beispiel 4: Microservices über die Pipeline anhand von Instanz-IDs neu starten
410 +
411 +{{code language="PowerShell"}}
412 +"aaaaaaaa-ffff-ffff-ffff-fffffffffff1", "aaaaaaaa-ffff-ffff-ffff-fffffffffff2" | Restart-AESBMicroservices
413 +{{/code}}
414 +
415 +Dieser Befehl übergibt zwei Instanz-IDs über die Pipeline an `Restart-Microservices`, um die entsprechenden Microservices neu zu starten.
416 +
417 +=== Rückgabewert ===
418 +
419 +Das Cmdlet gibt für jeden versuchten Neustartvorgang ein Objekt zurück. Dieses Objekt enthält typischerweise die folgenden Informationen:
420 +
421 +* **Name**: Der Name des Microservices.
422 +* **InstanceId**: Die Instanz-ID des Microservices.
423 +* **RestartRequested**: Zeitstempel, wann der Neustart angefordert wurde.
424 +* **RestartSucceeded**: Zeitstempel, wann der Neustart erfolgreich war (oder leer/Fehlerdatum bei Misserfolg).
425 +* **Status**: Das Ergebnis des Neustartvorgangs (z.B. "Success", "Failed", "InProgress").
426 +
168 168  == Set-AESBMicroserviceLogging ==
169 169  
170 170  == Start-AESBMicroservices ==
© Aagon GmbH 2025
Besuchen Sie unsere Aagon-Community