Dela via


Snabbstart: Konfigurera ett hybridkluster med Azure Managed Instance för Apache Cassandra med hjälp av Klientkonfigureraren

Azure Client Configurator är ett verktyg som hjälper dig att konfigurera ett hybridkluster och förenkla migreringsprocessen till Azure Managed Instance för Apache Cassandra. Om du för närvarande har lokala datacenter eller arbetar i en lokalt installerad miljö kan du använda Azure Managed Instance för Apache Cassandra för att sömlöst införliva andra datacenter i klustret samtidigt som de underhållas effektivt.

Viktigt!

Verktyget Client Configurator finns i offentlig förhandsversion. Den här funktionen tillhandahålls utan ett serviceavtal. Vi rekommenderar det inte för produktionsarbetsbelastningar.

Mer information finns i Kompletterande villkor för användning av Microsoft Azure-förhandsversioner.

Förutsättningar

  • Den här artikeln kräver Azure CLI version 2.30.0 eller senare. Om du använder Azure Cloud Shell är den senaste versionen redan installerad.

  • Använd ett virtuellt Azure-nätverk med anslutning till din självhostade eller lokala miljö. Mer information om hur du ansluter lokala miljöer till Azure finns i Ansluta ett lokalt nätverk till Azure.

  • En Python-installation krävs. Om du vill kontrollera om Python är installerat kör du python --version i terminalen.

  • Kontrollera att både Azure Managed Instance för Apache Cassandra-klustret och det lokala Cassandra-klustret finns i samma virtuella nätverk. Om inte så måste du upprätta nätverkspeering eller något annat sätt att upprätta anslutning. Du kan till exempel använda Azure ExpressRoute.

  • Klusternamnet för både det hanterade klustret och det lokala klustret måste vara detsamma.

    cassandra.yaml I filen kontrollerar du att lagringsporten är inställd på 7001 och att klusternamnet är samma som det hanterade klustret:

    cluster_name: managed_cluster-name
    storage_port: 7001
    
    UPDATE system.local SET cluster_name = 'managed_cluster-name' where key='local';
    

Installation

  1. Ladda ned och gå till klientens konfigureringsmapp.

  2. Konfigurera en virtuell miljö för att köra Python-skriptet:

    python3 -m venv env
    source env/bin/activate
    python3 -m pip install -r requirements.txt
    
  3. Logga in på Azure CLI az login.

  4. Kör Python-skriptet i klientmappen med information från det befintliga (lokala) klustret:

    python3 client_configurator.py --subscription-id <subcriptionId> --cluster-resource-group <clusterResourceGroup> --cluster-name <clusterName> --initial-password <initialPassword> --vnet-resource-group <vnetResourceGroup> --vnet-name <vnetName> --subnet-name <subnetName> --location <location> --seed-nodes <seed1 seed2 seed3> --mi-dc-name <managedInstanceDataCenterName> --dc-name <onPremDataCenterName> --sku <sku>
    
    Parameter Beskrivning
    subscription-ID Azure-prenumerations-ID
    cluster-resource-group Resursgrupp där klustret finns
    cluster-name Azure Managed Instance för Apache Cassandra-klusternamn
    initial-password Lösenord för ditt Azure Managed Instance för Apache Cassandra-kluster
    vnet-resource-group Resursgrupp som är kopplad till det virtuella nätverket
    vnet-name Namnet på det virtuella nätverk som är kopplat till klustret
    subnet-name Namnet på IP-adressen som allokerats till Cassandra-klustret
    location Var klustret deployeras
    seed-nodes Startnoder för befintliga datacenter i ditt lokala eller lokalt använda Cassandra-kluster
    mi-dc-name Datacenternamn för ditt Azure Managed Instance för Apache Cassandra-kluster
    dc-name Datacenternamn för det lokala klustret
    sku Produktnivåstorlek för virtuell dator
  5. Python-skriptet skapar ett tjärarkiv med namnet install_certs.tar.gz. Packa upp den här mappen i /etc/cassandra/ på varje nod:

    sudo tar -xzvf install_certs.tar.gz -C /etc/cassandra
    
  6. /etc/cassandra/ I mappen kör du sudo ./install_certs.sh.

    • Kontrollera att skriptet kan köras genom att köra sudo chmod +x install_certs.sh.

    • Skriptet installerar och pekar Cassandra mot de nya certifikat som behövs för att ansluta till Azure Managed Instance för Apache Cassandra-klustret.

    • Användaren uppmanas sedan att starta om Cassandra.

      Skärmbild som visar resultatet av att köra skriptet.

  7. När Cassandra har startats om på alla noder ska du kontrollera nodetool status. Båda datacentren bör visas i listan, med sina noder i tillståndet UN (Up/Normal) .

  8. Från din instans av Azure Managed Instance för Apache Cassandra kan du sedan välja AllKeyspaces att ändra replikeringsinställningarna i nyckelrymdsschemat och starta migreringsprocessen till Azure Managed Instance for Cassandra-klustret.

  9. Aktivera inställningen autoReplicate med hjälp av en Azure Resource Manager-mall (ARM-mall). ARM-mallen bör innehålla:

    "properties":{
    ...
    "externalDataCenters": ["dc-name-1","dc-name-2"],
    "autoReplicate": "AllKeyspaces",
    ...
    }
    

    Alla dina nyckelrymdsdefinitioner ändras så att de inkluderar WITH REPLICATION = { 'class' : 'NetworkTopologyStrategy', 'on-prem-datacenter-1' : 3, 'mi-datacenter-1': 3 }. Om den här topologin inte är det du vill använda justerar du den och kör nodetool rebuild den manuellt i Azure Managed Instance för Apache Cassandra-klustret.

    Läs mer om automatisk replikering.

  10. Uppdatera och övervaka förloppet för datareplikering genom att välja fönstret Datacenter .

    Skärmbild som visar replikeringsstatus.

Nästa steg