Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Azure Managed Instance for Apache Cassandra to w pełni zarządzana usługa dla czystych klastrów Apache Cassandra typu open source. Usługa umożliwia również zastępowanie konfiguracji w zależności od konkretnych potrzeb każdego obciążenia. Ta funkcja umożliwia maksymalną elastyczność i kontrolę w razie potrzeby. W tym artykule opisano sposób ręcznego uruchamiania poleceń administratora bazy danych (DBA) w razie potrzeby.
Ważne
Polecenia nodetool i sstable są w publicznej wersji zapoznawczej.
Ta funkcja jest udostępniana bez umowy dotyczącej poziomu usług (SLA). Nie zalecamy korzystania z tej funkcji w przypadku obciążeń produkcyjnych. Aby uzyskać więcej informacji, zobacz Uzupełniające warunki korzystania z wersji zapoznawczych platformy Microsoft Azure.
Obsługa poleceń administratora bazy danych
Za pomocą usługi Azure Managed Instance for Apache Cassandra można uruchamiać polecenia nodetool i sstable za pomocą interfejsu wiersza polecenia platformy Azure w celu rutynowego administrowania bazą danych. Nie wszystkie polecenia są obsługiwane i istnieją pewne ograniczenia. Aby uzyskać obsługiwane polecenia, zobacz następujące sekcje.
Ostrzeżenie
Niektóre z tych poleceń mogą zdestabilizować klaster Cassandra. Te polecenia należy używać dokładnie i po przetestowaniu w środowiskach nieprodukcyjnych. Jeśli to możliwe, najpierw wdróż --dry-run opcję. Firma Microsoft nie oferuje żadnej umowy SLA ani obsługi problemów, które wynikają z uruchamiania poleceń, które zmieniają domyślną konfigurację bazy danych lub tabele.
Uruchamianie polecenia nodetool
Wystąpienie zarządzane platformy Azure dla usługi Apache Cassandra udostępnia następujące polecenie interfejsu wiersza polecenia platformy Azure do uruchamiania poleceń administratora bazy danych:
az managed-cassandra cluster invoke-command --resource-group <rg> \
--cluster-name <cluster> --host <ip of data node> --command-name nodetool \
--arguments "<nodetool-subcommand>"="" "paramerter1"=""
Podpolecenie musi znajdować się w sekcji --arguments z pustą wartością. Flagi nodetool bez wartości mają postać <flag>"=". Jeśli flaga ma wartość, jest w formacie <flag>"="value.
W tym przykładzie pokazano, jak uruchomić nodetool polecenie bez flag. W tym przypadku jest to polecenie nodetool status
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name nodetool --arguments "status"=""
Ten przykład pokazuje, jak uruchomić polecenie nodetool z flagą. W tym przypadku polecenie nodetool compact to:
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name nodetool --arguments "compact"="" "-st"="65678794"
Oba zwracają dane JSON w następującym formacie.
{
"commandErrorOutput": "",
"commandOutput": "<result>",
"exitCode": 0
}
W większości przypadków potrzebujesz tylko commandOutput lub exitCode. W tym przykładzie pokazano, jak uzyskać tylko commandOutput:
az managed-cassandra cluster invoke-command --query "commandOutput" --resource-group $resourceGroupName \
--cluster-name $clusterName --host $host --command-name nodetool --arguments getstreamthroughput=""
Uruchom polecenie sstable
Polecenia sstable wymagają dostępu do odczytu/zapisu do katalogu danych Cassandra i bazy danych Cassandra do zatrzymania. Aby spełnić to wymaganie, określ następujące dwa parametry: --cassandra-stop-start true i --readwrite true.
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
}
Uruchamianie innych poleceń
Polecenie cassandra-reset-password umożliwia użytkownikowi zmianę hasła dla bazy danych Cassandra.
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name cassandra-reset-password --arguments password="<password>"
Hasło jest zakodowane w adresie URL (UTF-8) w tym poleceniu, co oznacza, że mają zastosowanie następujące reguły:
- Znaki alfanumeryczne od
adoz, odAdoZoraz od0do9pozostają takie same. - Znaki
.specjalne ,-,*i_pozostają takie same. - Znak spacji jest konwertowany na znak plus (
+). - Wszystkie inne znaki są niebezpieczne i są najpierw konwertowane na co najmniej jeden bajt przy użyciu schematu kodowania. Trzyznakowy ciąg
%xyreprezentuje każdy bajt, gdziexyjest dwucyfrową szesnastkową reprezentacją bajtu.
Polecenie cassandra-reset-auth-replication umożliwia użytkownikowi zmianę schematu użytkownika cassandra. Rozdziel nazwy centrów danych spacją.
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name cassandra-reset-auth-replication \
--arguments password="<datacenters>"
Centra danych są kodowane przy użyciu kodowania URL (UTF-8) w momencie przekazania tego polecenia, co oznacza, że mają zastosowanie następujące reguły.
- Znaki alfanumeryczne od
adoz, odAdoZ, oraz od0do9pozostają takie same. - Znaki
.specjalne ,-,*i_pozostają takie same. - Znak spacji jest konwertowany na znak plus (
+). - Wszystkie inne znaki są niebezpieczne i są najpierw konwertowane na co najmniej jeden bajt przy użyciu schematu kodowania. Trzyliterowy ciąg
%xyreprezentuje każdy bajt, gdziexyjest dwucyfrową szesnastkową reprezentacją bajtu.
Polecenie sstable-tree umożliwia użytkownikowi wyświetlenie ich tabel SSTables.
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name sstable-tree
Polecenie sstable-delete umożliwia użytkownikowi usunięcie tabel SSTable, które zostały wykonane przed upływem określonego czasu.
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name sstable-delete --arguments datetime="<YYYY-MM-DD hh:mm:ss>"
datetime Argument musi być sformatowany, jak pokazano w przykładzie. Możesz również dodać --dry-run="" jako argument, aby zobaczyć, które pliki usuwa polecenie.
Lista obsługiwanych poleceń sstable
Aby uzyskać więcej informacji na temat każdego polecenia, zobacz narzędzia SSTable.
sstableverifysstablescrubsstablemetadatasstablelevelresetsstableutilsstablesplitsstablerepairedsetsstableofflinerelevelsstableexpiredblockers
Lista obsługiwanych poleceń nodetool
Aby uzyskać więcej informacji na temat każdego polecenia, zobacz Use nodetool (Używanie narzędzia nodetool).
statuscleanupclearsnapshotcompactcompactionhistorycompactionstatsdescribeclusterdescriberingdisableautocompactiondisablehandoffdisablehintsfordcdrainenableautocompactionenablehandoffenablehintsfordcfailuredetectorflushgarbagecollectgcstatsgetcompactionthresholdgetcompactionthroughputgetconcurrentcompactorsgetendpointsgetinterdcstreamthroughputgetlogginglevelsgetsstablesgetstreamthroughputgettimeoutgettraceprobabilitygossipinfoinfoinvalidatecountercacheinvalidatekeycacheinvalidaterowcachelistsnapshotsnetstatspausehandoffproxyhistogramsrangekeysamplerebuild-
rebuild_index: W przypadku argumentów użyj polecenia"keyspace"="table indexname...". refreshrefreshsizeestimatesreloadlocalschemareplaybatchlogresetlocalschemaresumehandoffringscrub-
setcachecapacity: W przypadku argumentów użyj polecenia"key-cache-capacity" = "<row-cache-capacity> <counter-cache-capacity>". -
setcachekeystosave: W przypadku argumentów użyj polecenia"key-cache-keys-to-save":"<row-cache-keys-to-save> <counter-cache-keys-to-save>". -
setcompactionthreshold: W przypadku argumentów użyj polecenia"<keyspace>"="<table> <minthreshold> <maxthreshold>. setcompactionthroughputsetconcurrentcompactorssethintedhandoffthrottlekbsetinterdcstreamthroughputsetstreamthroughputsettimeoutsettraceprobabilitystatusbackupstatusbinarystatusgossipstatushandoffstoptablehistogramstablestatstoppartitionstpstatstruncatehintsverifyversionviewbuildstatus