Amazon RDS - Schnittstellen

Über die RDS-Schnittstellen können Sie auf den von uns erstellten RDS-Dienst zugreifen. Nach der Erstellung und Konfiguration des RDS-Dienstes müssen Sie auf die Daten zugreifen, Daten in diese Datenbank hochladen und ein anderes Programm ausführen, das eine Verbindung zur Datenbank herstellen kann. Solche Anforderungen an den Zugriff auf und die Bearbeitung von Daten durch Endbenutzer der Datenbank und nicht unbedingt durch den AWS-Kontoinhaber, der die Datenbank erstellt hat, benötigen diese Schnittstellen.

Es gibt drei Hauptschnittstellen.

Dies ist die einfachste der Schnittstellen, über die sich der Benutzer über einen Webbrowser anmelden und die DB-Dienste verwenden kann. Der Nachteil eines solchen Zugriffs ist, dass ein Mensch für die Interaktion mit den RDS-Diensten erforderlich ist und wir kein Datenbankprogramm ausführen können, um einige reguläre Aufgaben wie das Sichern oder Analysieren der Datenbank usw. auszuführen.

Es wird auch als CLI-Zugriff bezeichnet, bei dem Sie den DB-Befehl über den AWS-Eingabeaufforderungsbildschirm ausführen können, der auf dem von Ihnen verwendeten Clientcomputer installiert sein sollte. Im Folgenden finden Sie die Schritte zum Installieren der CLI in Ihrem lokalen System, mit denen Sie auf AWS-Services zugreifen können.

Die Schritte zum Installieren von AWS CLI sind wie folgt.

Schritt 1

Suchen Sie in Ihrer Umgebung nach der Python-Version.

ubuntu@ubuntu:~$ python -V
ubuntu@ubuntu:~$ python3 -V

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe:

Python 2.7.12 
Python 3.5.2

Wenn die Version kleiner als 2.6 oder 3.3 ist, müssen Sie die Python-Version in Ihrem System aktualisieren.

Schritt 2

Überprüfen Sie die Verfügbarkeit des Python-Pakets pip. Es wird benötigt, um AWS CLI zu installieren.

Pip -V

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe:

pip 10.0.1 from /home/ubuntu/.local/lib/python3.5/site-packages/pip (python 3.5)

Schritt 3

Geben Sie den folgenden Befehl ein, um die AWS-CLI zu installieren.

pip install awscli –upgrade –user
aws --version

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe:

Aws-cli/1.11.84 Python/3.6.2 Linux/4.4.0

Schritt 4

Als nächstes konfigurieren wir die aws-CLI mit Anmeldeinformationen. Wir geben diesen Befehl aus und geben dann die erforderlichen Werte nacheinander ein.

aws configure

Wenn wir das obige Programm ausführen, erhalten wir die folgende Ausgabe:

AWS Access Key ID [None]: ****PLE
AWS Secret Access Key [None]: ********8
Default region name [None]: us-west-2
Default output format [None]: json

Mit der obigen Konfiguration können Sie jetzt CLI für die Kommunikation mit AWS-Umgebungen zum Einrichten und Verwenden von Amazon RDS verwenden. In den nächsten Kapiteln werden wir sehen, wie wir das tun können.

Der Amazon Relational Database Service (Amazon RDS) bietet auch eine API (Application Programming Interface). APIs werden verwendet, wenn die Informationen zwischen den Systemen ausgetauscht werden, anstatt dass ein Mensch die Befehle ausgibt und das Ergebnis empfängt. Wenn Sie beispielsweise das Hinzufügen von Datenbankinstanzen zu einem RDS-Dienst automatisieren möchten, wenn die Anzahl der Transaktionen einen bestimmten Schwellenwert erreicht, verwenden Sie ein AWS SDK, um ein Programm zu schreiben, das die Anzahl der Datenbanktransaktionen überwacht und ein RDS ausgliedert Instanz, wenn die erforderliche Bedingung erfüllt ist.

Unten finden Sie ein Beispiel für API-Code, mit dem eine Kopie eines DB-Snapshots erstellt wird. Es ist ein Python-Programm, das AWS SDK mit dem Namen boto3 verwendet. Die Clientbibliothek in boto3 verfügt über eine Methode namens copy_db_snapshot, die vom Python-Programm aufgerufen wird, um eine Kopie des DB-Snapshots mit den erforderlichen Parametern wie gezeigt zu erstellen.

import boto3

client = boto3.client('rds')

response = client.copy_db_snapshot(
    SourceDBSnapshotIdentifier='mydbsnapshot',
    TargetDBSnapshotIdentifier='mydbsnapshot-copy',
)

print(response)

Wenn das obige Programm ausgeführt wird, erhalten wir die Antwort, die die verschiedenen Eigenschaften des Kopierereignisses beschreibt. Hier repräsentiert der Begriff Zeichenfolge die verschiedenen Namen von Parametern, die vom Benutzer für seine Umgebung definiert werden. Beispielsweise repräsentiert VpcID die ID des vpc, in dem die Kopieraktion ausgeführt wird.

{
    'DBSnapshot': {
        'DBSnapshotIdentifier': 'string',
        'DBInstanceIdentifier': 'string',
        'SnapshotCreateTime': datetime(2015, 1, 1),
        'Engine': 'string',
        'AllocatedStorage': 123,
        'Status': 'string',
        'Port': 123,
        'AvailabilityZone': 'string',
        'VpcId': 'string',
        'InstanceCreateTime': datetime(2015, 1, 1),
        'MasterUsername': 'string',
        'EngineVersion': 'string',
        'LicenseModel': 'string',
        'SnapshotType': 'string',
        'Iops': 123,
        'OptionGroupName': 'string',
        'PercentProgress': 123,
        'SourceRegion': 'string',
        'SourceDBSnapshotIdentifier': 'string',
        'StorageType': 'string',
        'TdeCredentialArn': 'string',
        'Encrypted': True|False,
        'KmsKeyId': 'string',
        'DBSnapshotArn': 'string',
        'Timezone': 'string',
        'IAMDatabaseAuthenticationEnabled': True|False,
        'ProcessorFeatures': [
            {
                'Name': 'string',
                'Value': 'string'
            },
        ]
    }
}