Hinweis:
- Dieses Tutorial erfordert Zugriff auf Oracle Cloud. Informationen zur Registrierung für einen kostenlosen Account finden Sie unter Erste Schritte mit Oracle Cloud Infrastructure Free Tier.
- Es verwendet Beispielwerte für Oracle Cloud Infrastructure-Zugangsdaten, -Mandanten und -Compartments. Ersetzen Sie diese Werte nach Abschluss der Übung durch Werte, die für Ihre Cloud-Umgebung spezifisch sind.
Mit OCI Functions und Python Tickets in Jira Service Management öffnen
Einführung
Das folgende Tutorial richtet sich an Oracle Cloud Infrastructure-(OCI-)Benutzer, die sowohl den OCI Monitoring-Service als auch Jira Service Management verwenden, um Tickets zu öffnen und Vorfälle zu verfolgen. Nehmen wir an, Sie haben eine OCI-Instanz und möchten wissen, wann die Instanz aufgrund eines Fehlers unerwartet ausfällt. Sie möchten benachrichtigt werden und sofort ein Ticket in Jira Service Management geöffnet werden, damit der Servicetechniker das Problem so schnell wie möglich untersuchen und beheben kann. Mit dem OCI Functions-Service können Tickets automatisch in Jira Service Management geöffnet werden, wenn Probleme mit Ihren Organisationssystemen erkannt werden.
Ziele
-
Erfahren Sie, wie Sie OCI Functions verwenden.
-
Integrieren Sie OCI Functions, OCI Notifications und OCI Monitoring mit Jira Service Management.
Voraussetzungen
-
Bei OCI-Account registrieren oder anmelden.
-
Zugriff auf Jira Service Management.
-
Laden Sie die Python-Funktion hier herunter: JSM.zip.
-
(Optional) Ein technischer Benutzer für Jira Service Management.
Aufgabe 1: Virtuelles Cloud-Netzwerk erstellen
Ein virtuelles Cloud-Netzwerk (VCN) ist ein Netzwerk, das Sie in OCI definieren. Er umfasst Subnetze, Routentabellen und Gateways.
-
Klicken Sie in der oberen linken Ecke der OCI-Konsole auf das Menü "Services"
.
-
Wählen Sie unter Networking die Option Virtuelle Cloud-Netzwerke aus.
-
Klicken Sie auf der Seite Virtuelle Cloud-Netzwerke auf VCN-Assistenten starten.
-
Wählen Sie VCN mit Internetverbindung erstellen aus, und klicken Sie auf VCN-Assistenten starten.
-
Füllen Sie die VCN-Konfiguration aus, klicken Sie auf Weiter und Erstellen.
Aufgabe 2: Dynamische Gruppe erstellen
Mit dynamischen Gruppen können Sie OCI Compute-Instanzen als Principal-Akteure gruppieren (ähnlich wie Benutzergruppen).
Hinweis: Sie benötigen Administratorberechtigungen, um dynamische Gruppen zu erstellen.
-
Navigieren Sie im Menü "Services" zu Identität und Sicherheit, Identität, und klicken Sie auf Dynamische Gruppen.
-
Klicken Sie auf Dynamische Gruppe erstellen.
-
Geben Sie einen sinnvollen Namen und eine Beschreibung ein.
-
Fügen Sie im Abschnitt Regel 1 die folgende Zeile hinzu:
ALL {resource.type = 'fnfunc', resource.compartment.id = 'ocid1.compartment.oc1', instance.compartment.id = 'ocid1.compartment.oc1'}
Hinweis: Ersetzen Sie die Compartment-ID durch die gewünschte Compartment-ID.
-
Klicken Sie auf Erstellen.
Aufgabe 3: OCI-IAM-Policys erstellen
Mit Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) können Sie den Zugriff auf Ihre Cloud-Ressourcen kontrollieren. Damit diese Integration funktioniert, müssen wir den Zugriff für die Function-as-a-Service-(FaaS-)Services (Funktionsservice) auf den Vault, die Repositorys und mehrere andere Services erteilen.
-
Navigieren Sie im Menü "Services" zu Identität und Sicherheit, Identität, und klicken Sie auf Policys.
-
Klicken Sie auf Policy erstellen.
-
Geben Sie einen geeigneten Namen und eine Beschreibung ein, und wählen Sie das richtige Compartment aus. (In diesem Beispiel verwenden wir das Compartment
DEV
.) -
Aktivieren Sie im Abschnitt Policy Builder die Option Manuellen Editor anzeigen, und fügen Sie die folgenden Zeilen hinzu:
Allow service faas to read repos in tenancy Allow service faas to read secret-family in compartment DEV Allow service faas to read vaults in compartment DEV Allow service faas to use keys in compartment DEV Allow service faas to use apm-domains in compartment DEV Allow dynamic-group DGNAME to read secret-family in compartment DEV Allow dynamic-group DGNAME to read vaults in compartment DEV Allow dynamic-group DGNAME to use keys in compartment DEV
Hinweis: Ersetzen Sie den Namen der dynamischen Gruppe (
DGNAME
) und das Compartment (DEV
) durch die gewünschten Namen. -
Klicken Sie auf Erstellen.
Aufgabe 4: Repository zum Speichern der Funktion erstellen
Mit OCI Container Registry können Sie Containerimages (wie Docker-Images) in einer von Oracle verwalteten Registry speichern, freigeben und verwalten.
-
Gehen Sie zur OCI-Konsole, öffnen Sie das Servicemenü, und klicken Sie auf Entwicklerservices. Klicken Sie unter Container auf Container Registry.
-
Klicken Sie auf Repository erstellen.
-
Geben Sie im Dialogfeld Repository erstellen die gewünschten Werte für Compartment und Repository-Name an, und lassen Sie es Privat.
-
Klicken Sie auf Repository erstellen.
Aufgabe 5: Vault zum Speichern des Benutzer- und API-Tokens für die Jira Service Management-Anmeldung erstellen
Oracle Cloud Infrastructure Vault ist ein Schlüsselverwaltungsservice, der Verschlüsselungsschlüssel und Secrets für den sicheren Zugriff auf Ressourcen speichert und verwaltet.
-
Klicken Sie im Menü "Service" auf Identität und Sicherheit und Vault.
-
Klicken Sie auf Vault erstellen.
-
Wählen Sie im Dialogfeld Vault erstellen das gewünschte Compartment aus, und geben Sie einen geeigneten Namen Ihrer Wahl ein. Sie können auch wählen, ob Sie es privat machen möchten oder nicht.
Hinweis: Sie können den Vault-Typ nicht ändern, nachdem der Vault erstellt wurde.
-
Klicken Sie abschließend auf Vault erstellen.
Hinweis: Speichern Sie die Jira Service Management
api-token
undapi-user
separat im Vault.
Aufgabe 6: Anwendung erstellen
-
Öffnen Sie das Servicemenü, und klicken Sie auf Entwicklerservices. Klicken Sie unter Funktionen auf Anwendungen.
-
Klicken Sie auf Anwendung erstellen.
-
Geben Sie im Fenster Anwendung erstellen den Namen der Anwendung ein (z.B.
Jira-Ticketing
), wählen Sie das in Aufgabe 1 erstellte VCN aus, und wählen Sie das öffentliche Subnetz aus. -
Klicken Sie auf Erstellen.
Aufgabe 7: Funktion bereitstellen
Bei dieser Aufgabe wird das ZIP-Archiv verwendet, das aus dem Abschnitt "Voraussetzungen" heruntergeladen werden kann.
-
Wählen Sie die neu erstellte Anwendung in Aufgabe 6 aus der Liste aus.
-
Führen Sie in den Fenstern Anwendung die Schritte aus, die in der Option Erste Schritte unter Ressourcen verfügbar sind.
Hinweis:
-
In diesem Tutorial verwenden wir das OCI Cloud Shell-Setup.
-
Stellen Sie im 4. Schritt des Setups sicher, dass Sie den in Aufgabe 4 erstellten Repository-Namen angeben.
-
-
Wenn Sie auf Cloud Shell starten klicken, wird unten auf der Seite ein neues kleines Shell-Fenster angezeigt. Klicken Sie in der rechten oberen Ecke dieses Fensters auf das Zahnradmenü, und wählen Sie Hochladen aus.
-
Verschieben Sie die Datei
jsm-ticket-function.zip
per Drag-and-Drop, die im Home-Verzeichnis hochgeladen wird. -
Entpacken Sie das Archiv mit dem folgenden Befehl.
unzip jsm-ticket-function.zip
-
Wechseln Sie mit dem Befehl
cd jsm-ticket-function
zum Funktionsverzeichnis, und fahren Sie mit den in der OCI-Konsole beschriebenen Schritten fort.
Aufgabe 8: Funktionskonfiguration bearbeiten
Die Funktionen verfügen über einige konfigurierbare Parameter, die bearbeitet werden müssen, damit die Funktion ordnungsgemäß funktioniert.
-
Gehen Sie in der OCI-Konsole zu der in Aufgabe 6 erstellten Anwendung, und wählen Sie links unter Ressourcen die Option Funktionen aus.
-
Klicken Sie auf den Namen der Funktion jsm-ticket-function.
-
Klicken Sie unter Ressourcen auf Konfiguration. Sie können fünf Schlüssel anzeigen:
api-token
,api-user
,service_desk_id
,request_type_id
undvault_ocid
.Alle diese Schlüssel müssen mit Ihrer Konfiguration bearbeitet werden:
-
api-token: Name des Secrets aus dem Vault, in dem das API-Token des Benutzerkontos gespeichert wird, für das das Ticket erstellt wird. Weitere Informationen finden Sie unter API-Token für Ihr Atlassian-Konto verwalten.
-
api-user: Der Name des Secrets aus dem Vault war die E-Mail-Adresse des Benutzers, für den das Ticket erstellt wird, gespeichert.
-
service_desk_id: Projekt, in dem das Ticket erstellt wird.
-
request_type_id: Anforderungstyp, als den das Ticket erstellt wird (erfordert einen Titel und eine Beschreibung).
-
vault_ocid: vault_ocid, in dem die API-Token- und API-Benutzer-Secrets gespeichert werden.
Die schnelle und einfache Möglichkeit, service_desk_id und request_type_id zu erhalten, besteht darin, das Portal zu besuchen, das Sie verwenden möchten, und sich die URLs anzusehen. Beispiel: Gehen Sie zu einem Portal, und klicken Sie auf eine Anforderung zum Auslösen, und Sie sehen eine URL wie:
https://somewhere.atlassian.net/servicedesk/customer/portal/10/group/229/create/664
Die Zahlen dort sind:
- 10: Das Portal/Servicedesk.
- 229: Die Gruppe, von der die Anforderung eingeht (wird nur von der Navigation verwendet, das ist Ihnen in REST egal).
- 664: Die ID des Anforderungstyps, auf den ich geklickt habe.
-
Aufgabe 9: Funktion für ein Thema abonnieren
-
Öffnen Sie das Servicemenü, und klicken Sie auf Entwicklerservices. Klicken Sie unter Anwendungsintegration auf Benachrichtigungen.
Hinweis: Stellen Sie sicher, dass Sie sich im richtigen Compartment befinden.
-
Klicken Sie auf Thema erstellen.
-
Geben Sie einen geeigneten Namen ein, und klicken Sie auf Erstellen.
-
Nachdem das Thema erstellt wurde, wählen Sie es aus der Liste der Themen aus.
-
Wählen Sie im Fenster Themen links unter Ressourcen die Option Abonnements aus, und klicken Sie auf Abonnement erstellen.
-
Wählen Sie im Fenster Abonnement erstellen das Protokoll als Funktionen aus, und wählen Sie das Compartment, die Anwendung und die in Aufgabe 6 erstellte Funktion aus.
-
Klicken Sie auf Erstellen.
Aufgabe 10: Alarm für die gewünschte Metrik erstellen, die überwacht werden muss
Sie können mehrere Arten von Alarmen erstellen. In diesem Tutorial haben wir einen Abwesenheitsalarm gewählt.
-
Öffnen Sie das Servicemenü, und klicken Sie auf Observability and Management. Klicken Sie unter Monitoring auf Alarmdefinitionen.
-
Klicken Sie auf Alarm erstellen.
-
Geben Sie auf der Seite Alarm erstellen unter Alarm definieren die Alarmeinstellungen ein, oder aktualisieren Sie sie.
-
Wählen Sie unter Alarmbenachrichtigungen definieren das Thema aus, das in Aufgabe 9 erstellt wurde.
-
Wählen Sie unter Nachrichtenformat die Option Pretty JSON-Nachrichten senden (Raw-Text mit Zeilenumbrüchen) aus.
-
Klicken Sie auf Alarm speichern.
Verwandte Links
Danksagungen
-
Autor - Dragos Nicu (Senior Cloud Engineer)
-
Mitwirkender – Gabriel Feodorov (Senior Cloud Engineer)
Weitere Lernressourcen
Sehen Sie sich andere Übungen zu docs.oracle.com/learn an, oder greifen Sie im Oracle Learning YouTube-Channel auf weitere kostenlose Lerninhalte zu. Besuchen Sie außerdem education.oracle.com/learning-explorer, um Oracle Learning Explorer zu werden.
Die Produktdokumentation finden Sie im Oracle Help Center.
Use OCI Functions and Python to Open Tickets in Jira Service Management
F76120-03
October 2024