📜  Microsoft Azure-计算模块(1)

📅  最后修改于: 2023-12-03 15:02:56.944000             🧑  作者: Mango

Microsoft Azure-计算模块

简介

Microsoft Azure-计算模块是一个云计算平台,它提供了丰富的计算资源,包括虚拟机、容器、批处理、Azure Functions、Azure Kubernetes Service、Azure Service Fabric 等,这些资源可以满足不同类型的计算需求。

虚拟机

Azure提供了多种可供选择的虚拟机,包括各种不同大小和功能的预定义镜像以及支持自定义操作系统和应用程序的自定义映像。使用Azure虚拟机,您可以快速地拓展您的计算能力,而无需购买额外的硬件。

以下是在Azure上启动一个基本的Linux虚拟机的代码示例:

# 创建资源组
az group create --name myResourceGroup --location chinaeast

# 创建一个基本的Linux虚拟机
az vm create \
  --resource-group myResourceGroup \
  --name myVM \
  --image UbuntuLTS \
  --admin-username azureuser \
  --generate-ssh-keys
容器

Azure提供了Azure容器实例和Azure Kubernetes Service(AKS)两种方式来部署和运行容器化应用程序。

Azure容器实例是一种以最简单的方式运行容器应用程序的方式,Azure会负责管理和运行容器。以下是在Azure上启动一个容器的代码示例:

# 创建一个容器组
az container create --name mycontainer --image nginx --resource-group myResourceGroup --dns-name-label myuniquecontainer --ports 80
批处理

Azure批处理可以帮助您在大量计算资源上批量运行作业和任务。批处理分配和调度工作负载,并管理计算资源。

以下是在Azure上启动一个任务并将结果存储到Azure Blob存储中的代码示例:

# 创建一个Batch账户并上传数据到Azure Blob存储中
az batch account create --name mybatchaccount --resource-group myResourceGroup --location chinaeast
az storage account create --name mystorageaccount --location chinaeast --resource-group myResourceGroup --sku Standard_LRS
az storage container create --name myinputcontainer --account-name mystorageaccount
az storage container create --name myoutputcontainer --account-name mystorageaccount

# 上传任务脚本和数据文件到Azure Blob存储中
az storage blob upload-batch -s ./input -d https://mystorageaccount.blob.core.windows.net/myinputcontainer --account-name mystorageaccount

# 创建并运行一个Batch作业
az batch pool create --id mypool --vm-size Standard_A1_v2 --target-dedicated 2 --image UbuntuLTS --node-agent-sku-id "batch.node.ubuntu 18.04" --account-name mybatchaccount --account-endpoint https://mybatchaccount.chinaeast.batch.azure.cn --account-key myaccountkey
az batch job create --id myjob --pool-id mypool --account-name mybatchaccount --account-endpoint https://mybatchaccount.chinaeast.batch.azure.cn --account-key myaccountkey
az batch task create --job-id myjob --task-id mytask --command-line "/bin/bash -c 'python mytask.py'" --account-name mybatchaccount --account-endpoint https://mybatchaccount.chinaeast.batch.azure.cn --account-key myaccountkey
Azure Functions

Azure Functions提供了一种无服务器的计算方式,您只需编写您的代码并将其上传到Azure Functions中,Azure会负责应用程序的部署和运维。Azure Functions可以与各种常见的云服务和SaaS应用程序交互,并支持多种编程语言。

以下是在Azure上部署和运行一个Azure Function的代码示例:

# 创建一个函数应用
az group create --name myResourceGroup --location chinaeast
az storage account create --name mystorageaccount --location chinaeast --resource-group myResourceGroup --sku Standard_LRS
az functionapp create --resource-group myResourceGroup --os-type Linux --consumption-plan-location chinaeast --runtime python --functions-version 2 --name myFunctionApp --storage-account mystorageaccount

# 部署一个HTTP触发器Azure Function
func init --worker-runtime python
func new --name HttpExample --template "HTTP trigger"
Azure Kubernetes Service

Azure Kubernetes Service(AKS)是一个无服务器的容器管理平台,您只需上传您的容器镜像并告知AKS您希望如何管理它们就可以了。AKS提供了自动化的操作和管理,使得您可以专注于如何编写和部署您的应用程序。

以下是在Azure上部署和运行一个容器的代码示例:

# 创建一个容器映像并上传到Azure容器仓库
az acr create --resource-group myResourceGroup --name myACR --sku basic
az acr build --registry myACR --image myContainerImage .

# 创建一个AKS集群
az aks create --name myAKSCluster --resource-group myResourceGroup --node-count 3 --generate-ssh-keys --attach-acr myACR

# 部署一个容器到AKS集群
kubectl apply -f ./myContainer.yaml
Azure Service Fabric

Azure Service Fabric是一个无服务器的、跨平台的应用程序框架,它可以帮助开发人员构建、部署和管理可扩展的、可靠的微服务应用程序。Azure Service Fabric提供了自动化的操作和管理,以及支持各种编程语言和平台。

以下是在Azure上部署和运行一个Azure Service Fabric的代码示例:

# 创建一个Azure Service Fabric群集
az group create --name myResourceGroup --location chinaeast
az sf cluster create --resource-group myResourceGroup --location chinaeast --certificate-output-folder ./certificates

# 部署一个Service Fabric应用程序
az sf application upload --path ./MyApplication --show-progress --application-name fabric:/myapplication
az sf application provision --application-type-build-path ./MyApplication/ApplicationManifest.xml --application-type-name MyApplicationType --application-type-version 1.0.0
az sf application create --application-name fabric:/myapplication --application-type-name MyApplicationType --application-type-version 1.0.0
结束语

Microsoft Azure-计算模块是一个强大的云计算平台,它为程序员提供了丰富的计算资源和工具,帮助开发人员构建高效、可扩展、可靠的应用程序。我们鼓励程序员探索Azure的各种计算资源,并将其应用于您的开发工作中。