当前位置: 首页> 健康> 养生 > 什么是网络推广?_桂林新闻网头条_上海短视频推广_百度指数官方版

什么是网络推广?_桂林新闻网头条_上海短视频推广_百度指数官方版

时间:2025/7/13 14:24:31来源:https://blog.csdn.net/DBA_Huangzj/article/details/145899804 浏览次数:1次
什么是网络推广?_桂林新闻网头条_上海短视频推广_百度指数官方版

本文属于【Azure 架构师学习笔记】系列。

前言

在实际的企业环境中,很少甚至可以说禁止手动创建资源,因为很容易出错,并且大规模部署时会非常低效。因此大部分企业都会使用工具或者某些服务来实现这种可控,可复用,具有伸缩性的部署方式。本文把工具选定为Terraform。

由于后续学习需要不停创建、删除Azure 资源,所以这里演示一下在本机(windows 10)上安装Terraform,并且创建一个Azure Storage Account.

环境搭建

本文把具体环境定格在Win 10 和Azure 上,大概搭建的步骤为:

  1. 安装必要工具
  2. 配置Azure 认证
  3. 创建Terraform配置文件
  4. 部署资源
  5. 验证资源(可选)
  6. 销毁资源(可选)

一、安装必要工具

必要工具包含Terraform,Azure CLI

Terraform

  1. 下载Terraform:Terraform官网,下载对应版本。
    在这里插入图片描述

  2. 解压到特定文件,比如本文的D:\Program Files\terraform_1.10.5_windows_386。

  3. 配置环境变量:
    在这里插入图片描述

  4. 按照步骤把刚才的路径贴进去
    在这里插入图片描述

  5. 验证安装结果:在cmd或者powershell中运行均可。
    在这里插入图片描述

Azure CLI

官网下载安装包并安装。同理验证安装结果
在这里插入图片描述

二、配置 Azure 认证

注意接下来的步骤基本上都使用powershell完成。

  1. 登录 Azure
    ​通过 Azure CLI 登录:az login
    浏览器会自动打开,然后选择你的 Azure 账号登录。
    在这里插入图片描述
    在这里插入图片描述
  2. 创建服务主体(Service Principal)​
    Terraform 需要通过SP 对操作 Azure 资源, 另外这个SP 需要在订阅中有contributor 或以上的角色,才能进行资源的操作。
az ad sp create-for-rbac --name "terraform-sp" --role contributor --scopes /subscriptions/<你的订阅ID>

执行后会生成以下结果, 记得要保存好信息,后续需要使用

在这里插入图片描述
3. 设置环境变量
可以在powershell或者cmd中执行:
Powershell:

$env:ARM_CLIENT_ID = "<appId>"
$env:ARM_CLIENT_SECRET = "<password>"
$env:ARM_TENANT_ID = "<tenant>"
$env:ARM_SUBSCRIPTION_ID = "<订阅ID>"

CMD:

set ARM_CLIENT_ID="<appId>"
set ARM_CLIENT_SECRET="<password>"
set ARM_TENANT_ID="<tenant>"
set ARM_SUBSCRIPTION_ID="<订阅ID>"

三、创建 Terraform 配置文件

  1. 新建项目目录: 比如D:\terraform-azure
  2. 创建以下文件:
    providers.tf :用于配置 Azure Provider
terraform {required_providers {azurerm = {source  = "hashicorp/azurerm"version = "~> 3.90.0"  # 使用最新稳定版本}}
}provider "azurerm" {features {}
}

main.tf :用于定义资源

# 创建资源组
resource "azurerm_resource_group" "example" {name     = "terraform-rg"location = "East US"
}# 创建存储账户
resource "azurerm_storage_account" "example" {name                     = "tfstorageaccount123"  # 必须全局唯一resource_group_name      = azurerm_resource_group.example.namelocation                 = azurerm_resource_group.example.locationaccount_tier             = "Standard"account_replication_type = "LRS"
}

outputs.tf :用于输出关键信息

output "storage_account_name" {value = azurerm_storage_account.example.name
}

四、部署资源

完成上面准备之后即可开始尝试创建,本人通过把下面内容放入main.tf 并运行,从而创建了一个Azure Storage Account。

terraform {required_providers {azurerm = {source  = "hashicorp/azurerm"version = "=3.0.0"}}
}# Configure the Microsoft Azure Provider
provider "azurerm" {features {}
}# 引用现有的资源组 "Architect"
data "azurerm_resource_group" "architect" {name = "Architect"  # 确保资源组已存在
}# 创建支持分层命名空间的存储账户
resource "azurerm_storage_account" "medallionadls01" {name                     = "medallionadls01"  # 必须全局唯一resource_group_name      = data.azurerm_resource_group.architect.namelocation                 = data.azurerm_resource_group.architect.locationaccount_tier             = "Standard"         # 存储层级account_replication_type = "LRS"              # 冗余类型account_kind             = "StorageV2"        # 必须为 StorageV2is_hns_enabled           = true               # 启用分层命名空间tags = {Environment = "DEV"Purpose     = "Data Lake Storage"}
}

在Powershell中按顺序执行下面命令

  1. terraform init
  2. terraform plan
  3. terraform apply --回复yes即可。

下面是一些过程截图:
在这里插入图片描述
在这里插入图片描述在这里插入图片描述在这里插入图片描述

在这里插入图片描述

五、验证资源

可以登录portal。或者通过PS 命令: az storage account list --resource-group 具体的资源组名
在这里插入图片描述

六、销毁资源

需要在Terraform的配置目录下执行,一开始本人在D 盘直接执行,不抱错但是没有效果,后来定位到本人的D:\terraform-azure即可执行:

terraform destroy -target=资源类型.资源名

本例中为: terraform destroy -target=azurerm_storage_account.medallionadls01

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

七、常见问题解决

​1. 错误:权限不足
​现象:Error: authorization.RoleAssignmentsClient#Create: Failure responding to request
​解决:确保服务主体在订阅中有 ​Contributor​ 角色。
​2. 错误:名称冲突
​现象:Storage account name ‘tfstorageaccount123’ is already taken
​解决:修改存储账户名称(如 tfstorageaccount001)。
​3. 错误:版本不兼容
​现象:Provider registry.terraform.io/hashicorp/azurerm does not have a version matching ~> 3.0
​解决:更新 providers.tf 中的版本号(如 version = “~> 3.90.0”)。

小结

至此用Terraform创建单个Azure资源已经完成。

关键字:什么是网络推广?_桂林新闻网头条_上海短视频推广_百度指数官方版

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

责任编辑: