Free Tier: Helidon auf einer Ubuntu-Instanz einrichten

In diesem Tutorial richten Sie mit einem Oracle Cloud Infrastructure Free Tier-Account eine Ubuntu-Compute-Instanz ein. Anschließend richten Sie einen Helidon MicroProfile-(MP-)Server für Ihren Host ein.

Zu den wichtigsten Aufgaben gehören:

  • Richten Sie ein Compartment für Ihre Entwicklungsarbeit ein.
  • Installieren Sie Ihre Ubuntu Linux-Instanz, und verbinden Sie sie mit Ihrem virtuellen Cloud-Netzwerk (VCN).
    • Richten Sie ein virtuelles Cloud-Netzwerk in Oracle Cloud Infrastructure und zugehörige Netzwerkservices ein, die für die Verbindung Ihres Hosts mit dem Internet erforderlich sind.
    • Richten Sie SSH-Verschlüsselungsschlüssel für den Zugriff auf Ihren Ubuntu Linux-Server ein.
  • Konfigurieren Sie Ingress-Regeln für das VCN.
  • Installieren Sie JDK und Maven.
  • Richten Sie Helidon mit dem MicroProfile-(MP-)Server ein.
  • Erstellen Sie eine "Hello World"-Java-Anwendung.
  • Testen Sie die Anwendung.

Im Folgenden finden Sie ein vereinfachtes Diagramm des Setups für Ihre Linux-Instanz.

Ein Diagramm der Komponenten, die zum Ausführen eines Helidon MicroProfile-Servers auf Oracle Cloud Infrastructure erforderlich sind

Weitere Informationen finden Sie hier:

Bevor Sie beginnen

Um dieses Tutorial erfolgreich abzuschließen, benötigen Sie Folgendes:

Anforderungen

1. Compartment für Entwicklung einrichten

Konfigurieren Sie ein Compartment für Ihre Entwicklung.

Compartment erstellen

Erstellen Sie ein Compartment für die Ressourcen, die Sie in diesem Tutorial erstellen.

  1. Melden Sie sich bei der Oracle Cloud Infrastructure-Konsole an.
  2. Öffnen Sie das Navigationsmenü, und klicken Sie auf Identität und Sicherheit. Klicken Sie unter Identität auf Compartments.
  3. Klicken Sie auf Compartment erstellen.
  4. Geben Sie die folgenden Informationen ein:
    • Name: <your-compartment-name>
    • Beschreibung: Compartment für <your-description>.
    • Übergeordnetes Compartment: <your-tenancy>(Root)
  5. Klicken Sie auf Compartment erstellen.

Referenz: Compartment erstellen

2. Ubuntu Linux-Instanz installieren

Mit dem Workflow VM-Instanz erstellen können Sie eine neue Compute-Instanz erstellen.

Der Workflow führt bei der Installation der Instanz mehrere Schritte aus:

  • Erstellt und installiert eine Compute-Instanz mit Ubuntu Linux.
  • Erstellt ein VCN mit dem erforderlichen Subnetz und den erforderlichen Komponenten, um die Ubuntu Linux-Instanz mit dem Internet zu verbinden.
  • Erstellt ein SSH-Schlüsselpaar, mit dem Sie eine Verbindung zur Instanz herstellen können.
Installationsschritte prüfen

Um mit der Installation einer Instanz mithilfe des Workflows VM-Instanz erstellen zu beginnen, gehen Sie wie folgt vor:

Wichtig

Die angegebenen Schritte gelten für einen Free Tier-Account. Wenn Sie einen kostenpflichtigen Account verwenden, können sich die Schritte von den hier beschriebenen unterscheiden.
  1. Klicken Sie auf das Oracle Cloud-Symbol, um zur Hauptlandingpage zu gelangen.
    • Scrollen Sie nach unten zu Ressourcen starten.
    • Wählen Sie den Workflow VM-Instanz erstellen aus.
    Die Seite Compute-Instanz erstellen wird angezeigt. Die Seitenabschnitte enthalten
    • Name und Compartment
    • Platzierung
    • Sicherheit
    • Image und Form
    • Networking
    • SSH-Schlüssel hinzufügen
    • Boot-Volume
  2. Wählen Sie den Namen und das Compartment aus.

    Erste Optionen

    • Name: <name-for-the-instance>
    • Erstellen in Compartment: <your-compartment-name>

    Geben Sie einen Wert für den Namen ein, oder übernehmen Sie den Standardwert. Wählen Sie als Compartment das erstellte Compartment aus.

  3. Prüfen Sie die Einstellungen für Platzierung.
    • Übernehmen Sie die Standardwerte. Eine Availability-Domain wird Ihnen zugewiesen.

    Die Daten sehen etwa wie folgt aus:

    Availability-Domain

    • Availability-Domain: AD-1
    • Kapazitätstyp: On-Demand-Kapazität
    • Faultdomain: Auswahl der optimalen Faultdomain durch Oracle zulassen
    Hinweis

    Verwenden Sie für Free Tier für die Availability-Domain die Option "Immer kostenlos" verfügbar.
  4. Prüfen Sie die Einstellungen für Sicherheit.
    • Übernehmen Sie die Standardeinstellungen.

    Die Daten sehen etwa wie folgt aus:

    Sicherheit

    • Abgeschirmte Instanz: Deaktiviert
    • Confidential Computing: Deaktiviert
  5. Prüfen Sie die Einstellungen für Image und Ausprägung. Ändern Sie das Betriebssystemimage.
    • Klicken Sie auf bearbeiten.
    • Klicken Sie auf Image ändern.
    • Klicken Sie auf Ubuntu.
    • Wählen Sie Canonical Ubuntu 22.04 oder eine höhere Version aus.
    • Klicken Sie auf Image auswählen.
    Hinweis

    Im Folgenden finden Sie Beispieldaten für eine virtuelle AMD-Maschine. Die tatsächlichen Werte können sich davon unterscheiden.

    Image und Form

    • Image: Canonical Ubuntu 22.04
    • Image-Build: <current-build-date>
    • Ausprägung: VM.Standard.E2.1.Micro
    • OCPU: 1
    • Arbeitsspeicher (GB): 1
    • Netzwerkbandbreite (Gbit/s): 0,48
    Hinweis

    Verwenden Sie für Free Tier die Ausprägungsoption "Immer kostenlos" verfügbar.
    • Fahren Sie mit dem nächsten Abschnitt fort.
  6. Prüfen Sie die Einstellungen für Networking. Ändern Sie die Standardeinstellung wie folgt.
    • Klicken Sie auf bearbeiten.
    • Primäres Netzwerk: Wählen Sie Neues virtuelles Cloud-Netzwerk erstellen aus.
    • Name des neuen virtuellen Cloud-Netzwerks: Übernehmen Sie den generierten VCN-Namen, oder geben Sie einen eigenen Namen an.
    • Erstellen in Compartment: <your-compartment-name>.
    • Subnetz: Wählen Sie Neues öffentliches Subnetz erstellen aus.
    • Neuer Subnetzname: Übernehmen Sie den generierten Subnetznamen, oder geben Sie einen eigenen Namen an.
    • Erstellen in Compartment: <your-compartment-name>.
    • CIDR-Block: Übernehmen Sie den Standardwert (z.B. 10.0.0.0/24).
    • Öffentliche IPv4-Adresse: Übernehmen Sie den Standardwert Öffentliche IPv4-Adresse zuweisen.
    • Fahren Sie mit dem nächsten Abschnitt fort.
  7. Prüfen Sie die Einstellungen für SSH-Schlüssel hinzufügen. Übernehmen Sie die vom Workflow vorgegebenen Standardwerte.
    • Wählen Sie die Option Schlüsselpaar für mich generieren aus.
    • Klicken Sie auf Private Key speichern und Public Key speichern, um den privaten und öffentlichen SSH-Schlüssel für diese Compute-Instanz zu speichern.

    Wenn Sie Ihre eigenen SSH-Schlüssel verwenden möchten, wählen Sie eine der Optionen aus, um Ihren Public Key bereitzustellen.

    Hinweis

    Legen Sie Ihre Private- und Public-Key-Dateien an einem sicheren Speicherort ab. Sie können die Schlüssel nicht mehr abrufen, nachdem die Compute-Instanz erstellt wurde.
  8. Prüfen Sie die Einstellungen für das Boot-Volume.

    Deaktivieren Sie die Einstellung Benutzerdefinierte Boot-Volume-Größe angeben.

    Aktivieren Sie die Einstellung Verschlüsselung während der Übertragung verwenden.

    Deaktivieren Sie die Einstellung Dieses Volume mit einem von Ihnen verwalteten Schlüssel verschlüsseln.

  9. Klicken Sie auf Erstellen, um die Instanz zu erstellen. Das Provisioning des Systems kann einige Minuten dauern.
Sie haben erfolgreich eine Ubuntu Linux-Instanz erstellt.

3. Internetzugriff aktivieren

Der Assistent VM-Instanz erstellen erstellt automatisch ein VCN für Ihre VM. Fügen Sie dem Subnetz eine Ingress-Regel hinzu, um Internetverbindungen auf Port 8080 zuzulassen.

Ingress-Regel für das VCN erstellen

Führen Sie die folgenden Schritte aus, um das öffentliche Subnetz des VCN auszuwählen und die Ingress-Regel hinzuzufügen.

  1. Öffnen Sie das Navigationsmenü, und klicken Sie auf Networking, Virtuelle Cloud-Netzwerke.
  2. Wählen Sie das VCN aus, das Sie mit Ihrer Compute-Instanz erstellt haben.
  3. Wenn das neue VCN angezeigt wird, klicken Sie auf den Link für das Subnetz <your-subnet-name>.

    Die Informationen zum öffentlichen Subnetz werden unten auf der Seite mit den Sicherheitslisten angezeigt. Ein Link zur Standardsicherheitsliste für Ihr VCN wird angezeigt.

  4. Klicken Sie auf den Link Standardsicherheitsliste.

    Die Standard-Ingress-Regeln für das VCN werden angezeigt.

  5. Klicken Sie auf Ingress-Regeln hinzufügen.

    Das Dialogfeld Ingress-Regeln hinzufügen wird angezeigt.

  6. Geben Sie die folgenden Informationen für die Ingress-Regel ein.

    Geben Sie die Ingress-Regel wie folgt ein:

    • zustandslos: Aktiviert
    • Quelltyp: CIDR
    • Quell-CIDR: 0.0.0.0/0
    • IP-Protokoll: TCP
    • Quellportbereich: (leer lassen)
    • Zielportbereich: 8080
    • Beschreibung: HTTP-Verbindungen zulassen

    Klicken Sie auf Ingress-Regel hinzufügen. Jetzt sind HTTP-Verbindungen zulässig. Das VCN ist für Apache-Server konfiguriert.

  7. Klicken Sie auf Ingress-Regeln hinzufügen.
    Jetzt sind HTTP-Verbindungen zulässig. Das VCN ist für Apache-Server konfiguriert.
Sie haben erfolgreich eine Ingress-Regel erstellt, die Ihre Instanz über das Internet verfügbar macht.

4. Anwendung auf Helidon-Server ausführen

Richten Sie als Nächstes Helidon auf Ihrer Ubuntu Linux-Instanz ein.

Ubuntu-Firewall konfigurieren

So konfigurieren Sie die Ubuntu-Firewall:

  1. Öffnen Sie das Navigationsmenü, und klicken Sie auf Compute. Klicken Sie unter Compute auf Instanzen.
  2. Klicken Sie auf den Link zur Instanz, die Sie im vorherigen Schritt erstellt haben.

    Suchen Sie auf der Seite Instanzdetails im Abschnitt Primäre VNIC. Kopieren Sie die öffentliche IP-Adresse, die das System erstellt hat. Mit dieser IP-Adresse können Sie eine Verbindung zu Ihrer Instanz herstellen.

  3. Öffnen Sie das Fenster Terminal oder Eingabeaufforderung.
  4. Wechseln Sie in das Verzeichnis, in dem Sie die SSH-Verschlüsselungsschlüssel gespeichert haben, die Sie in Teil 2 erstellt haben.
  5. Stellen Sie mit diesem SSH-Befehl eine Verbindung zur Instanz her.
    ssh -i <your-private-key-file> ubuntu@<x.x.x.x>

    Da Sie den Public Key beim Erstellen der Instanz angegeben haben, werden Sie mit diesem Befehl bei der Instanz angemeldet. Sie können jetzt sudo-Befehle ausgeben, um den Server zu installieren und zu starten.

  6. Aktualisieren Sie die Firewalleinstellungen.

    Die Ubuntu-Firewall ist standardmäßig deaktiviert. Sie müssen jedoch Ihre iptables-Konfiguration aktualisieren, um HTTP-Traffic zuzulassen. Führen Sie die folgenden Befehle aus:

    iptables.
    sudo iptables -I INPUT 6 -m state --state NEW -p tcp --dport 8080 -j ACCEPT
    sudo netfilter-persistent save

    Die Befehle fügen eine Regel hinzu, um HTTP-Traffic über Port 8080 zuzulassen, und speichern die Änderungen an den iptables-Konfigurationsdateien.

OpenJDK installieren
  1. Führen Sie die folgenden Befehle aus:
    sudo apt update
    sudo apt -y install openjdk-11-jdk-headless
    java -version
  2. Legen Sie JAVA_HOME in .bashrc fest.

    Aktualisieren Sie die Datei:

    vi .bashrc

    Hängen Sie in der Datei folgenden Text an, und speichern Sie die Datei:

    # set JAVA_HOME
    export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64
  3. Aktivieren Sie den vorherigen Befehl im aktuellen Fenster.
    source ~/.bashrc
Apache Maven installieren

Führen Sie die folgenden Befehle aus:

  1. Installieren Sie Maven.
    sudo apt -y install maven
  2. Prüfen Sie die Maven-Installation.
    mvn --version
Helidon installieren

Führen Sie den folgenden Maven Archetype aus, der zunächst eine Maven-Projektvorlage erstellt. Für dieses Projekt wird folgendes Beispiel von der Helidon-Website verwendet: Kurzanleitung "Helidon MP". Führen Sie die folgenden Befehle aus:

  1. Führen Sie die Helidon Maven-Installation aus. Beispiel:
    mvn -U archetype:generate -DinteractiveMode=false \
        -DarchetypeGroupId=io.helidon.archetypes \
        -DarchetypeArtifactId=helidon-quickstart-mp \
        -DarchetypeVersion=2.2.1 \
        -DgroupId=io.helidon.examples \
        -DartifactId=helidon-quickstart-mp \
        -Dpackage=io.helidon.examples.quickstart.mp

    Der Archetype erstellt ein Maven-Projekt im aktuellen Verzeichnis. Die Ausgabe sieht in etwa folgendermaßen aus:

    [INFO] Project created from Archetype in dir: /home/ubuntu/helidon-quickstart-mp
    [INFO] BUILD SUCCESS
    Hinweis

    Informationen zur Installation der neuesten Version von Helidon MP finden Sie unter Kurzanleitung "Helidon MP".
  2. Wechseln Sie in das Verzeichnis helidon-quickstart-mp.
    cd helidon-quickstart-mp
  3. Erstellen Sie die Anwendung.
    mvn package

    Sie erhalten eine Meldung, die die erfolgreiche Erstellung bestätigt.

    [INFO] BUILD SUCCESS
  4. Führen Sie die Anwendung aus.
    java -jar target/helidon-quickstart-mp.jar
Helidon-Anwendung testen

Sie können Ihre Anwendung jetzt testen.

  1. Stellen Sie über ein neues Terminal mit Ihren SSH-Schlüsseln eine Verbindung zu Ihrer Ubuntu-Instanz her, und geben Sie dann in der Befehlszeile Folgendes ein:
    curl -X GET http://localhost:8080/greet

    Sie können den Browser auch mit der öffentlichen IP-Adresse verbinden, die der Instanz zugewiesen ist: http://<x.x.x.x>:8080/greet

    Sie sollten {"message":"Hello World!"} auf Ihrer Instanz oder in Ihrem Browser sehen.

  2. Geben Sie einen Namen für die Begrüßung ein. Geben Sie im Terminal Folgendes ein:
    curl -X GET http://localhost:8080/greet/Mike

    Geben Sie alternativ im Browser Folgendes ein: http://<x.x.x.x>:8080/greet/Mike.

    Auf Ihrer Instanz oder in Ihrem Browser wird {"message":"Hello Mike!"} angezeigt.

  3. Aktualisieren Sie die Begrüßung. Geben Sie im Terminal Folgendes ein:
    curl -X PUT -H "Content-Type: application/json" -d '{"greeting" : "Aloha"}' http://localhost:8080/greet/greeting

    Der Befehl ändert das Hello in der Nachricht in Aloha.

  4. Testen Sie die aktualisierte Begrüßung. Geben Sie in Ihrem Browser Folgendes ein: http://<x.x.x.x>:8080/greet/Mike.

    Auf Ihrer Instanz oder in Ihrem Browser wird {"message":"Aloha Mike!"} angezeigt.

  5. Geben Sie die folgenden Befehle in Ihrem Browser ein, um den Zustand und die Metriken abzurufen.
    http://<x.x.x.x>:8080/health
    http://<x.x.x.x>:8080/metrics

    Um Metriken im JSON-Format abzurufen, geben Sie im Terminal Folgendes ein:

    curl -H 'Accept: application/json' -X GET http://localhost:8080/metrics

Herzlichen Glückwunsch. Sie haben erfolgreich eine "Hello World"-Anwendung mit dem Helidon MicroProfile-Service auf Ihrer Oracle Cloud Infrastructure-Instanz erstellt.

Referenzen:

Detaillierte Informationen zu diesem Beispiel finden Sie unter Kurzanleitung "Helidon MP"

Weitere Schritte

Sie haben erfolgreich eine "Hello World"-Anwendung mit dem Helidon MicroProfile-Service auf Ihrer Oracle Cloud Infrastructure-Instanz erstellt.

Weitere Informationen zur Entwicklung mit Oracle-Produkten finden Sie auf folgenden Websites: