CommunityCodierung & Entwicklunggithub.com

huaweicloud/huawei-cloud-ecs-manage

Verwaltet Huawei Cloud ECS (Elastic Cloud Server / 弹性云服务器)-Instanzen – Lebenszyklus, Änderungsvorgänge, Diagnose und Abfragen.

Was ist huawei-cloud-ecs-manage?

Dieses Skill bietet einem KI-Agenten umfassende Verwaltungs- und Diagnosefähigkeiten für Huawei Cloud ECS-Instanzen. Es deckt den gesamten Lebenszyklus ab: Erstellen, Starten, Stoppen, Neustarten und Löschen von Instanzen, sowie tägliche Änderungen wie Größenänderung (Resize), Neuinstallation des Betriebssystems, Zurücksetzen des Passworts, Austauschen des Schlüsselpaars, Binden/Lösen einer Elastic IP (EIP), Ändern der Sicherheitsgruppe, Hinzufügen/Entfernen von Netzwerkkarten (NICs) und Anhängen/Trennen von Volumes. Ein besonderes Highlight ist die **6-stufige Ursachendiagnose** bei fehlgeschlagener Instanzerstellung, die systematisch die häufigsten Fehlerursachen prüft: Kontingent → Flavor → Image → Netzwerk → Schlüsselpaar → Datenträger. Der Skill stellt 23 `huawei_*`-Aktionen bereit, die in fünf Fähigkeitsgruppen unterteilt sind: Abfragen (schreibgeschützt), Diagnose (schreibgeschützt), Lebenszyklusverwaltung (erfordert Bestätigung) und Änderungsvorgänge (erfordert Bestätigung). Für alle Schreibvorgänge ist ein obligatorisches Polling des asynchronen Jobs (über `hcloud ECS ShowJob`) erforderlich, bis dieser den Endstatus erreicht, bevor ein Vorgang als abgeschlossen gemeldet wird. Der Skill setzt auf das `hcloud` CLI (KooCLI) und sammelt Qualitätstelemetrie über `skill-quality-cli`.

Funktioniert mit~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/huaweicloud/huaweicloud-skills/tree/HEAD/skills/computing/ecs/huawei-cloud-ecs-manage

Installed? Explore more Codierung & Entwicklung skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

In Ihrer bevorzugten KI fragen

Öffnet einen neuen Chat, in dem dieser Agent-Skill bereits geladen ist.

Dokumentation

Huawei Cloud ECS Verwalten (Fehlerdiagnose bei der Erstellung & Instanzverwaltung)

STOP – Antworten Sie nicht aus allgemeinem Wissen. Befolgen Sie das untenstehende Verfahren.

Schritt 0: Stellen Sie skill-quality-cli sicher (erforderlich; wird bei der ersten Nutzung installiert)

bash scripts/ensure_cli.sh   # idempotent: installiert nur, wenn nicht vorhanden (kein automatisches Upgrade)
export PATH="$HOME/.local/bin:$PATH"
skill-quality-cli version    # überprüfen, ob es funktioniert

Führen Sie diesen Schritt zuerst aus: Die Qualitätsberichterstattung hängt von skill-quality-cli ab, das idempotent durch scripts/ensure_cli.sh sichergestellt wird (installiert einmal, wenn es fehlt, überspringt es, wenn vorhanden; kein automatisches Upgrade – führen Sie skill-quality-cli upgrade manuell aus, um zu aktualisieren). Wenn offline oder der Download fehlschlägt, degradiert der Skill stillschweigend (Geschäftsablauf unberührt); führen Sie diesen Schritt erneut aus, sobald Sie wieder online sind. Führen Sie immer hcloud ECS <Operation> --help aus, bevor Sie Befehle erstellen, um die genauen Parameternamen und Anforderungen zu ermitteln.

Übersicht

Dieser Skill bietet KI-Agenten-Funktionen für Huawei Cloud ECS (Elastic Cloud Server / 弹性云服务器): Lebenszyklusverwaltung von Instanzen (Erstellen/Starten/Stoppen/Neustarten/Löschen), Abfragen von Instanzen/Kontingenten/Flavors/Images und eine 6-stufige Ursachendiagnose bei fehlgeschlagener Erstellung, die die häufigsten Ursachen von "ECS-Instanzerstellung fehlgeschlagen" in der Reihenfolge beseitigt: Kontingent → Flavor → Image → Netzwerk → Schlüsselpaar → Datenträger.

Es stellt 23 huawei_*-Aktionen in fünf Fähigkeitsgruppen bereit:

FähigkeitRisikostufeAktionen
Abfragen (schreibgeschützt)R3 – automatisch ausführenhuawei_list_ecs_instances, huawei_get_ecs_instance, huawei_list_ecs_flavors, huawei_list_ecs_images, huawei_list_ecs_quotas
Diagnose (schreibgeschützt)R3 – automatisch ausführenhuawei_diagnose_ecs_create_failure, huawei_analyze_ecs_health
Verwalten – LebenszyklusR2 – Vorschau + Bestätigunghuawei_create_ecs_instance, huawei_start_ecs_instance, huawei_stop_ecs_instance, huawei_restart_ecs_instance
Verwalten – LebenszyklusR1 – Vorschau + Bestätigunghuawei_delete_ecs_instance
Verwalten – Änderungsvorgänge (§5)R2 – Vorschau + Bestätigunghuawei_resize_ecs_instance, huawei_reinstall_ecs_os, huawei_reset_ecs_password, huawei_replace_ecs_keypair, huawei_bind_ecs_eip, huawei_change_ecs_security_group, huawei_add_ecs_nic, huawei_attach_ecs_volume, huawei_detach_ecs_volume
Verwalten – Änderungsvorgänge (§5)R1 – Vorschau + Bestätigunghuawei_unbind_ecs_eip, huawei_remove_ecs_nic

Jeder Schreibvorgang ist asynchron: Die API gibt eine job_id zurück, und die eigentliche Arbeit läuft im Hintergrund weiter. Das Pollen dieses Jobs ist ein obligatorischer Nachschritt, kein optionales Extra – siehe §6 Asynchrones Job-Pollen.

Umfangsgrenzen:

  • ✅ ECS-Instanzen, Flavors, Images, Kontingente abfragen (schreibgeschützt)
  • ✅ ECS-Erstellungsfehler diagnostizieren (Kontingent → Flavor → Image → Netzwerk → Schlüsselpaar → Datenträger) und Instanzzustand analysieren (Status / Datenträger / Netzwerk)
  • ✅ ECS-Instanzen erstellen (nachträglich bezahlt), starten, stoppen, neustarten, löschen (R2/R1: immer Vorschau + Bestätigung)
  • ✅ Eine bestehende Instanz ändern: Flavor ändern, Betriebssystem neu installieren, Passwort zurücksetzen, Schlüsselpaar ersetzen, EIP binden/lösen, eine bestehende Sicherheitsgruppe anhängen/trennen, eine NIC hinzufügen/entfernen, ein Volume anhängen/trennen (R2/R1: immer Vorschau + Bestätigung)
  • ❌ NIEMALS die VPC / das Subnetz / die Sicherheitsgruppen-Ressource oder die EVS-Volume-Ressource selbst erstellen, löschen oder neu konfigurieren. Dieser Skill hängt nur bestehende Ressourcen an eine Instanz an oder trennt sie von ihr; verwenden Sie die dedizierten VPC-/EVS-Skills für ressourcenspezifische Mutationen.
  • ❌ NIEMALS einen Schreibvorgang ohne explizite Benutzerbestätigung ausführen
  • ❌ NIEMALS einen Schreibvorgang als "erledigt" melden, bevor der asynchrone Job den Status SUCCESS erreicht hat und, bei create, bevor die Instanz den Status ACTIVE erreicht hat
  • ❌ NIEMALS Anmeldeinformationen (AK/SK, Passwörter, Token) in einer Ausgabe oder einem Bericht wiedergeben
  • ➡️ Nicht im Umfang: RDS-/Datenbankabfragen. Dieser Skill verwaltet nur Compute. Wenn der Benutzer nach einer Datenbank fragt, von der eine ECS-Instanz abhängt, geben Sie die Frage an den Benutzer zurück mit einem Hinweis auf einen dedizierten RDS-Skill oder die Huawei Cloud RDS-Konsole – dieser Skill ruft niemals einen anderen Skill auf. Siehe references/related-skills.md für die Formulierung der Übergabe.

Abhängigkeit: Qualitätstelemetrie wird automatisch über skill-quality-cli gesammelt (installiert durch scripts/ensure_cli.sh, wenn nicht vorhanden).

Kritische Warnungen

FalleWarum
Kontingenterschöpfung ist der häufigste ErstellungsfehlerInsufficient quota / Quota exceeded bedeutet, dass Instanzen/Kerne/RAM/Volumes das Projektlimit erreicht haben – prüfen Sie zuerst ShowServerLimits
Flavor muss in der Zielregion/AZ existierenEin Flavor existiert global, kann aber in der gewählten AZ ausverkauft oder nicht verfügbar sein – filtern Sie ListFlavors mit --availability_zone
Image muss active sein und zur Flavor-Architektur passenGelöschte/private Images mit falschem __os_type/architecture (x86 vs. ARM) führen zu Bereitstellungsfehlern – prüfen Sie IMS ListImages --status=active
Subnetz ohne freie IPs blockiert die ErstellungWenn das Subnetz-CIDR erschöpft oder dhcp deaktiviert ist, schlägt die NIC-Zuweisung fehl
Sicherheitsgruppe muss vor der Erstellung existierenDas Referenzieren einer nicht existierenden Sicherheitsgruppen-ID führt zum Fehlschlagen der Anfrage
Schlüsselpaarfehler sind irreführendWenn key_name gesetzt ist, aber das Schlüsselpaar nicht existiert, schlägt die Erstellung mit KeypairNotFound fehl – überprüfen Sie mit KPS ListKeypairs
Datenträger-/AZ-VerfügbarkeitRoot-/Datenvolumen-Typen (SATA/SAS/GPSSD) können in der Ziel-AZ nicht verfügbar sein – prüfen Sie EVS ListVolumes und Volume-Kontingente
Löschen ist irreversibelR1: Überprüfen Sie zuerst die Instanz, bestätigen Sie keine Datenabhängigkeit, fordern Sie dann eine explizite Benutzerbestätigung an

Voraussetzungen

  1. hcloud CLI (KooCLI 7.2.x oder neuer) installiert und authentifiziert.
    • Installations- und Konfigurationsanleitung: siehe references/cli-installation-guide.md
    • Zwei unterstützte Authentifizierungsmodi:
      • AK/SK-Anmeldedaten: Umgebungsvariablen HUAWEICLOUD_SDK_AK / HUAWEICLOUD_SDK_SK (oder HUAWEI_ACCESS_KEY / HUAWEI_SECRET_KEY), oder interaktive Einrichtung über den hcloud-Konfigurationsassistenten
      • Lokales hcloud-Profil: Führen Sie "hcloud configure list" aus; es muss ein gültiges Profil mit Modus AKSK und einer echten accessKeyId anzeigen
    • Überprüfen Sie die Authentifizierung mit "hcloud configure list"
  2. Region: ECS ist regionsspezifisch. Übergeben Sie immer --cli-region={region} (z.B. cn-north-4). --project_id wird automatisch aus dem Profil ausgefüllt, wenn es weggelassen wird.
  3. IAM-Berechtigungen: Richtlinien mit minimalen Rechten finden Sie in references/iam-policies.md.
    • Abfragen/Diagnose: ecs:cloudServers:list, ecs:cloudServers:get, ecs:cloudServerFlavors:list, ecs:cloudServerImages:list, ecs:jobs:get, ecs:serverVolumes:list, ims:images:list, vpc:subnets:list, vpc:securityGroups:list, vpc:publicIps:list, evs:volumes:list, kps:keypairs:list (Diagnoseschritt 5, hcloud KPS ListKeypairs)
    • Verwalten: ecs:cloudServers:create, ecs:cloudServers:action (starten/stoppen/neustarten, Größe ändern, neuinstallieren, Passwort zurücksetzen, NIC- und Sicherheitsgruppenänderungen), ecs:cloudServers:delete
    • Änderungsvorgänge (§5) benötigen auch die Schreibaktion jeder Ressource, die sie berühren, z.B. evs:volumes:delete mit --delete_volume=true, vpc:publicIps:delete mit --delete_publicip=true; die genaue Liste finden Sie in references/iam-policies.md.
  4. skill-quality-cli – sichergestellt durch bash scripts/ensure_cli.sh (idempotent, überspringt, wenn vorhanden)
    • Upgrade: Führen Sie manuell skill-quality-cli upgrade aus (kein automatisches Upgrade)
    • Telemetriebericht deaktivieren: Setzen Sie SKILL_QUALITY_REPORT=0

Arbeitsablauf

1. Ziel identifizieren → Region, instance_id / flavor_id / image_id / vpc_id / subnet_id / key_name, Absichts-Schlüsselwörter
2. Absicht klassifizieren →
     - Abfragen/Diagnose (R3): auflisten / anzeigen / analysieren / diagnostizieren – automatisch ausführen
     - Lebenszyklus verwalten (R2): erstellen / starten / stoppen / neustarten – IMMER Vorschau anzeigen und explizite Bestätigung anfordern
     - Lebenszyklus verwalten (R1): löschen – IMMER die Instanzdetails anzeigen, irreversible Warnung, explizite Bestätigung
     - Änderungsvorgänge verwalten (R2): Größe ändern / neuinstallieren / Passwort zurücksetzen / Schlüsselpaar ersetzen / EIP binden /
       Sicherheitsgruppe ändern / NIC hinzufügen / Volume anhängen – IMMER Vorschau + Bestätigung
     - Änderungsvorgänge verwalten (R1): EIP lösen / NIC entfernen / Schlüsselpaar löschen – IMMER die aktuelle
       Anbindung anzeigen, irreversible Warnung, explizite Bestätigung
3. Vorabprüfung → für die Erstellung und für jeden Änderungsvorgang führen Sie zuerst die relevanten schreibgeschützten Prüfungen durch
   (Kontingent, Flavor, Image, Netzwerk, Schlüsselpaar, Datenträger), damit der Benutzer basierend auf dem tatsächlichen Zustand bestätigt
4. Ausführen → den hcloud-Befehl aus den unten verifizierten Vorlagen erstellen
5. Job-ID erfassen → die Schreib-API gibt sofort eine job_id zurück; die Arbeit läuft noch
6. Asynchronen Job pollieren → `hcloud ECS ShowJob`, bis `status=SUCCESS|FAIL`; bei `create` AUCH
   `hcloud ECS ShowServer` pollieren, bis `status=ACTIVE`; dann den ENDGÜLTIGEN Zustand an den Benutzer melden
7. Ausgabe → strukturierte JSON-Zusammenfassung + lesbarer Diagnosebericht
8. Qualität melden → automatisch über skill-quality-cli run wrapping (siehe Schritt 0 / Voraussetzungen #4)

Bestätigungshürden (DÜRFEN NICHT übersprungen werden):

  • R2-Aktionen (huawei_create_ecs_instance, huawei_start_ecs_instance, huawei_stop_ecs_instance, huawei_restart_ecs_instance): Den vollständigen Befehl anzeigen, die Zielinstanz(en) und vor der Ausführung "bestätigen?" fragen.
  • R1-Aktion (huawei_delete_ecs_instance): Zuerst die schreibgeschützte Prüfung durchführen (ShowServer, um zu bestätigen, dass die Instanz existiert, und ihren Status/Flavor/Volumes aufzuzeichnen). Den vollständigen Befehl mit der irreversiblen Löschwarnung anzeigen und vor der Ausführung eine explizite Bestätigung anfordern.
  • Änderungsvorgänge (R2: huawei_resize_ecs_instance, huawei_reinstall_ecs_os, huawei_reset_ecs_password, huawei_replace_ecs_keypair, huawei_bind_ecs_eip, huawei_change_ecs_security_group, huawei_add_ecs_nic, huawei_attach_ecs_volume): Den aktuellen Zustand anzeigen (über ShowServer / ListServerVolumeAttachments / ListServerInterfaces), den vollständigen Befehl und den erwarteten Endzustand, dann "bestätigen?" fragen.
  • Änderungsvorgänge (R1: huawei_unbind_ecs_eip, huawei_remove_ecs_nic): Anzeigen, was getrennt wird, und die Auswirkungen auf die Konnektivität (ein gelöstes EIP verliert den öffentlichen Zugriff; eine entfernte NIC verliert diesen Netzwerkpfad und ihre private IP), eine explizite Bestätigung anfordern und niemals mit einem Löschvorgang verketten. Bei huawei_detach_ecs_volume (R2) davor warnen, dass --delete_flag=1 den Datenträger löscht.
  • Vorabprüfung vor der Erstellung: Vor huawei_create_ecs_instance IMMER huawei_diagnose_ecs_create_failure ausführen (oder zumindest die Kontingent- + Flavor- + Image-Prüfungen), damit der Benutzer sieht, dass die Umgebung bereit ist, und dann bestätigen.
  • Asynchrones Job-Pollen ist obligatorisch: Schließen Sie einen Schreibvorgang niemals ab, bevor der Job einen Endzustand erreicht hat. Eine job_id ohne Polling ist eine unvollständige Aktion, kein Erfolg.

Schreibvorgänge sind in den folgenden Befehlsblöcken mit [W] / 写操作 gekennzeichnet (Erkennungsschlüsselwörter: create / start / stop / restart / delete – dieselben Verben, auf die der Erkennungsmechanismus für Schreibvorgänge in der Testpipeline anspricht).

Kernbefehle

Alle untenstehenden Befehle werden in zweifacher Form gezeigt: der bloße ausführbare hcloud <Service> <Operation> Befehl und die identische Payload, die mit skill-quality-cli run --skill-name huawei-cloud-ecs-manage -- ... für die Qualitätsberichterstattung umschlossen ist. Sie erfordern die Installation und Authentifizierung der KooCLI (hcloud CLI) (siehe Voraussetzungen); kein Python SDK-Paket wird für Geschäftsbefehle benötigt.

⚠️ Obligatorisch: Jeder hcloud-Befehl in diesem Skill MUSS mit skill-quality-cli run --skill-name huawei-cloud-ecs-manage -- <command> umschlossen werden – bloße hcloud-Aufrufe sind strengstens verboten.

1. Abfragen (R3 – schreibgeschützt, automatisch ausführen)

huawei_list_ecs_instances – ECS-Instanzen und ihren Status auflisten:

# Optional: --limit={n} --offset={n} --status={ACTIVE|SHUTOFF|ERROR|BUILD|...} --name={name} --server_id={id1,id2}
hcloud ECS ListServersDetails --cli-region={region}
skill-quality-cli run --skill-name huawei-cloud-ecs-manage -- hcloud ECS ListServersDetails --cli-region={region}

huawei_get_ecs_instance – Alle Details einer Instanz abfragen (Status, Adressen, Flavor, Volumes, Fehler):

hcloud ECS ShowServer --cli-region={region} --server_id={server_id}
skill-quality-cli run --skill-name huawei-cloud-ecs-manage -- hcloud ECS ShowServer --cli-region={region} --server_id={server_id}

huawei_list_ecs_flavors – Verfügbare Flavors auflisten (optional auf eine AZ beschränkt):

# Optional: --availability_zone={az} --flavor_id={flavor_id} --limit={n} --marker={marker}
hcloud ECS ListFlavors --cli-region={region}
skill-quality-cli run --skill-name huawei-cloud-ecs-manage -- hcloud ECS ListFlavors --cli-region={region}

huawei_list_ecs_images – Verfügbare Images auflisten (nach Betriebssystem-Typ / Architektur / Status filtern):

# Optional: --__os_type={Linux|Windows} --architecture={x86|arm} --status={active} --name={name} --limit={n}
hcloud IMS ListImages --cli-region={region}
skill-quality-cli run --skill-name huawei-cloud-ecs-manage -- hcloud IMS ListImages --cli-region={region}

huawei_list_ecs_quotas – Projektkontingentnutzung abfragen:

hcloud ECS ShowServerLimits --cli-region={region}
skill-quality-cli run --skill-name huawei-cloud-ecs-manage -- hcloud ECS ShowServerLimits --cli-region={region}

ShowServerLimits gibt absolute Limits und Nutzung zurück (maxTotalInstances/totalInstancesUsed, maxTotalCores/totalCoresUsed, maxTotalRAMSize/totalRamUsed, maxTotalKeypairs). Beachten Sie, dass es kein Volume-Feld hat – für Datenträgerkontingente zusätzlich verwenden:

# Erforderlich: --target_project_id={project_id} --usage=True
hcloud EVS CinderListQuotas --target_project_id={project_id} --usage=True --cli-region={region}
skill-quality-cli run --skill-name huawei-cloud-ecs-manage -- hcloud EVS CinderListQuotas --target_project_id={project_id} --usage=True --cli-region={region}

2. Diagnose (R3 – schreibgeschützt, automatisch ausführen)

huawei_diagnose_ecs_create_failure – 6-stufige Fehlerdiagnose bei der Erstellung

...

Individual skills in this repo

This repo contains 4 individual skills — each has its own dedicated page.

huaweicloud/huawei-cloud-dws-io-diag

DWS cluster I/O overload root cause diagnosis skill, based on KooCLI v3.2.0+ and DWS Autopilot MCP Server. Automatically collects I/O metrics, analyzes root causes (customer-side / system-side) via three-stage decision tree, and outputs a standardized diagnosis report. Applicable to DWS cluster I/O usage too high, I/O alarms, disk I/O load anomaly scenarios. Trigger words: "I/O高", "I/O告警", "I/O诊断", "I/O过载", "IO高", "IO告警", "IO诊断", "IO过载", "磁盘IO负载异常", "util打满", "await高", "high I/O", "I/O alarm", "I/O diagnosis"

huaweicloud/huawei-cloud-ges-graph

Provides access guide for Huawei Cloud Graph Database GES service. Covers Cypher queries, GQL queries, schema/label management, summary info queries, graph data editing and more. Use this skill when users want to operate Huawei Cloud graph database GES service via terminal.

huaweicloud/huawei-cloud-obs-upload

Upload a local file or directory to a specified Huawei Cloud OBS (Object Storage Service) bucket with obsutil, and set up a scheduled/periodic upload task (crontab) that syncs a local directory to an OBS bucket. Also lists OBS buckets with storage capacity and object count. Use this skill when the user wants to: (1) upload a specific local file or directory to a named OBS bucket, (2) set up a scheduled/periodic upload task that automatically syncs a local directory to a named OBS bucket, (3) list their OBS buckets and check capacity and object count. Triggers include: user mentions "upload to OBS bucket", "上传文件到OBS", "上传目录到OBS", "定时上传到OBS", "目录同步到OBS桶", "OBS scheduled upload", "OBS周期上传", "OBS bucket capacity check", "OBS桶容量查询". Generic phrases such as "object storage", "upload file" or "upload directory" alone are NOT sufficient to trigger this skill.

huaweicloud/huawei-cloud-obs-website-host

Configure Huawei Cloud OBS static website hosting with Python SDK and a custom domain. Use when the user needs to enable or repair OBS website hosting, set index or error pages, expose an existing bucket for public website access through a custom domain, or connect that domain through Huawei Cloud DNS when Huawei manages the zone. Triggers include OBS static website hosting, website endpoint, index page, error page, public-read bucket website access, custom domain CNAME, Huawei Cloud DNS, setBucketWebsite. 中文触发词包括:OBS 静态网站托管、网站托管、自定义域名解析。

Verwandte Skills