Amazon RDS - Antarmuka
Antarmuka RDS adalah cara untuk mengakses layanan RDS yang kami buat. Setelah pembuatan dan konfigurasi layanan RDS ada kebutuhan untuk mengakses data, mengunggah data ke database ini dan menjalankan beberapa program lain yang seharusnya dapat terhubung ke database. Persyaratan mengakses dan memanipulasi data oleh pengguna akhir database dan belum tentu pemegang akun AWS yang membuat database membutuhkan antarmuka ini.
Ada tiga antarmuka utama.
Ini adalah antarmuka yang paling sederhana di mana pengguna dapat masuk melalui browser web dan mulai menggunakan layanan DB. Sisi negatif dari akses tersebut adalah, diperlukan manusia untuk berinteraksi dengan layanan RDS dan kami tidak dapat menjalankan program database untuk melakukan beberapa tugas rutin seperti - membuat cadangan atau menganalisis DB, dll.
Ini juga disebut akses CLI di mana Anda dapat menjalankan perintah DB melalui layar prompt perintah AWS yang seharusnya telah diinstal di komputer klien yang Anda gunakan. Berikut adalah langkah-langkah untuk menginstal CLI di sistem lokal Anda yang akan digunakan untuk mengakses layanan AWS.
Langkah-langkah untuk menginstal AWS CLI adalah sebagai berikut.
Langkah 1
Periksa versi python di lingkungan Anda.
ubuntu@ubuntu:~$ python -V
ubuntu@ubuntu:~$ python3 -V
Ketika kami menjalankan program di atas, kami mendapatkan output berikut -
Python 2.7.12
Python 3.5.2
Jika versinya kurang dari 2.6 atau 3.3, maka Anda perlu mengupgrade versi python di sistem Anda.
Langkah 2
Periksa ketersediaan paket python bernama pip. Ini akan diperlukan untuk menginstal AWS CLI.
Pip -V
Ketika kami menjalankan program di atas, kami mendapatkan output berikut -
pip 10.0.1 from /home/ubuntu/.local/lib/python3.5/site-packages/pip (python 3.5)
Langkah -3
Terbitkan perintah berikut untuk menginstal AWS CLI.
pip install awscli –upgrade –user
aws --version
Ketika kami menjalankan program di atas, kami mendapatkan output berikut -
Aws-cli/1.11.84 Python/3.6.2 Linux/4.4.0
Langkah-4
Selanjutnya kita mengkonfigurasi CLI aws dengan kredensial. Kami mengeluarkan perintah ini dan kemudian memasukkan nilai yang diperlukan satu per satu.
aws configure
Ketika kami menjalankan program di atas, kami mendapatkan output berikut -
AWS Access Key ID [None]: ****PLE
AWS Secret Access Key [None]: ********8
Default region name [None]: us-west-2
Default output format [None]: json
Dengan konfigurasi di atas, Anda sekarang siap menggunakan CLI untuk berkomunikasi dengan lingkungan AWS untuk menyiapkan dan menggunakan amazon RDS. Dalam bab-bab selanjutnya kita akan melihat bagaimana kita bisa melakukannya.
Amazon Relational Database Service (Amazon RDS) juga menyediakan antarmuka pemrograman aplikasi (API). API digunakan ketika informasi dipertukarkan antara sistem daripada manusia yang mengeluarkan perintah dan menerima hasilnya. Misalnya, jika Anda ingin mengotomatiskan penambahan instans database ke layanan RDS ketika jumlah transaksi mencapai ambang tertentu, Anda menggunakan AWS SDK untuk menulis program yang akan memantau jumlah transaksi database dan melakukan spin-off RDS. Misalnya ketika kondisi yang dibutuhkan terpenuhi.
Di bawah ini adalah contoh kode API yang membuat salinan snapshot DB. Ini adalah program python yang menggunakan sdk AWS bernama boto3. Pustaka klien di boto3 memiliki metode bernama copy_db_snapshot yang dipanggil oleh program python untuk membuat salinan snapshot DB dengan parameter yang diperlukan seperti yang ditunjukkan.
import boto3
client = boto3.client('rds')
response = client.copy_db_snapshot(
SourceDBSnapshotIdentifier='mydbsnapshot',
TargetDBSnapshotIdentifier='mydbsnapshot-copy',
)
print(response)
Ketika program di atas dijalankan kita mendapatkan respon yang menggambarkan berbagai properti dari event copy. Di sini istilah string mewakili berbagai nama parameter yang ditentukan oleh pengguna untuk lingkungannya. Misalnya VpcID mewakili ID vpc tempat terjadinya tindakan penyalinan.
{
'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'
},
]
}
}