Perintah DBA untuk Azure Managed Instance for Apache Cassandra

Azure Managed Instance for Apache Cassandra menyediakan operasi penyebaran, penskalaan , dan manajemen otomatis untuk pusat data Apache Cassandra sumber terbuka. Otomatisasi dalam layanan harus cukup untuk banyak kasus penggunaan. Namun, artikel ini menjelaskan cara menjalankan perintah DBA secara manual saat kebutuhan muncul.

Penting

Nodetool dan perintah stabil berada dalam pratinjau publik. Fitur ini disediakan tanpa perjanjian tingkat layanan, dan tidak disarankan untuk beban kerja produksi. Untuk mengetahui informasi selengkapnya, lihat Ketentuan Penggunaan Tambahan untuk Pratinjau Microsoft Azure.

Dukungan perintah DBA

Azure Managed Instance for Apache Cassandra memungkinkan Anda menjalankan nodetool perintah dan sstable melalui Azure CLI, untuk administrasi DBA rutin. Tidak semua perintah didukung dan ada beberapa batasan. Untuk perintah yang didukung, lihat bagian di bawah ini.

Peringatan

Beberapa perintah ini dapat merusak kluster cassandra dan hanya boleh dijalankan dengan hati-hati dan setelah diuji di lingkungan non-produksi. Jika memungkinkan --dry-run , opsi harus disebarkan terlebih dahulu. Microsoft tidak dapat menawarkan SLA atau dukungan apa pun tentang masalah dengan menjalankan perintah yang mengubah konfigurasi database default dan/atau tabel.

Cara menjalankan nodetool perintah

Azure Managed Instance for Apache Cassandra menyediakan perintah Azure CLI berikut untuk menjalankan perintah DBA:

    az managed-cassandra cluster invoke-command  --resource-group  <rg>   --cluster-name <cluster> --host <ip of data node> --command-name nodetool --arguments "<nodetool-subcommand>"="" "paramerter1"="" 

Subperintaian tertentu harus berada di bagian --arguments dengan nilai kosong. Nodetool bendera tanpa nilai ada dalam formulir: "<flag>"="". Jika bendera memiliki nilai, bendera tersebut ada dalam formulir: "<flag>"="value".

Berikut adalah contoh cara menjalankan nodetool perintah tanpa bendera, dalam hal nodetool status ini perintah :

    az managed-cassandra cluster invoke-command  --resource-group  <rg>   --cluster-name <cluster> --host <ip of data node> --command-name nodetool --arguments "status"="" 

Berikut adalah contoh cara menjalankan nodetool perintah dengan bendera, dalam hal nodetool compact ini perintah :

    az managed-cassandra cluster invoke-command  --resource-group  <rg>   --cluster-name <cluster> --host <ip of data node> --command-name nodetool --arguments "compact"="" "-st"="65678794" 

Keduanya akan mengembalikan json dari formulir berikut:

    {
        "commandErrorOutput": "",
        "commandOutput": "<result>",
        "exitCode": 0
    }

Dalam kebanyakan kasus, Anda mungkin hanya memerlukan commandOutput atau exitCode. Berikut adalah contoh untuk hanya mendapatkan commandOutput:

    az managed-cassandra cluster invoke-command --query "commandOutput" --resource-group $resourceGroupName --cluster-name $clusterName --host $host --command-name nodetool --arguments getstreamthroughput=""

Cara menjalankan sstable perintah

Perintah sstable memerlukan akses baca/tulis ke direktori data cassandra dan database cassandra untuk dihentikan. Untuk mengakomodasi hal ini, dua parameter --cassandra-stop-start true tambahan dan --readwrite true perlu diberikan:

    az managed-cassandra cluster invoke-command  --resource-group  <test-rg>   --cluster-name <test-cluster> --host <ip> --cassandra-stop-start true --readwrite true  --command-name sstableutil --arguments "system"="peers"
    {
    "commandErrorOutput": "",
    "commandOutput": "Listing files...\n/var/lib/cassandra/data/system/peers-37f71aca7dc2383ba70672528af04d4f/me-1-big-CompressionInfo.db\n/var/lib/cassandra/data/system/peers-37f71aca7dc2383ba70672528af04d4f/me-1-big-Data.db\n/var/lib/cassandra/data/system/peers-37f71aca7dc2383ba70672528af04d4f/me-1-big-Digest.crc32\n/var/lib/cassandra/data/system/peers-37f71aca7dc2383ba70672528af04d4f/me-1-big-Filter.db\n/var/lib/cassandra/data/system/peers-37f71aca7dc2383ba70672528af04d4f/me-1-big-Index.db\n/var/lib/cassandra/data/system/peers-37f71aca7dc2383ba70672528af04d4f/me-1-big-Statistics.db\n/var/lib/cassandra/data/system/peers-37f71aca7dc2383ba70672528af04d4f/me-1-big-Summary.db\n/var/lib/cassandra/data/system/peers-37f71aca7dc2383ba70672528af04d4f/me-1-big-TOC.txt\n",
    "exitCode": 0
    }

Daftar perintah yang didukung sstable

Untuk informasi selengkapnya tentang setiap perintah, lihat https://cassandra.apache.org/doc/latest/cassandra/tools/sstable/index.html

  • sstableverify
  • sstablescrub
  • sstablemetadata
  • sstablelevelreset
  • sstableutil
  • sstablesplit
  • sstablerepairedset
  • sstableofflinerelevel
  • sstableexpiredblockers

Daftar perintah yang didukung nodetool

Untuk informasi selengkapnya tentang setiap perintah, lihat https://cassandra.apache.org/doc/latest/cassandra/tools/nodetool/nodetool.html

  • status
  • cleanup
  • clearsnapshot
  • compact
  • compactionhistory
  • compactionstats
  • describecluster
  • describering
  • disableautocompaction
  • disablehandoff
  • disablehintsfordc
  • drain
  • enableautocompaction
  • enablehandoff
  • enablehintsfordc
  • failuredetector
  • flush
  • garbagecollect
  • gcstats
  • getcompactionthreshold
  • getcompactionthroughput
  • getconcurrentcompactors
  • getendpoints
  • getinterdcstreamthroughput
  • getlogginglevels
  • getsstables
  • getstreamthroughput
  • gettimeout
  • gettraceprobability
  • gossipinfo
  • info
  • invalidatecountercache
  • invalidatekeycache
  • invalidaterowcache
  • listsnapshots
  • netstats
  • pausehandoff
  • proxyhistograms
  • rangekeysample
  • rebuild
  • rebuild_index - untuk penggunaan argumen "keyspace"="table indexname..."
  • refresh
  • refreshsizeestimates
  • reloadlocalschema
  • replaybatchlog
  • resetlocalschema
  • resumehandoff
  • ring
  • scrub
  • setcachecapacity - untuk penggunaan argumen "key-cache-capacity" = "<row-cache-capacity> <counter-cache-capacity>"
  • setcachekeystosave - untuk penggunaan argumen "key-cache-keys-to-save":"<row-cache-keys-to-save> <counter-cache-keys-to-save>"
  • setcompactionthreshold - untuk penggunaan argumen "<keyspace>"="<table> <minthreshold> <maxthreshold>
  • setcompactionthroughput
  • setconcurrentcompactors
  • sethintedhandoffthrottlekb
  • setinterdcstreamthroughput
  • setstreamthroughput
  • settimeout
  • settraceprobability
  • statusbackup
  • statusbinary
  • statusgossip
  • statushandoff
  • stop
  • tablehistograms
  • tablestats
  • toppartitions
  • tpstats
  • truncatehints
  • verify
  • version
  • viewbuildstatus

Langkah berikutnya