Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Azure Managed Instance for Apache Cassandra je plně spravovaná služba pro čistě opensourcové clustery Apache Cassandra. Služba také umožňuje přepis konfigurací v závislosti na konkrétních potřebách jednotlivých pracovních úloh. Tato funkce umožňuje maximální flexibilitu a kontrolu podle potřeby. Tento článek popisuje, jak v případě potřeby spouštět příkazy správce databáze (DBA).
Důležité
Příkazy nodetool a sstable jsou ve verzi Public Preview.
Tato funkce je poskytována bez smlouvy o úrovni služeb (SLA). Tuto funkci nedoporučujeme pro produkční úlohy. Další informace najdete v dodatečných podmínkách použití pro verze Preview v Microsoft Azure.
Podpora příkazů DBA
Se službou Azure Managed Instance for Apache Cassandra můžete spouštět nodetool příkazy sstable pomocí Azure CLI pro rutinní správu DBA. Ne všechny příkazy jsou podporované a existují určitá omezení. Podporované příkazy najdete v následujících částech.
Upozorňující
Některé z těcho příkazů mohou destabilizovat Cassandra cluster. Tyto příkazy používejte pečlivě a po testování v neprodukčních prostředích. Pokud je to možné, nejprve nasaďte --dry-run možnost. Microsoft nenabízí žádnou smlouvu SLA ani podporu problémů, které vznikají při spouštění příkazů, které mění výchozí konfiguraci nebo tabulky databáze.
Spuštění příkazu nodetool
Azure Managed Instance for Apache Cassandra poskytuje následující příkaz Azure CLI pro spouštění příkazů 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"=""
Podpříkaz musí být v oddílu --arguments s prázdnou hodnotou. Příznaky nodetool bez hodnoty jsou ve formuláři <flag>"=". Pokud má příznak hodnotu, je ve formě <flag>"="value.
Tento příklad ukazuje, jak spustit nodetool příkaz bez příznaků. V tomto případě se jedná o nodetool status příkaz:
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name nodetool --arguments "status"=""
Tento příklad ukazuje, jak spustit nodetool příkaz s příznakem. V tomto případě se jedná o nodetool compact příkaz:
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 vrátí JSON v následujícím formátu:
{
"commandErrorOutput": "",
"commandOutput": "<result>",
"exitCode": 0
}
Ve většině případů potřebujete pouze commandOutput nebo exitCode. Tento příklad ukazuje, jak získat pouze commandOutput:
az managed-cassandra cluster invoke-command --query "commandOutput" --resource-group $resourceGroupName \
--cluster-name $clusterName --host $host --command-name nodetool --arguments getstreamthroughput=""
Spuštění příkazu sstable
Příkazy sstable vyžadují přístup pro čtení a zápis k datovému adresáři Cassandra a k zastavení databáze Cassandra. Chcete-li tento požadavek vyhovět, zadejte tyto dva parametry: --cassandra-stop-start true a --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
}
Spuštění dalších příkazů
Příkaz cassandra-reset-password umožňuje uživateli změnit heslo pro Cassandru.
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>"
Heslo je v tomto příkazu zakódované pomocí adresy URL (UTF-8), což znamená, že platí následující pravidla:
- Alfanumerické znaky
aažz,AažZa0až9zůstávají stejné. - Speciální znaky
.,-,*a_zůstávají stejné. - Znak mezery se převede na znaménko plus (
+). - Všechny ostatní znaky jsou nebezpečné a nejprve se převedou na jeden nebo více bajtů pomocí některého schématu kódování. Řetězec se třemi znaky
%xypředstavuje každý bajt, kdexyje dvouciferné šestnáctkové vyjádření bajtu.
Příkaz cassandra-reset-auth-replication umožňuje uživateli změnit schéma pro uživatele Cassandra. Názvy datacentra oddělte mezerou.
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>"
Datacentra jsou při předání do tohoto příkazu kódovaná adresou URL (UTF-8), což znamená, že platí následující pravidla:
- Alfanumerické znaky
aažz,AažZa0až9zůstávají stejné. - Speciální znaky
.,-,*a_zůstávají stejné. - Znak mezery se převede na znaménko plus (
+). - Všechny ostatní znaky jsou nebezpečné a nejprve se převedou na jeden nebo více bajtů pomocí některého schématu kódování. Řetězec se třemi znaky
%xypředstavuje každý bajt, kdexyje dvouciferné šestnáctkové vyjádření bajtu.
Příkaz sstable-tree umožňuje uživateli zobrazit tabulky SSTables.
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name sstable-tree
Příkaz sstable-delete umožňuje uživateli odstranit SSTably, které byly vytvořeny před určitým časem.
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>"
Argument datetime musí být naformátovaný, jak je znázorněno v příkladu. Můžete také přidat --dry-run="" jako argument, abyste viděli, které soubory příkaz odstraní.
Seznam podporovaných příkazů sstable
Další informace o jednotlivých příkazech najdete v nástrojích SSTable.
sstableverifysstablescrubsstablemetadatasstablelevelresetsstableutilsstablesplitsstablerepairedsetsstableofflinerelevelsstableexpiredblockers
Seznam podporovaných příkazů nodetool
Další informace o jednotlivých příkazech naleznete v tématu Použití nodetool.
statuscleanupclearsnapshotcompactcompactionhistorycompactionstatsdescribeclusterdescriberingdisableautocompactiondisablehandoffdisablehintsfordcdrainenableautocompactionenablehandoffenablehintsfordcfailuredetectorflushgarbagecollectgcstatsgetcompactionthresholdgetcompactionthroughputgetconcurrentcompactorsgetendpointsgetinterdcstreamthroughputgetlogginglevelsgetsstablesgetstreamthroughputgettimeoutgettraceprobabilitygossipinfoinfoinvalidatecountercacheinvalidatekeycacheinvalidaterowcachelistsnapshotsnetstatspausehandoffproxyhistogramsrangekeysamplerebuild-
rebuild_index: Pro argumenty použijte"keyspace"="table indexname...". refreshrefreshsizeestimatesreloadlocalschemareplaybatchlogresetlocalschemaresumehandoffringscrub-
setcachecapacity: Pro argumenty použijte"key-cache-capacity" = "<row-cache-capacity> <counter-cache-capacity>". -
setcachekeystosave: Pro argumenty použijte"key-cache-keys-to-save":"<row-cache-keys-to-save> <counter-cache-keys-to-save>". -
setcompactionthreshold: Pro argumenty použijte"<keyspace>"="<table> <minthreshold> <maxthreshold>. setcompactionthroughputsetconcurrentcompactorssethintedhandoffthrottlekbsetinterdcstreamthroughputsetstreamthroughputsettimeoutsettraceprobabilitystatusbackupstatusbinarystatusgossipstatushandoffstoptablehistogramstablestatstoppartitionstpstatstruncatehintsverifyversionviewbuildstatus