Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Azure Managed Instance voor Apache Cassandra is een volledig beheerde service voor pure opensource Apache Cassandra-clusters. Met de service kunnen configuraties ook worden aangepast, afhankelijk van de specifieke behoeften van elke workload. Deze functie biedt maximale flexibiliteit en controle waar nodig. In dit artikel wordt beschreven hoe u DBA-opdrachten handmatig uitvoert wanneer de noodzaak zich voordoet.
Belangrijk
Nodetool
en sstable
opdrachten zijn beschikbaar als openbare preview.
Deze functie wordt geleverd zonder service level agreement. Deze functie wordt niet aanbevolen voor productieworkloads. Zie Aanvullende gebruiksvoorwaarden voor Microsoft Azure-previews voor meer informatie.
Ondersteuning voor DBA-opdrachten
Met Azure Managed Instance voor Apache Cassandra kunt u nodetool
- en sstable
-opdrachten uitvoeren met behulp van Azure CLI voor routine-DBA-beheer. Niet alle opdrachten worden ondersteund en er zijn enkele beperkingen. Zie de volgende secties voor ondersteunde opdrachten.
Waarschuwing
Sommige van deze opdrachten kunnen het Cassandra-cluster stabiliseren. Gebruik deze opdrachten alleen zorgvuldig en na het testen in niet-productieomgevingen. Implementeer waar mogelijk eerst een --dry-run
optie. Microsoft biedt geen SLA of ondersteuning voor problemen met het uitvoeren van opdrachten die de standaarddatabaseconfiguratie en/of tabellen wijzigen.
Een opdracht uitvoeren nodetool
Azure Managed Instance voor Apache Cassandra biedt de volgende Azure CLI-opdracht voor het uitvoeren van DBA-opdrachten:
az managed-cassandra cluster invoke-command --resource-group <rg> \
--cluster-name <cluster> --host <ip of data node> --command-name nodetool \
--arguments "<nodetool-subcommand>"="" "paramerter1"=""
De subopdracht moet zich in de --arguments
sectie bevinden met een lege waarde.
Nodetool
vlaggen zonder waarde zijn in de vorm: "<flag>"=""
. Als de vlag een waarde heeft, heeft deze de volgende notatie: "<flag>"="value"
.
Hier volgt een voorbeeld van het uitvoeren van een nodetool
opdracht zonder vlaggen, in dit geval de nodetool status
opdracht:
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name nodetool --arguments "status"=""
Hier volgt een voorbeeld van het uitvoeren van een nodetool
opdracht met een vlag, in dit geval de nodetool compact
opdracht:
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name nodetool --arguments "compact"="" "-st"="65678794"
Beide retourneren een JSON van de volgende vorm:
{
"commandErrorOutput": "",
"commandOutput": "<result>",
"exitCode": 0
}
In de meeste gevallen hebt u alleen de commandOutput
of de exitCode
. Hier volgt een voorbeeld voor alleen het krijgen van het commandOutput
:
az managed-cassandra cluster invoke-command --query "commandOutput" --resource-group $resourceGroupName \
--cluster-name $clusterName --host $host --command-name nodetool --arguments getstreamthroughput=""
Een opdracht uitvoeren sstable
De sstable
opdrachten vereisen lees-/schrijftoegang tot de cassandra-gegevensmap en de Cassandra-database om te worden gestopt. Geef deze twee parameters op om aan deze vereiste te voldoen: --cassandra-stop-start true
en --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
}
Andere opdrachten uitvoeren
Met cassandra-reset-password
de opdracht kan een gebruiker het wachtwoord voor de Cassandra-gebruiker wijzigen.
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>"
Belangrijk
Het wachtwoord is URL-gecodeerd (UTF-8) in deze opdracht, wat betekent dat de volgende regels van toepassing zijn:
The alphanumeric characters "a" through "z", "A" through "Z" and "0" through "9" remain the same.
The special characters ".", "-", "*", and "_" remain the same.
The space character " " is converted into a plus sign "+".
All other characters are unsafe and are first converted into one or more bytes using some encoding scheme. Then each byte is represented by the 3-character string "%xy", where xy is the two-digit hexadecimal representation of the byte.
Met de cassandra-reset-auth-replication
opdracht kan een gebruiker het schema voor de Cassandra-gebruiker wijzigen. Scheid de namen van het datacenter op afstand.
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>"
Belangrijk
De datacenters zijn URL-gecodeerd (UTF-8) wanneer ze worden doorgegeven aan deze opdracht, wat betekent dat de volgende regels van toepassing zijn:
The alphanumeric characters "a" through "z", "A" through "Z" and "0" through "9" remain the same.
The special characters ".", "-", "*", and "_" remain the same.
The space character " " is converted into a plus sign "+".
All other characters are unsafe and are first converted into one or more bytes using some encoding scheme. Then each byte is represented by the 3-character string "%xy", where xy is the two-digit hexadecimal representation of the byte.
Met de sstable-tree
opdracht kunnen gebruikers hun sstables zien.
az managed-cassandra cluster invoke-command --resource-group <rg> --cluster-name <cluster> \
--host <ip of data node> --command-name sstable-tree
Met de sstable-delete
opdracht kan een gebruiker de sstables verwijderen die vóór een bepaalde tijd zijn gemaakt.
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>"
Het datetime
argument moet worden opgemaakt zoals wordt weergegeven in het voorbeeld. U kunt ook toevoegen --dry-run=""
als argument om te zien welke bestanden de opdracht verwijdert.
Lijst met ondersteunde sstable
opdrachten
Zie SSTable Tools voor meer informatie over elke opdracht.
sstableverify
sstablescrub
sstablemetadata
sstablelevelreset
sstableutil
sstablesplit
sstablerepairedset
sstableofflinerelevel
sstableexpiredblockers
Lijst met ondersteunde nodetool
opdrachten
Zie Nodetool gebruiken voor meer informatie over elke opdracht.
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
- voor argumenten gebruiken"keyspace"="table indexname..."
refresh
refreshsizeestimates
reloadlocalschema
replaybatchlog
resetlocalschema
resumehandoff
ring
scrub
-
setcachecapacity
- voor argumenten gebruiken"key-cache-capacity" = "<row-cache-capacity> <counter-cache-capacity>"
-
setcachekeystosave
- voor argumenten gebruiken"key-cache-keys-to-save":"<row-cache-keys-to-save> <counter-cache-keys-to-save>"
-
setcompactionthreshold
- voor argumenten gebruiken"<keyspace>"="<table> <minthreshold> <maxthreshold>
setcompactionthroughput
setconcurrentcompactors
sethintedhandoffthrottlekb
setinterdcstreamthroughput
setstreamthroughput
settimeout
settraceprobability
statusbackup
statusbinary
statusgossip
statushandoff
stop
tablehistograms
tablestats
toppartitions
tpstats
truncatehints
verify
version
viewbuildstatus