Vorheriges Thema: WS_API – Webservices-API-AnwendungNächstes Thema: Systemanwendungen


WS_API_SAMPLE – Webservices-API-Beispielanwendung

Aktuelle Version: 1.0.7-1

In der WS_API_SAMPLE-Anwendung wird anhand eines Beispiels gezeigt, wie Sie eine einfache Portalanwendung erstellen, die auf die CA AppLogic®-Webdienst-API-Anwendung (WS_API) zugreift. Diese Anwendung unterstützt Portal- und Anwendungsentwickler, die Web-API-Anfragen an eine Instanz der WS_API-Anwendung ausgeben, die in einem CA AppLogic®-Grid ausgeführt wird.

Begrenzung

Eigenschaftsname

Typ

Description

iface.in

Schnittstelle

Dies ist die IP-Adresse, an der Benutzer auf das WS_API_SAMPLE-Portal zugreifen können. Diese Eigenschaft ist obligatorisch.

iface.net

Schnittstelle

Dies ist die IP-Adresse, die von der WS_API_SAMPLE-Anwendung verwendet wird, um HTTP- oder HTTPS-basierte Anfragen an die WS_API-Anwendung auszugeben. Diese Eigenschaft ist obligatorisch.

iface.vpn

Schnittstelle

Dies ist die IP-Adresse, die von der WS_API_SAMPLE-Anwendung verwendet wird, um HTTP--basierte Anfragen über einen sicheren VPN-Tunnel an die WS_API-Anwendung auszugeben. Diese Eigenschaft ist obligatorisch.

dns1

IP

IP-Adresse eines DNS-Servers für Hostnamenauflösungen. Diese Eigenschaft ist obligatorisch.

dns2

IP

IP-Adresse eines DNS-Backupservers für Hostnamenauflösungen. Standard: 0.0.0.0.

api_ports

Zeichenfolge

Durch Kommas getrennte Liste der Ports, an denen auf die WS_API_SAMPLE-Anwendung zugegriffen werden kann. Standard: leer

allowed_hosts

Zeichenfolge

Zulässige IP-Adresse oder Bereich von IP-Adressen im CIDR-Format, die auf WS_API_SAMPLE zugreifen können. Standard: 0.0.0.0/0; (alle zulassen)

Wichtig! Die IP-Adressen, die in den Eigenschaften "iface.vpn", "iface.in" und "iface.net" konfiguriert sind, müssen IP-Adressen sein, die auf Ihrem CA AppLogic®-Grid verfügbar sind. Sie finden sie zusammen mit den DNS-Servern auf dem Dashboard Ihres Grid.

Ressourcen

Ressourcen

Min.

Max.

Standard

CPU

0.45

72

1.05

Speicher

704 MB

132 GB

1,343 GB

Bandbreite

6 Mbit/s

12 Gbit/s

1,151 Gbit/s

Volumes

Die BackupHelper-Anwendung verwendet das folgende Volume:

Volume

Description

content

Dateisystem, das Skripte, Protokolle und die Webschnittstelle enthält. Dieses Volume sollte nicht geändert werden.

Übersicht

Die WS_API_SAMPLE-Anwendung muss so konfiguriert werden, dass sie auf die Instanz von WS_API zugreift, die in einem CA AppLogic®-Grid ausgeführt wird. Starten Sie vor dem Aufruf dieser Anwendung eine Instanz der WS_API-Anwendung, wie im Folgenden erläutert. Die WS_API_SAMPLE-Anwendung kann anschließend unter Berücksichtigung der Eigenschaften konfiguriert werden, die in der Instanz der WS_API-Anwendung festgelegt wurden.

So konfigurieren Sie WS_API_SAMPLE

  1. Bearbeiten Sie das Portalskript im Unterverzeichnis "bin" des Portal-Volumes der Anwendung, und legen Sie für die IP-Variable in dem Skript Folgendes fest:
  2. Legen Sie die IP-Variable "iface.in" fest, um HTTP- oder HTTPS-basierte Anfragen an die WS_API-Anwendung auszugeben. Legen Sie sie auf "aux" fest, um HTTP-basierte Anfragen über einen VPN-Tunnel auszugeben.
  3. Bearbeiten Sie die VDC-Informationen, sodass diese mit der Datei "vdcs.conf" in der WS_API-Anwendung übereinstimmen. Beispiel:
    # EDIT VDC info here
    <p>
    <label for="location">Select Location: </label>
    <select name="location">
    <option value="dallas">Dallas, TX, USA</option>
    <option value="sandiego">San Diego, CA, USA</option>
    <option value="japan">Tokyo, Japan</option>
    <option value="netherlands">Amsterdam, Netherlands</option>
    </select>
    </p>
    Durch obigen Code wechseln Sie zu VDCs, die in der WS_API-Anwendung konfiguriert sind. Wenn "mygrid1" und "mygrid2" zwei VDCs sind, die in Dallas und San Diego ausgeführt werden, muss der obige HTML-Code wie folgt geändert werden: 
    # EDIT VDC info here
    <p>
    <label for="location">Select Location: </label>
    <select name="location">
    <option value="mygrid1">Dallas, TX, USA</option>
    <option value="mygrid2">San Diego, CA, USA</option>
    </select>
    </p>
    

Die WS_API_SAMPLE-Anwendung kann für die Ausführung in einem der folgenden Modi konfiguriert werden:

HTTP verwenden

In diesem Modus verwendet das Portal eine reguläre HTTP-basierte Schnittstelle, um API-Anfragen an die Instanz der WS_API-Anwendung auszugeben.
Beispiel: curl "http://iface.in/api/v1/app/list?vdc=mygrid1".

HTTPS verwenden

In diesem Modus verwendet das Portal eine sichere HTTP-basierte Schnittstelle (HTTPS), um API-Anfragen an die Instanz der WS_API-Anwendung auszugeben. Um dies zu ermöglichen, muss der Schlüssel "api_client.pem" in das Unterverzeichnis "keys" auf dem Portal-Volume der WS_API_SAMPLE-Anwendung kopiert werden.
Beispiel: curl -k -E /mnt/fs/keys/api_client.pem "https://iface.in/api/v1/app/list?vdc=mygrid1".

Verwenden eines VPN-Tunnels

In diesem Modus verwendet das Portal eine reguläre HTTP-basierte Schnittstelle, um API-Anfragen an die Instanz der WS_API-Anwendung über einen sicheren VPN-Tunnel auszugeben. Um den Tunnel zu erstellen, kopieren Sie die Dateien "client.xxxxxxxxxxxxxxxxxxxxxxxxx.key", "client.xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx.crt" und "ca.crt", die im Unterverzeichnis "server" des vpn_key-Volumes in der Instanz der WS_API-Anwendung generiert wurden, in das Unterverzeichnis "client" auf dem vpn_key-Volume der WS_API_SAMPLE-Anwendung. Ein sicherer Tunnel wird erstellt, sobald die out_vpn-Komponente gestartet wird.
Beispiel: curl "http://aux/api/v1/app/list?vdc=mygrid1".

Um in einem Webbrowser auf das Portal zuzugreifen, wechseln Sie in dem Browser zu http://iface.in/api/portal.

Anwendungsarchitektur

Die WS_API_SAMPLE-Anwendungsinfrastruktur der CA AppLogic®-Webdienste ist nachfolgend dargestellt:

Es umfasst die folgenden Komponenten:

API-Beispielanwendung

Hinweise

Verwendete Open-Source- und Drittanbieter-Software

Auf dem portal-Volume wird die folgende Open-Source- bzw. Drittanbieter-Software installiert.

Software

Version

Geändert

Lizenz

Hinweise

JSON

2.15

Nein

Artistic

N/A

IPC-Run

0.80

Nein

GPLv2

N/A

XML-Simple

2.18

Nein

Artistic

N/A

Sort-Naturally

1.02

Nein

Artistic

N/A