Rövid útmutató: Azure Spring Apps kiépítése ARM-sablonnal
Feljegyzés
Az Azure Spring Apps az Azure Spring Cloud szolgáltatás új neve. Bár a szolgáltatásnak új neve van, bizonyos helyeken a régi nevet fogja látni egy darabig, miközben az eszközök, például képernyőképek, videók és diagramok frissítésével dolgozunk.
Ez a cikk a következőre vonatkozik:❌ Basic ✔️ Standard ✔️ Enterprise
Ez a rövid útmutató bemutatja, hogyan lehet Azure Resource Manager-sablont (ARM-sablont) használni egy Azure Spring Apps-fürt üzembe helyezéséhez egy meglévő virtuális hálózatban.
Az Azure Spring Apps megkönnyíti a Spring-alkalmazások üzembe helyezését az Azure-ban kódmódosítások nélkül. A szolgáltatás kezeli a Spring-alkalmazások infrastruktúráját, hogy a fejlesztők a kódjukra összpontosíthassanak. Az Azure Spring Apps átfogó monitorozási és diagnosztikai, konfigurációkezelési, szolgáltatásfelderítési, CI/CD-integrációs, kék-zöld környezetek és egyebek használatával biztosítja az életciklus-felügyeletet.
A vállalati üzembehelyezési terv a következő Tanzu-összetevőket tartalmazza:
- Build szolgáltatás
- Alkalmazáskonfigurációs szolgáltatás
- Szolgáltatásregisztrációs adatbázis
- Spring Cloud Gateway
- API Portal
- Alkalmazásgyorsító
- Alkalmazás élő nézete
Az Azure Resource Manager-sablon egy JavaScript Object Notation (JSON) fájl, amely meghatározza a projekt infrastruktúráját és konfigurációját. A sablon deklaratív szintaxist használ. Az üzembe helyezés létrehozásához szükséges programozási parancsok sorozatának megírása nélkül írhatja le a tervezett üzembe helyezést.
Előfeltételek
Azure-előfizetés. Ha nem rendelkezik előfizetéssel, a kezdés előtt hozzon létre egy ingyenes fiókot .
Két dedikált alhálózat az Azure Spring Apps-fürthöz, az egyik a szolgáltatás futtatókörnyezetéhez, a másik a Spring-alkalmazásokhoz. Az alhálózati és virtuális hálózati követelményekről az Azure Spring Apps virtuális hálózaton való üzembe helyezésének virtuális hálózatra vonatkozó követelményeit ismertető szakaszában olvashat.
Meglévő Log Analytics-munkaterület az Azure Spring Apps diagnosztikai beállításaihoz és egy munkaterület-alapú alkalmazás-Elemzések erőforráshoz. További információ: Naplók és metrikák elemzése diagnosztikai beállításokkal és alkalmazás Elemzések Java In-Process Agent az Azure Spring Appsben.
Három belső, osztály nélküli tartományközi útválasztási (CIDR) tartomány (legalább /16 mindegyik), amelyet az Azure Spring Apps-fürt által használtként azonosított. Ezek a CIDR-tartományok nem közvetlenül kezelhetők, és csak belsőleg használják őket az Azure Spring Apps-fürt. A fürtök nem használhatják a 169.254.0.0/16, 172.30.0.0/16, 172.31.0.0/16 vagy 192.0.2.0/24 verziót a belső Azure Spring Apps CIDR-tartományokhoz. A fürtök a fürt virtuális hálózati címtartományában található IP-címtartományokat sem használhatják.
A virtuális hálózatnak adott szolgáltatásengedély. Az Azure Spring Apps-erőforrás-szolgáltató tulajdonosi engedélyt igényel a virtuális hálózathoz, hogy dedikált és dinamikus szolgáltatásnevet biztosíthasson a virtuális hálózaton a további üzembe helyezéshez és karbantartáshoz. Útmutatásért és további információkért tekintse meg az Azure Spring Apps virtuális hálózaton való üzembe helyezésének virtuális hálózatra vonatkozó engedélyének megadását ismertető szakaszt.
Ha Azure Firewallt vagy hálózati virtuális berendezést (NVA) használ, az alábbi előfeltételeknek is meg kell felelnie:
- Hálózati és teljes tartománynévre (FQDN) vonatkozó szabályok. További információ: Virtuális hálózat követelményei.
- Az egyes szolgáltatás-futtatókörnyezetekre és Spring-alkalmazások alhálózatára alkalmazott egyedi felhasználói útvonal (UDR). Az UDR-ekről további információt a Virtuális hálózati forgalom útválasztása című témakörben talál. Az UDR-t a 0.0.0.0/0 útvonallal kell konfigurálni az NVA célhelyével, mielőtt üzembe helyeznénk az Azure Spring Apps-fürtöt. További információt az Azure Spring Apps virtuális hálózaton való üzembe helyezésének saját útvonaltábla-szakaszában talál.
Ha első alkalommal helyez üzembe Azure Spring Apps Enterprise-csomagpéldányt a célelőfizetésben, tekintse meg a Nagyvállalati csomag Követelményei szakaszát az Azure Marketplace-en.
A sablon áttekintése
Az ebben a rövid útmutatóban használt sablonok az Azure Spring Apps referenciaarchitektúrájából származnak.
{
"$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
"contentVersion": "1.0.0.0",
"parameters": {
"springCloudInstanceName": {
"type": "string",
"metadata": {
"description": "The instance name of the Azure Spring Cloud resource"
}
},
"appInsightsName": {
"type": "string",
"metadata": {
"description": "The name of the Application Insights instance for Azure Spring Cloud"
}
},
"laWorkspaceResourceId": {
"type": "string",
"metadata": {
"description": "The resource ID of the existing Log Analytics workspace. This will be used for both diagnostics logs and Application Insights"
}
},
"springCloudAppSubnetID": {
"type": "string",
"metadata": {
"description": "The resourceID of the Azure Spring Cloud App Subnet"
}
},
"springCloudRuntimeSubnetID": {
"type": "string",
"metadata": {
"description": "The resourceID of the Azure Spring Cloud Runtime Subnet"
}
},
"springCloudServiceCidrs": {
"type": "string",
"defaultValue": "10.0.0.0/16,10.2.0.0/16,10.3.0.1/16",
"metadata": {
"description": "Comma-separated list of IP address ranges in CIDR format. The IP ranges are reserved to host underlying Azure Spring Cloud infrastructure, which should be 3 at least /16 unused IP ranges, must not overlap with any Subnet IP ranges"
}
},
"tags": {
"type": "object",
"metadata": {
"description": "The tags that will be associated to the Resources"
},
"defaultValue": {
"environment": "lab"
}
}
},
"variables": {
"location": "[resourceGroup().location]"
},
"resources": [
{
"type": "Microsoft.Insights/components",
"name": "[parameters('appInsightsName')]",
"apiVersion": "2020-02-02",
"location": "[variables('location')]",
"tags": "[parameters('tags')]",
"properties": {
"Application_Type": "web",
"ApplicationId": "[parameters('appInsightsName')]",
"Flow_Type": "Bluefield",
"Request_Source": "rest",
"WorkspaceResourceId": "[parameters('laWorkspaceResourceId')]"
}
},
{
"apiVersion": "2022-03-01-preview",
"name": "[parameters('springCloudInstanceName')]",
"location": "[variables('location')]",
"tags": "[parameters('tags')]",
"dependsOn": [
"[resourceId('Microsoft.Insights/components', parameters('appInsightsName'))]"
],
"type": "Microsoft.AppPlatform/Spring",
"sku": {
"name": "E0",
"tier": "Enterprise"
},
"properties": {
"networkProfile": {
"serviceCidr": "[parameters('springCloudServiceCidrs')]",
"serviceRuntimeSubnetId": "[parameters('springCloudRuntimeSubnetID')]",
"appSubnetId": "[parameters('springCloudAppSubnetID')]"
}
},
"resources": [
{
"type": "serviceRegistries",
"name": "default",
"apiVersion": "2022-03-01-preview",
"location": "[variables('location')]",
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring', parameters('springCloudInstanceName'))]"
]
},
{
"type": "configurationServices",
"name": "default",
"apiVersion": "2022-03-01-preview",
"location": "[variables('location')]",
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring', parameters('springCloudInstanceName'))]"
]
},
{
"type": "gateways",
"name": "default",
"apiVersion": "2022-03-01-preview",
"location": "[variables('location')]",
"sku": {
"name": "E0",
"tier": "Enterprise",
"capacity": 2
},
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring', parameters('springCloudInstanceName'))]"
]
},
{
"type": "apiPortals",
"name": "default",
"apiVersion": "2022-03-01-preview",
"location": "[variables('location')]",
"sku": {
"name": "E0",
"tier": "Enterprise",
"capacity": 1
},
"properties": {
"gatewayIds": [
"[concat(resourceId('Microsoft.AppPlatform/Spring', parameters('springCloudInstanceName')), '/gateways/default')]"
]
},
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring', parameters('springCloudInstanceName'))]"
]
},
{
"type": "Microsoft.AppPlatform/Spring/buildServices/agentPools",
"name": "[concat(parameters('springCloudInstanceName'), '/default/default')]",
"apiVersion": "2022-03-01-preview",
"location": "[variables('location')]",
"properties": {
"poolSize": {
"name": "S1"
}
},
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring', parameters('springCloudInstanceName'))]"
]
}
]
},
{
"apiVersion": "2022-03-01-preview",
"name": "[concat(parameters('springCloudInstanceName'), '/default/default/default')]",
"type": "Microsoft.AppPlatform/Spring/buildservices/builders/buildpackBindings",
"properties": {
"bindingType": "ApplicationInsights",
"launchProperties": {
"properties": {
"sampling_percentage": 10,
"connection_string": "[reference(concat('microsoft.insights/components/', parameters('appInsightsName')), '2015-05-01').ConnectionString]"
}
}
},
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring', parameters('springCloudInstanceName'))]"
]
},
{
"type": "Microsoft.AppPlatform/Spring/providers/diagnosticSettings",
"name": "[concat(parameters('springCloudInstanceName'), '/Microsoft.Insights/monitoring')]",
"dependsOn": [
"[resourceId('Microsoft.AppPlatform/Spring/', parameters('springCloudInstanceName'))]"
],
"apiVersion": "2017-05-01-preview",
"properties": {
"name": "monitoring",
"workspaceId": "[parameters('laWorkspaceResourceId')]",
"logs": [
{
"category": "ApplicationConsole",
"enabled": true,
"retentionPolicy": {
"days": 30,
"enabled": false
}
}
]
}
}
],
"outputs": {
}
}
A sablonban két Azure-erőforrás van definiálva:
- A Microsoft.AppPlatform/Spring létrehoz egy Azure Spring Apps-példányt.
- Microsoft. Elemzések/összetevők létrehoznak egy alkalmazás-Elemzések-munkaterületet.
A sablon üzembe helyezése
A sablon üzembe helyezéséhez kövesse az alábbi lépéseket.
Először válassza ki a következő képet az Azure-ba való bejelentkezéshez és egy sablon megnyitásához. A sablon létrehoz egy Azure Spring Apps-példányt egy meglévő virtuális hálózaton, és egy munkaterület-alapú alkalmazáspéldányt Elemzések egy meglévő Azure Monitor Log Analytics-munkaterületen.
Ezután adja meg az alábbi mezők értékeit:
- Erőforráscsoport: Válassza az Új létrehozása lehetőséget, adjon meg egy egyedi nevet az erőforráscsoportnak, majd kattintson az OK gombra.
- springCloudInstanceName: Adja meg az Azure Spring Apps-erőforrás nevét.
- app Elemzések Name: Adja meg az Azure Spring Apps alkalmazás Elemzések példányának nevét.
- laWorkspaceResourceId: Adja meg a meglévő Log Analytics-munkaterület erőforrás-azonosítóját (például /subscriptions/<your subscription>/resourcegroups/<your Log Analytics erőforráscsoport>/providers/Microsoft.Operational Elemzések/workspaces/<your Log Analytics-munkaterület neve>).)
- springCloudAppSubnetID: Adja meg az Azure Spring Apps-alkalmazás alhálózatának erőforrás-azonosítóját.
- springCloudRuntimeSubnetID: Adja meg az Azure Spring Apps Futtatókörnyezet alhálózat erőforrás-azonosítóját.
- springCloudServiceCidrs: Adja meg az IP-címtartományok vesszővel tagolt listáját (összesen három) CIDR formátumban. Az IP-tartományok a mögöttes Azure Spring Apps-infrastruktúra üzemeltetésére vannak fenntartva. Ennek a három tartománynak legalább /16 nem használt IP-tartománynak kell lennie, és nem lehetnek átfedésben a hálózaton belül használt routable alhálózati IP-tartományokkal.
- címkék: Adja meg az egyéni címkéket.
Végül válassza a Véleményezés + Létrehozás , majd a Létrehozás lehetőséget.
Üzembe helyezett erőforrások áttekintése
Az Azure Portal használatával ellenőrizheti az üzembe helyezett erőforrásokat, vagy az Azure CLI-vel vagy az Azure PowerShell-szkripttel listázhatja az üzembe helyezett erőforrásokat.
Az erőforrások eltávolítása
Ha további rövid útmutatókkal és oktatóanyagokkal szeretne dolgozni, érdemes lehet ezeket az erőforrásokat a helyén hagyni. Ha már nincs rá szükség, törölje az erőforráscsoportot, amely törli az erőforráscsoport erőforrásait. Ha törölni szeretné az erőforráscsoportot az Azure CLI vagy az Azure PowerShell használatával, használja a következő parancsokat:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Következő lépések
Ebben a rövid útmutatóban üzembe helyezett egy Azure Spring Apps-példányt egy meglévő virtuális hálózatban EGY ARM-sablon használatával, majd érvényesítette az üzembe helyezést. Ha többet szeretne megtudni az Azure Spring Appsről és az Azure Resource Managerről, folytassa a következő erőforrásokkal.
- Telepítse az alábbi mintaalkalmazások egyikét a következő helyekről:
- Egyéni tartományok használata az Azure Spring Appsszel.
- Az Azure Spring Apps-alkalmazások internetes elérhetővé tehetők Azure-alkalmazás Gateway használatával. További információ: Alkalmazások teljes körű TLS-sel való elérhetővéítása virtuális hálózaton.
- Tekintse meg a Microsoft Azure Well-Architected Frameworken alapuló biztonságos, végpontok közötti Azure Spring Apps referenciaarchitektúrát.
- További információ az Azure Resource Managerről.