Mengelola DAX cluster - Amazon DynamoDB

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Mengelola DAX cluster

Bagian ini membahas beberapa tugas manajemen umum untuk klaster Amazon DynamoDB Accelerator DAX ().

IAMizin untuk mengelola klaster DAX

Saat Anda mengelola DAX klaster menggunakan AWS Management Console atau AWS Command Line Interface (AWS CLI), kami sangat menyarankan agar Anda mempersempit cakupan tindakan yang dapat dilakukan pengguna. Dengan demikian, Anda membantu mengurangi risiko sekaligus mengikuti prinsip hak akses paling rendah.

Diskusi berikut berfokus pada kontrol akses untuk DAX manajemenAPIs. Untuk informasi selengkapnya, lihat akselerator Amazon DynamoDB di Referensi Amazon DynamoDB. API

catatan

Untuk informasi selengkapnya tentang mengelola AWS Identity and Access Management (IAM) izin, lihat berikut ini:

Untuk DAX manajemenAPIs, Anda tidak dapat mencakup API tindakan ke sumber daya tertentu. Elemen Resource harus diatur ke "*". Ini berbeda dengan API operasi pesawat DAX data, sepertiGetItem,Query, danScan. Operasi bidang data diekspos melalui DAX klien, dan operasi tersebut dapat dicakup ke sumber daya tertentu.

Untuk mengilustrasikan, pertimbangkan dokumen IAM kebijakan berikut.

{ "Version": "2012-10-17", "Statement": [ { "Action": [ "dax:*" ], "Effect": "Allow", "Resource": [ "arn:aws:dax:us-west-2:123456789012:cache/DAXCluster01" ] } ] }

Misalkan maksud kebijakan ini adalah untuk mengizinkan API panggilan DAX manajemen untuk klaster DAXCluster01 — dan hanya klaster itu.

Sekarang anggaplah bahwa pengguna mengeluarkan AWS CLI perintah berikut.

aws dax describe-clusters

Perintah ini gagal dengan pengecualian Tidak Diotorisasi karena DescribeClusters API panggilan yang mendasarinya tidak dapat dicakup ke kluster tertentu. Meskipun kebijakan valid secara sintaksis, perintah gagal karena elemen Resource harus diatur ke "*". Namun, jika pengguna menjalankan program yang mengirim panggilan pesawat DAX data (seperti GetItem atauQuery) keDAXCluster01, panggilan tersebut berhasil. Ini karena bidang DAX data APIs dapat dicakup ke sumber daya tertentu (dalam hal ini,DAXCluster01).

Jika Anda ingin menulis satu IAM kebijakan komprehensif untuk mencakup bidang DAX manajemen APIs dan DAX dataAPIs, kami sarankan Anda menyertakan dua pernyataan berbeda dalam dokumen kebijakan. Salah satu pernyataan ini harus membahas bidang DAX dataAPIs, sedangkan pernyataan lainnya membahas DAX manajemenAPIs.

Contoh kebijakan berikut menunjukkan pendekatan ini. Perhatikan bagaimana DAXDataAPIs dicakup ke sumber daya DAXCluster01, tetapi sumber daya untuk DAXManagementAPIs harus "*". Tindakan yang ditampilkan dalam setiap pernyataan hanya sebagai ilustrasi. Anda dapat menyesuaikan semuanya sesuai kebutuhan untuk aplikasi Anda.

{ "Version": "2012-10-17", "Statement": [ { "Sid": "DAXDataAPIs", "Action": [ "dax:GetItem", "dax:BatchGetItem", "dax:Query", "dax:Scan", "dax:PutItem", "dax:UpdateItem", "dax:DeleteItem", "dax:BatchWriteItem" ], "Effect": "Allow", "Resource": [ "arn:aws:dax:us-west-2:123456789012:cache/DAXCluster01" ]}, { "Sid": "DAXManagementAPIs", "Action": [ "dax:CreateParameterGroup", "dax:CreateSubnetGroup", "dax:DecreaseReplicationFactor", "dax:DeleteCluster", "dax:DeleteParameterGroup", "dax:DeleteSubnetGroup", "dax:DescribeClusters", "dax:DescribeDefaultParameters", "dax:DescribeEvents", "dax:DescribeParameterGroups", "dax:DescribeParameters", "dax:DescribeSubnetGroups", "dax:IncreaseReplicationFactor", "dax:ListTags", "dax:RebootNode", "dax:TagResource", "dax:UntagResource", "dax:UpdateCluster", "dax:UpdateParameterGroup", "dax:UpdateSubnetGroup" ], "Effect": "Allow", "Resource": [ "*" ] } ] }

Menskalakan klaster DAX

Ada dua opsi yang tersedia untuk penskalaan DAX cluster. Pilihan pertama adalah penskalaan horizontal, dengan menambahkan replika baca ke klaster. Pilihan kedua adalah penskalaan vertikal, dengan memilih jenis simpul yang berbeda. Untuk memperoleh saran tentang cara memilih ukuran klaster dan jenis simpul yang sesuai untuk aplikasi Anda, lihat Panduan pengukuran klaster DAX.

Penskalaan horizontal

Dengan penskalaan horizontal, Anda dapat meningkatkan throughput untuk operasi baca dengan menambahkan lebih banyak replika baca ke klaster. Satu DAX cluster mendukung hingga 10 replika baca, dan Anda dapat menambahkan atau menghapus replika saat cluster sedang berjalan.

Ketika Anda menambahkan node baru, Anda harus menyinkronkan data cache dari node peer. Oleh karena itu, waktu penambahan bervariasi berdasarkan ukuran cache dan beban kerja aplikasi Anda. Sebagai praktik terbaik, kami menyarankan Anda melakukan pra-skala cluster Anda untuk memenuhi puncak lalu lintas yang diharapkan. Untuk informasi tentang pedoman ukuran kanan dan rekomendasi pemantauan, lihat. Panduan pengukuran klaster DAX

AWS CLI Contoh berikut menunjukkan cara menambah atau mengurangi jumlah node. Argumen --new-replication-factor menentukan jumlah total simpul di klaster. Salah satu simpul adalah simpul primer, dan simpul lainnya adalah replika baca.

aws dax increase-replication-factor \ --cluster-name MyNewCluster \ --new-replication-factor 5
aws dax decrease-replication-factor \ --cluster-name MyNewCluster \ --new-replication-factor 3
catatan

Status klaster berubah menjadi modifying ketika Anda mengubah faktor replikasi. Status berubah menjadi available ketika modifikasi selesai.

Penskalaan vertikal

Jika Anda memiliki set data kerja yang besar, mungkin akan lebih bermanfaat jika aplikasi Anda menggunakan jenis simpul yang lebih besar. Simpul yang lebih besar memungkinkan klaster menyimpan lebih banyak data dalam memori, mengurangi cache miss, dan meningkatkan performa penerapan aplikasi secara keseluruhan. (Semua node dalam DAX cluster harus dari jenis yang sama.)

Jika DAX klaster Anda memiliki tingkat operasi tulis yang tinggi atau kesalahan cache, aplikasi Anda mungkin juga mendapat manfaat dari penggunaan tipe node yang lebih besar. Operasi tulis dan cache miss menggunakan sumber daya pada simpul primer klaster. Oleh karena itu, menggunakan jenis simpul yang lebih besar mungkin akan meningkatkan performa simpul primer dan memungkinkan throughput yang lebih tinggi untuk jenis operasi ini.

Anda tidak dapat memodifikasi tipe node pada DAX cluster yang sedang berjalan. Sebagai gantinya, Anda harus membuat klaster baru dengan jenis simpul yang diinginkan. Untuk daftar jenis simpul yang didukung, lihat Simpul.

Anda dapat membuat DAX cluster baru menggunakan AWS Management ConsoleAWS CloudFormation,, AWS CLI, atau AWS SDK. (Untuk AWS CLI, gunakan --node-type parameter untuk menentukan jenis node.)

Menyesuaikan pengaturan DAX cluster

Saat Anda membuat DAX cluster, pengaturan default berikut digunakan:

  • Penggusuran cache otomatis diaktifkan dengan Time to Live (TTL) selama 5 menit

  • Tidak ada preferensi untuk Zona Ketersediaan

  • Tidak ada preferensi untuk periode pemeliharaan

  • Notifikasi dinonaktifkan

Untuk klaster baru, Anda dapat menyesuaikan pengaturan pada saat pembuatan. Untuk melakukannya di AWS Management Console, hapus Gunakan pengaturan default untuk mengubah pengaturan berikut:

  • Jaringan dan Keamanan —Memungkinkan Anda menjalankan node DAX cluster individual di Availability Zone yang berbeda dalam AWS Wilayah saat ini. Jika Anda memilih Tidak Ada Preferensi, simpul akan didistribusikan di antara Zona Ketersediaan secara otomatis.

  • Grup Parameter—set parameter bernama yang diterapkan untuk setiap simpul di klaster. Anda dapat menggunakan grup parameter untuk menentukan TTL perilaku cache. Anda dapat mengubah nilai dari setiap parameter yang diberikan dalam grup parameter (kecuali grup parameter default default.dax.1.0) kapan pun.

  • Periode Pemeliharaan—Adalah periode waktu mingguan untuk menerapkan peningkatan dan patch perangkat lunak ke simpul dalam klaster. Anda dapat memilih hari mulai, waktu mulai, dan durasi periode pemeliharaan. Jika Anda memilih Tidak Ada Preferensi, jendela pemeliharaan dipilih secara acak dari blok waktu 8 jam per Wilayah. Untuk informasi selengkapnya, lihat Periode pemeliharaan.

catatan

Grup Parameter dan Periode Pemeliharaan juga dapat diubah kapan pun pada klaster yang berjalan.

Ketika peristiwa pemeliharaan terjadi, DAX dapat memberi tahu Anda menggunakan Amazon Simple Notification Service (AmazonSNS). Untuk mengonfigurasi notifikasi, pilih opsi dari Topik untuk pemilih SNS notifikasi. Anda dapat membuat SNS topik Amazon baru, atau menggunakan topik yang sudah ada.

Untuk informasi selengkapnya tentang menyiapkan dan berlangganan SNS topik Amazon, lihat Memulai Amazon SNS di Panduan Pengembang Layanan Pemberitahuan Sederhana Amazon.

Mengkonfigurasi pengaturan TTL

DAXmemelihara dua cache untuk data yang dibaca dari DynamoDB:

  • Cache item—Untuk item yang diambil menggunakan GetItem atau BatchGetItem.

  • Cache kueri—Untuk set hasil yang diambil menggunakan Query atau Scan.

Untuk informasi selengkapnya, silakan lihat Cache item dan Cache kueri.

Default TTL untuk masing-masing cache ini adalah 5 menit. Jika Anda ingin menggunakan TTL pengaturan yang berbeda, Anda dapat meluncurkan DAX cluster menggunakan grup parameter kustom. Untuk melakukan ini di konsol, pilih DAX| Grup parameter di panel navigasi.

Anda juga dapat melakukan tugas ini menggunakan AWS CLI. Contoh berikut menunjukkan cara meluncurkan DAX cluster baru menggunakan grup parameter kustom. Dalam contoh ini, cache item TTL diatur ke 10 menit, dan cache kueri TTL diatur ke 3 menit.

  1. Buat grup parameter baru.

    aws dax create-parameter-group \ --parameter-group-name custom-ttl
  2. Atur cache item TTL ke 10 menit (600000 milidetik).

    aws dax update-parameter-group \ --parameter-group-name custom-ttl \ --parameter-name-values "ParameterName=record-ttl-millis,ParameterValue=600000"
  3. Atur cache kueri TTL ke 3 menit (180000 milidetik).

    aws dax update-parameter-group \ --parameter-group-name custom-ttl \ --parameter-name-values "ParameterName=query-ttl-millis,ParameterValue=180000"
  4. Verifikasi bahwa parameter telah diatur dengan benar.

    aws dax describe-parameters --parameter-group-name custom-ttl \ --query "Parameters[*].[ParameterName,Description,ParameterValue]"

Anda sekarang dapat meluncurkan DAX cluster baru dengan grup parameter ini.

aws dax create-cluster \ --cluster-name MyNewCluster \ --node-type dax.r3.large \ --replication-factor 3 \ --iam-role-arn arn:aws:iam::123456789012:role/DAXServiceRole \ --parameter-group custom-ttl
catatan

Anda tidak dapat memodifikasi grup parameter yang sedang digunakan oleh DAX instance yang sedang berjalan.

Dukungan penandaan untuk DAX

Banyak AWS layanan, termasuk DynamoDB, mendukung penandaan — kemampuan untuk memberi label sumber daya dengan nama yang ditentukan pengguna. Anda dapat menetapkan tag ke DAX cluster, memungkinkan Anda untuk dengan cepat mengidentifikasi semua AWS sumber daya Anda yang memiliki tag yang sama, atau untuk mengkategorikan AWS tagihan Anda dengan tag yang Anda tetapkan.

Untuk informasi selengkapnya, lihat Menambahkan tag dan label ke sumber daya di DynamoDB.

Menggunakan AWS Management Console

Untuk mengelola tag DAX klaster
  1. Buka konsol DynamoDB di. https://console.aws.amazon.com/dynamodb/

  2. Di panel navigasi, di bawah DAX, pilih Cluster.

  3. Pilih klaster yang ingin Anda gunakan.

  4. Pilih tab Tanda. Anda dapat menambahkan, mencantumkan, mengedit, atau menghapus tanda di sini.

    Jika pengaturan sudah sesuai keinginan Anda, pilih Terapkan Perubahan.

Menggunakan AWS CLI

Saat Anda menggunakan tag AWS CLI to manage DAX cluster, Anda harus terlebih dahulu menentukan Amazon Resource Name (ARN) untuk klaster. Contoh berikut menunjukkan bagaimana menentukan ARN untuk cluster bernamaMyDAXCluster.

aws dax describe-clusters \ --cluster-name MyDAXCluster \ --query "Clusters[*].ClusterArn"

Dalam output, ARN akan terlihat mirip dengan ini: arn:aws:dax:us-west-2:123456789012:cache/MyDAXCluster

Contoh berikut menunjukkan cara menandai klaster.

aws dax tag-resource \ --resource-name arn:aws:dax:us-west-2:123456789012:cache/MyDAXCluster \ --tags="Key=ClusterUsage,Value=prod"

Daftar semua tanda untuk klaster.

aws dax list-tags \ --resource-name arn:aws:dax:us-west-2:123456789012:cache/MyDAXCluster

Untuk menghapus tanda, tentukan kuncinya.

aws dax untag-resource \ --resource-name arn:aws:dax:us-west-2:123456789012:cache/MyDAXCluster \ --tag-keys ClusterUsage

AWS CloudTrail integrasi

DAXterintegrasi dengan AWS CloudTrail, memungkinkan Anda untuk mengaudit aktivitas DAX klaster. Anda dapat menggunakan CloudTrail log untuk melihat semua perubahan yang telah dibuat di tingkat cluster. Anda juga dapat melihat perubahan untuk komponen klaster seperti simpul, grup subnet, dan grup parameter. Untuk informasi selengkapnya, lihat Pencatatan log operasi DynamoDB menggunakan AWS CloudTrail.

Menghapus cluster DAX

Jika Anda tidak lagi menggunakan DAX cluster, Anda harus menghapusnya agar tidak dikenakan biaya untuk sumber daya yang tidak digunakan.

Anda dapat menghapus DAX cluster menggunakan konsol atau file AWS CLI. Berikut adalah contohnya.

aws dax delete-cluster --cluster-name mydaxcluster