Gyakorlat – Tesztkörnyezet beállítása

Befejeződött

Ebben a leckében a modul során használt erőforrásokat állítja be. Olyan alapszintű architektúrát képzelhet el, amely egy olyan kiszolgálóból áll, amely egy olyan alkalmazást üzemeltet, amelyet az ügyfelek használnak. A kiszolgáló az adatok tárolására szolgáló adatbázishoz csatlakozik. Az alkalmazás virtuális gépen (virtuális gépen) fut. Az adatbázis nemrég migrált egy virtuális gépen futó SQL Server-adatbázisból az Azure SQL Database szolgáltatás adatbázisába. Az adatbázis biztonságossá tételének bemutatásához állítsa be a következő erőforrásokat a modulban való használatra:

  • Egy appServer nevű, Linux rendszerű virtuális gép. Ez a kiszolgáló az az alkalmazáskiszolgáló, amelyhez a felhasználók csatlakoznának. Csatlakoznia kell az adatbázishoz. Telepítse sqlcmd a virtuális gépre az appServeren futó alkalmazás szimulálásához, amely kapcsolatot létesít az adatbázissal.
  • Egy Azure SQL Database logikai kiszolgáló. Ez a logikai kiszolgáló egy vagy több adatbázis üzemeltetéséhez szükséges.
  • Egy marketplaceDb nevű adatbázis a logikai kiszolgálón. Az AdventureWorksLT demóadatbázis használatával hozza létre, hogy néhány táblával és adattal működjön együtt. Ezek az adatok bizalmas adatokat tartalmaznak, például e-mail-címeket és telefonszámokat, amelyeket megfelelően szeretne biztonságossá tenni.

Azure SQL Database-adatbázis létrehozása

  1. Először állítson be néhány változót. Cserélje le a következő értékeket, amelyek a [] választott értékekkel jelennek meg. A [password] karaktereknek legalább nyolc karakterből kell lenniük, és legalább három ilyen kategória karaktereit kell tartalmazniuk: nagybetűket, kisbetűket, számokat és nemnalfanumerikus karaktereket. Mentse az értéket későbbi használatra.

    export ADMINLOGIN='[ServerAdmin]'
    export PASSWORD='[password]'
    export SERVERNAME=server$RANDOM
    export RESOURCEGROUP=<rgn>[sandbox resource group name]</rgn>
    export LOCATION=$(az group show --name $RESOURCEGROUP | jq -r '.location')
    
  2. Az alábbi parancs futtatásával hozzon létre egy új Azure SQL Database logikai kiszolgálót.

    az sql server create \
        --name $SERVERNAME \
        --resource-group $RESOURCEGROUP \
        --location $LOCATION \
        --admin-user $ADMINLOGIN \
        --admin-password $PASSWORD
    
  3. Futtassa a következő parancsot a marketplaceDb nevű adatbázis létrehozásához a létrehozott logikai kiszolgálón. Ez a parancs az AdventureWorksLT adatbázist használja sablonként, így néhány előre feltöltött táblával dolgozhat.

    az sql db create --resource-group $RESOURCEGROUP \
        --server $SERVERNAME \
        --name marketplaceDb \
        --sample-name AdventureWorksLT \
        --service-objective Basic
    
  4. Futtassa a következő parancsot az adatbázis kapcsolati sztring lekéréséhez.

    az sql db show-connection-string --client sqlcmd --name marketplaceDb --server $SERVERNAME | jq -r
    

    A kimenetnek az alábbi példához kell hasonlítania. Tartsa kéznél ezt a parancsot, mert a modul későbbi részében szüksége lesz erre a parancsra az adatbázishoz való csatlakozáshoz. Jegyezze fel a [username][password] korábban változókban megadott hitelesítő adatokkal ADMINLOGINPASSWORD lecserélni kívánt parancs és helyőrzőket.

    sqlcmd -S tcp:server12345.database.windows.net,1433 -d marketplaceDb -U '[username]' -P '[password]' -N -l 30
    

Linux rendszerű virtuális gép létrehozása és konfigurálása

Hozza létre a linuxos virtuális gépet, amelyet néhány példán keresztül szeretne használni.

  1. Futtassa az alábbi parancsot a virtuális gép létrehozásához. A parancs végrehajtása több percet is igénybe vehet.

    az vm create \
      --resource-group $RESOURCEGROUP \
      --name appServer \
      --image Ubuntu2204 \
      --size Standard_DS2_v2 \
      --public-ip-sku Standard \
      --generate-ssh-keys
    

    A parancs befejeződésekor az alábbi példához hasonló kimenetnek kell megjelennie.

    {
      "fqdns": "",
      "id": "/subscriptions/nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn/resourceGroups/learn-nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn/providers/Microsoft.Compute/virtualMachines/appServer",
      "location": "westus",
      "macAddress": "nn-nn-nn-nn-nn-nn",
      "powerState": "VM running",
      "privateIpAddress": "nn.nn.nn.nn",
      "publicIpAddress": "nnn.nnn.nnn.nnn",
      "resourceGroup": "learn-nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn",
      "zones": ""
    }
    
  2. A virtuális gép sikeres létrehozása után csatlakozzon a nyilvános IP-címéhez az SSH használatával.

    ssh nnn.nnn.nnn.nnn
    

    Itt a nnn.nnn.nnn.nnn az előző lépés publicIpAddress kimenetének értéke.

    Megjegyzés:

    Itt két dologra kell ügyelnie. Először nincs szüksége jelszóra, mert SSH-kulcspárt hozott létre a virtuális gép létrehozása során. Másodszor, a virtuális gép első rendszerhéj-kapcsolatán a rendszer kéri a gazdagép hitelességét. Ez azért fordul elő, mert állomásnév helyett IP-címhez csatlakozik. Az igen megválaszolása érvényes állomásként menti az IP-címet a kapcsolathoz, és lehetővé teszi a kapcsolat folytatását.

  3. Fejezze be az mssql-tools linuxos virtuális gépre való telepítésével, hogy sqlcmd használatával csatlakozzon az adatbázishoz.

    echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bash_profile
    echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc
    source ~/.bashrc
    curl https://packages.microsoft.com/keys/microsoft.asc | sudo tee /etc/apt/trusted.gpg.d/microsoft.asc
    curl https://packages.microsoft.com/config/ubuntu/22.04/prod.list | sudo tee /etc/apt/sources.list.d/mssql-release.list
    sudo apt-get update
    sudo ACCEPT_EULA=Y apt-get install -y mssql-tools18 unixodbc-dev
    

    Megjegyzés:

    A parancsok némelyike sok szöveget görget, ezért a futtatásuk biztosításához mindenképpen az Enter billentyűt kell választania az utolsó parancs után.

Létrehozott egy logikai Azure SQL Database-kiszolgálót, egy adatbázist a logikai kiszolgálón, és egy appServer nevű virtuális gépet, amely egy alkalmazáskiszolgáló hálózati kapcsolatát szimulálja. Ezután tekintse meg, hogyan lehet megfelelően biztonságossá tenni az adatbázist.