微软云计算 Windows Azure 基础教程:云服务器创建、PaaS 迁移与避坑
2026/9/24 23:09:26 网站建设 项目流程

先说个我自己的经历。早年做项目部署,最怕的不是写代码,而是“等机器”。申请一台服务器,走流程等审批,运气好一周,碰上流程繁琐的,半个月就过去了。机器到了之后,装系统装环境,调网络配端口,动不动再折腾两天。后来我开始把业务往微软云计算 Windows Azure 上迁,这个“等机器”的环节直接消失了,登录门户点几下,几分钟就给你一台配置好系统的虚拟机;不用了,点一下释放,成本就停了。这篇文章是系列的第一篇,我会从 Azure 到底是什么、怎么上手、怎么创建第一台云服务器,到常见坑点排查,把整个过程拆开掰碎讲清楚。内容主要面向两类人:一类是刚接触云计算、之前只用过传统服务器的开发者,另一类是已经在用其他云平台、想横向对比 Azure 的运维同学。不管你是哪种,这篇都能让你对 Azure 有个完整、可落地的认识。

1. 微软云计算 Windows Azure 是什么:先搞清楚它解决的问题

很多人第一次听到“Windows Azure”,会以为这是微软的一个“云版 Windows 操作系统”,其实这是一个常见的误解。Azure 并不是一个操作系统,而是一个完整的云计算平台。它解决的核心问题,本质上是“计算资源、存储资源和网络资源怎么按需获取”这件事。

1.1 从一台物理服务器说起:云平台诞生的逻辑

在传统模式下,你要跑一个网站或者一个后台服务,需要先买一台物理服务器。这台服务器买了之后就是沉没成本,业务量小了,资源浪费;业务量突然涨了,机器算力不够,又得重新采购。更麻烦的是,机器总有坏的时候,硬盘坏了要换、网络断了要修,这些都是运维团队的工作量。

云计算平台做的事情,说白了就是把“服务器”这种实体资源抽象成一种可以随时申请、随时释放、按用量付费的服务。Azure 作为微软云计算平台,在全球多个区域部署了大规模的数据中心,里面跑着成千上万台物理服务器。你用的时候,它给你分配一部分计算和存储能力,表现为一台虚拟机、一个数据库实例,或者一个网站托管服务;你不用了,把这些资源释放,数据中心立刻把它们分配给其他用户。

这就好比以前你想喝水要自己打井,现在的做法是拧开水龙头按流量付费。水龙头后面是什么,水厂怎么运转,你不需要关心,你只要知道自己需要多少水、打开阀门就能用,这样理解 Azure 就通顺了。

1.2 Azure 在云计算版图中的位置

微软云计算平台在行业内属于第一梯队,与亚马逊的 AWS、谷歌云并列为全球三大公有云厂商。相比 AWS 起步早、生态庞杂,Azure 的一个显著优势是和企业现有技术栈的亲和度高。

如果你所在的公司已经在用 Windows Server、Active Directory、SQL Server 这些微软产品线,那么迁到 Azure 的学习成本和改造成本都会低很多。因为 Azure 对这些微软产品提供了原生的兼容和托管支持,比如在 Azure 里可以直接创建 Windows Server 虚拟机、直接把本地 SQL Server 数据库迁移到云上的托管实例,几乎不用改代码。

我见过不少公司的真实路径是这样:本地机房跑着 Windows Server,上面部署了一批 .NET 的应用,数据库用的是 SQL Server。某天机房设备老化要扩容,老板一算账,买新服务器加机房机位加电费,不如直接迁移到 Azure 上划算。于是通过 Azure 的迁移工具把虚拟机整体搬迁上去,连操作系统都不用重装,业务停机窗口控制在几个小时以内,这种平滑迁移能力确实是 Azure 的看家本领。

1.3 Azure 的核心服务全景:一张地图先搭起来

Azure 提供的服务非常多,官网列出来有上百项,新手很容易看花眼。从我实际使用的经验看,你只需要先认识四个最核心的大类,后续所有的操作基本都围绕它们展开。

第一类是计算服务,代表产品是虚拟机(Virtual Machine)和应用服务(App Service)。虚拟机相当于云上的一台电脑,你可以完全掌控它的操作系统和软件环境;应用服务则是更高级别的托管方案,你只管把代码部署上去,底层服务器、补丁更新、负载均衡这些由平台自动处理。

第二类是存储服务,代表产品是 Blob 存储、文件存储和磁盘存储。Blob 存储适合存放图片、视频、备份文件这类非结构化数据;文件存储提供了标准的 SMB 文件共享协议,可以直接挂载到多台虚拟机上共享访问;磁盘存储则是给虚拟机当系统盘和数据盘用的。

第三类是网络服务,包括虚拟网络、负载均衡器、DNS 服务等。虚拟网络用来在云上搭建你自己的私有网络环境,控制 IP 地址划分和流量路由;负载均衡器负责把用户请求分发给多台后端服务器,避免单台过载。

第四类是数据库服务,包括 Azure SQL 数据库、数据库 for MySQL、数据库 for PostgreSQL、Cosmos DB 等。云数据库的好处是自动备份、自动高可用,你不用自己搭主从复制、自己处理故障切换。

把这四类服务装进脑子里,后面实操的时候就不会迷路。你创建一台虚拟机,实际上就是同时使用了计算服务里的虚拟机产品、存储服务里的磁盘产品、网络服务里的虚拟网卡和公网 IP 产品。

2. 从注册到第一个资源组:Azure 上手前的准备工作

任何云平台都是先付费后使用,但付费并不意味着门槛高。Azure 新用户注册时会赠送免费额度和 12 个月的免费常用服务,这些额度足够你把基础流程跑一遍。我第一次注册的时候最担心的是“会不会莫名其妙被扣费”,后来发现只要搞清楚订阅和资源组的关系,这项风险其实可控。

2.1 账户与订阅的关系:用钱包来理解

Azure 的账户体系分两层:账户(Account)和订阅(Subscription)。账户就是你的登录凭证,通常是一个微软账号或者工作单位的企业账号;订阅则是计费单位,你账户下所有资源产生的费用都会汇总到某个订阅的账单里。

用钱包来比喻:账户是身份证,订阅是钱包。你可以用自己的身份证办多张银行卡,每张卡就是不同的订阅,分别记账。企业里常见的做法是:开发环境挂一个订阅,生产环境挂另一个订阅,团队各自的费用独立核算,互不影响。

注册时需要注意一件事:账号必须绑定一张国际信用卡用于验证身份,即使你用的是免费额度,也需要这张卡做担保。扣费逻辑是“先用量后结算”,系统每天统计你的资源消耗,每月生成账单从信用卡扣除。只要你不主动创建付费资源,仅使用免费额度内的服务,就不会产生实际扣款。

2.2 资源组:所有云资源的“收纳箱”

接下来要认识一个 Azure 里非常核心的概念:资源组(Resource Group)。你可以把它理解成一个收纳箱,里面装着你创建的各种云资源。一个虚拟机、一块磁盘、一个公网 IP、一个虚拟网络,都属于某个资源组。

为什么要把资源放进组里?因为云平台的资源是分散的,如果没有分组管理,你创建了 50 台虚拟机、30 个存储账户、20 个数据库实例,会完全找不到头绪。有了资源组,你可以把整个项目相关的资源装进同一个组里,然后对整个组进行统一的权限管理、成本统计和生命周期操作。

举个例子,你做一个网站项目,把它涉及的虚拟机、数据库、负载均衡器都放在名为“web-project-rg”的资源组里。等到项目下线的时候,你只需要删除这个资源组,Azure 会把这个组内所有资源一次性清除,不需要一个个手动删除,非常省事。

创建资源的流程一般是这样:登录 Azure 门户,搜索“资源组”,点击创建,输入资源组名称,选择一个区域,点击“审阅 + 创建”完成。区域的选择有一个小讲究:尽量选择离你的用户近的区域,这样网络延迟更低。如果用户主要在国内,而你使用的是国际版 Azure,可以考虑东亚地区的机房;如果使用由世纪互联运营的 Azure 中国区,那机房就在境内。不同区域的定价也有差异,选型时可以顺手对比一下。

2.3 三种操作方式:门户、CLI 和编程接口

Azure 提供了多种操作方式,新手最常用的是图形化门户(Portal),也就是在浏览器里打开 Azure 网站,用鼠标点击完成所有操作。门户的优点是直观,所有服务都做了可视化界面,创建虚拟机时每一步都有引导,适合学习阶段使用。

当你在同一个环境重复执行操作时,图形界面就略显低效了。比如你要创建 10 台配置完全一样的虚拟机,用门户操作要重复 10 次表单填写,而用命令行工具(Azure CLI)写一个循环命令,几分钟就全部搞定。Azure CLI 支持 Windows、Linux 和 macOS,安装后通过 az login 命令登录账号,就可以在终端里创建和管理云资源。

再往上一个层级是编程接口(REST API)和基础设施即代码工具(如 Terraform、Bicep)。这些主要用于自动化场景,比如在持续集成流水线里自动部署环境、按计划自动创建和销毁资源。初学者不需要一开始就掌握这些,但知道有这个能力层级,对你规划后续的学习路径有帮助。

3. 创建第一台虚拟机:从选型到连接的完整实操

虚拟机是 Azure 计算服务的核心产品,也是大多数人接触 Azure 的第一个实操项目。这一节我带你完整走一遍创建虚拟机的流程,包括选型思路、配置参数和连接方法,每个步骤我都会说明为什么这么选,帮你把过程吃透。

3.1 第一步:明确需求再动手

在门户里点“创建虚拟机”之前,先花两分钟想清楚三个问题:你要跑什么系统?预计有多少访问量?数据要不要本地冗余?

这三个问题直接对应虚拟机的三个参数:镜像、规格、磁盘类型。镜像决定操作系统和预装软件,规格决定 CPU 和内存大小,磁盘类型决定数据读写的速度和可靠性。

如果你要部署的是 Windows 应用,那镜像选 Windows Server 2019 或 2022;如果是跑开源的 Web 服务或容器,选 Ubuntu Server 或 CentOS 这类 Linux 发行版即可。规格方面,Azure 用“几 vCPU + 几 GB 内存”来描述规格,比如 Standard_D2s_v3 就是 2 核 8GB 内存。对于低并发、测试用途的场景,2 核 4GB 的 B2s 足够用;对于正式的 Web 业务,一般从 2 核 8GB 起步。

磁盘类型的选择容易被新手忽略,但直接影响成本和性能。Azure 磁盘分为标准 HDD、标准 SSD 和高级 SSD 三种。标准 HDD 最便宜,适合存放不常访问的备份数据;标准 SSD 读写性能中等,日常开发测试够用;高级 SSD 延迟极低、吞吐高,适合跑数据库这类高 IO 业务。我的建议是:系统盘用标准 SSD,如果预算允许,数据盘用高级 SSD,这样性能和成本的配比最合理。

3.2 门户创建流程:一个参数一个参数地过

明确需求后,登录 Azure 门户,在搜索栏输入“虚拟机”,点击“创建”,选择“虚拟机”。接下来会进入一个多步骤的表单,有很多选项,但关键的只有几项。

资源组选择你之前创建好的那一个。虚拟机名称按自己的项目规范命名,比如 web-server-01,不要用 test1、aaa 这类无意义的名字。区域选择按照用户分布和预算来决定,注意不同区域的虚拟机价格不同,同规格机器在价格低的区域可能便宜 20% 以上。映像按照 3.1 里的选择来,管理员账号和密码是重中之重,建议用密钥对登录而不是密码,尤其是 Linux 虚拟机,安全性能好很多。

磁盘页签下选择系统盘的类型和大小,默认给的是 30GB 或 127GB,如果系统镜像比较大,可以适当增大到 64GB。网络页签下,门户会自动帮你创建一个虚拟网络和子网,还会帮你分配一个公网 IP。这里要注意:公网 IP 是需要单独计费的,而且默认创建的是动态公网 IP,虚拟机重启后 IP 地址可能变化。如果你的业务需要一个固定的公网 IP,需要在网络页签下选择“新建”公网 IP,并将分配方式改为“静态”。

管理页签下有一些默认选项,最需要注意的是“关闭”按钮旁边的“使用 Azure 混合权益”选项。如果你公司已经有 Windows Server 的许可证,勾选这个选项可以节省一半左右的 Windows 虚拟机费用。订阅这个权益会在计费层面判断你是否拥有本地许可证,建议使用前先和公司确认清楚。

所有参数填完后,点击“审阅 + 创建”,系统会做一遍校验,然后显示“验证通过”。点击“创建”,等待几分钟,在通知栏里就能看到部署进度条。部署完成后,点击“转到资源”,就能看到虚拟机的概览页面,上面有公网 IP 地址、DNS 名称、操作系统等信息。

3.3 连接虚拟机:Windows 用 RDP,Linux 用 SSH

虚拟机创建成功以后,接下来就是连接上去操作。Windows 虚拟机的连接方式是远程桌面(RDP):在虚拟机概览页点击“连接”,选择“RDP”,系统会生成一个 .rdp 文件,下载后用 Windows 自带的“远程桌面连接”程序打开,输入创建时设置的管理员密码就能进入桌面。

Linux 虚拟机的连接方式是通过 SSH。如果你在创建时选了“SSH 公钥”作为登录方式,系统会把自动生成的私钥提供给你下载。在终端里执行 ssh azureuser@你的公网IP,然后指定私钥文件路径,就能登录到系统。如果你选的是密码登录,直接输入用户名和密码即可。

这里有一个新手比较容易踩的坑:连接不上。一半以上的情况不是因为你密码输错了,而是安全组规则没有放行对应的端口。Azure 的网络安全组(NSG)相当于虚拟机外面的一道防火墙,默认只放行了 SSH(22 端口)和 RDP(3389 端口),如果你在虚拟机上装了一个 Web 服务(比如 Nginx 监听 80 端口),外部默认是访问不了的,必须在网络安全组里添加入站规则,允许 80 端口从互联网访问。这个设置容易被忽略,但一旦理解了,排查问题就快得多。

3.4 数据盘与备份设置:别让数据裸奔

创建虚拟机时,默认只有一块系统盘。系统盘存放的是操作系统和相关配置文件,不适合存放业务数据。建议单独创建一块数据盘,挂载到虚拟机上用于存放数据库文件、应用日志等数据。

在虚拟机的“磁盘”页签下点击“创建并附加新磁盘”,设置大小和类型。数据盘创建后,在 Linux 系统里需要执行 mkfs 格式化、mount 挂载操作才能使用;Windows 系统里需要在“磁盘管理”工具中联机并分配盘符。这些操作完成后,数据盘才能真正工作。

备份方面,Azure 提供了恢复服务保管库(Recovery Services Vault)服务,可以定期对虚拟机做快照备份。创建备份策略时,建议按“每日备份、保留 30 天”这种基础策略来配置,成本不高,但关键时刻能救你一把。我见过不止一次因为没配置备份,数据库被误删后只能靠“有没有导出过 SQL 脚本”来自救的案例,那场面真的很揪心。

4. 用托管服务替代自建:从 IaaS 到 PaaS 的进阶路线

虚拟机跑起来了,业务也能访问了,但这只是上云的第一层。虚拟机模式俗称 IaaS(基础设施即服务),你拥有对操作系统和软件环境的完全控制权,但同时也承担了所有运维责任:打补丁、防病毒、做高可用、监控磁盘空间,这些都是你自己要操心的。

如果你的目标是“快速把业务跑起来、减少运维负担”,那更适合你的是 PaaS(平台即服务)层级的服务。PaaS 的意思是平台把运行环境一并托管了,你只管代码,剩下的交给我。对于大部分中小团队和独立开发者,从 IaaS 到 PaaS 是一条性价比非常高的路线。

4.1 Azure 应用服务:把网站和 API 快速跑起来

应用服务(App Service)是 Azure 里最常用的 PaaS 产品之一。它支持多种语言和框架,包括 .NET、Java、Node.js、Python、PHP,也支持直接从 GitHub、Azure DevOps 或本地 Git 仓库做持续部署。

使用流程是这样的:在门户里搜索“应用服务”,点击“创建”,选择运行时栈(比如 .NET 8 或 Node.js 18),选择区域和定价计划。免费计划 F1 可以让你以 0 成本测试基础功能,但它有配额限制,CPU 时间和内存都有每日上限;正式部署建议至少使用 S1 计划,它提供 1 核 1.75GB 内存和 50GB 存储,还自带每日 10GB 的出站流量。

应用服务创建完成后,Azure 会给你一个类似 your-app-name.azurewebsites.net 的默认域名。你可以通过 FTP 上传代码,也可以通过 Git 把代码推送到应用服务的部署仓库。推送完成后,平台自动重启应用,你的网站就在几分钟内从“本地能跑”变成了“公网可访问”。这个体验比自建虚拟机然后手动装 Nginx、配置反向代理、上传代码要顺滑太多。

4.2 云数据库:一键搞定备份和高可用

自建数据库是最累的运维工作之一。你不仅要处理安装、调参,还要担心数据备份是否完整、主从切换是否可靠。用云数据库,这些都会被平台接管。

Azure 的数据库产品线里,Azure SQL 数据库适合 SQL Server 用户,Azure 数据库 for MySQL 和 for PostgreSQL 适合开源技术栈用户。创建时最关键的选择是“计算 + 存储”层和“冗余选项”。预算有限时,可以选择“常规用途”层级,它平衡了性能和成本;业务对可用性要求高时,选择“业务关键”层级或启用“异地冗余备份”,这样即使整个区域发生故障,你的数据也有备份在异地可用。

我实际测试过,从本地的 SQL Server 迁移到 Azure SQL 数据库,微软提供的 Data Migration Assistant 工具能自动评估兼容性并生成迁移脚本。如果应用的 SQL 语法比较标准,基本上改一下连接字符串就能连上云数据库,迁移成本比想象中低很多。

4.3 存储服务的四个子类型:按场景选对存储

Azure 存储(Storage Account)是一个大类,里面包含四个子服务,不同场景要用不同的子服务。

Blob(对象存储)用于存放图片、视频、压缩包、备份文件这类非结构化数据。它支持通过 HTTPS 直接访问,也可以设置 CDN 加速分发。文件存储(Azure Files)提供标准的 SMB 协议文件共享,可以挂载到多台虚拟机上,适合做共享目录。队列存储(Queue Storage)是一个轻量级的消息队列,适合在应用组件之间传递异步消息。表存储(Table Storage)是一个 NoSQL 键值存储,适合海量结构化数据的快速读写,成本比 SQL 数据库低得多。

一个常见的组合方案是这样的:网站的前端代码放在应用服务里,用户上传的图片存在 Blob 存储中,数据库记录存在 Azure SQL 数据库中,应用之间的异步任务(比如发送邮件、生成报表)通过队列存储来调度。这套架构的成本可控、扩展性好,而且每个环节都是 Azure 的托管服务,不需要你亲自维护任何一台服务器。

5. 成本控制与常见问题排查:这部分是花钱买来的经验

云平台用起来爽,但账单如果不盯紧,月底看到账单数字可能会吓一跳。这一节我把自己的踩坑经历和排查方法整理出来,希望能帮你少走弯路。

5.1 账单是怎么算的:三个最容易被忽视的计费点

第一,虚拟机只要处于“运行中”状态就在计费,不管你里面有没有业务流量。很多人创建了虚拟机测试一下功能,忘了关停,一个月下来几十美元就没有了。Azure 虚拟机有两种停止方式:一种是“停止”(Stop),相当于关机,计算资源不再计费,但磁盘仍需付费;另一种是“停止并释放”(Stop and Deallocate),计算和磁盘资源都释放,只保留磁盘快照,费用更低。测试完用的机器,建议选择“停止并释放”。

第二,公网 IP 是单独计费的。尤其是动态公网 IP,即使你没有任何关联的虚拟机,只要它存在就会每天产生少量费用。如果虚拟机已删除但网络接口还在,公网 IP 也会残留。建议定期检查门户里的“公网 IP”资源列表,把不用的删掉。

第三,存储是按照“实际占用空间”计费的,而不是按磁盘分配大小。虚拟机停机后,系统盘和数据盘依然在存储账户里占着空间、产生费用,如果磁盘很大而只有少量数据,成本会很亏。给虚拟机做快照时同样如此,快照也是按照实际占用空间计费的。

要有效控制成本,建议从注册账号开始就设置成本预算。在 Azure 门户的“成本管理 + 计费”里,可以设置月度预算和告警,当消费达到预算的 80% 时,系统会给你发邮件提醒。这个功能免费,但效果非常显著,能在账单失控之前起到预警作用。

5.2 连接不上虚拟机:按这个顺序排查

“虚拟机创建好了,IP 也看到了,就是连不上”——我在技术社群里被问过无数次这个问题。按照以下顺序排查,绝大多数情况都能解决。

第一步,确认虚拟机处于“运行中”状态。如果门户里显示“已停止”或“已释放”,先启动虚拟机再试。第二步,确认安全组(NSG)规则里放行了你需要的端口。如果你在 Linux 上要连 SSH,检查入站规则是否允许源地址为“Internet”或你的本机 IP 访问 22 端口;如果是要访问 Web,检查 80 和 443 端口是否放行。

第三步,确认服务本身在虚拟机上监听了正确的端口。在虚拟机的控制台(门户提供的“启动诊断”功能)里登录系统,执行 ss -lntp 查看端口监听状态,确认服务没有因为配置错误而没启动。第四步,如果以上都没问题,检查虚拟机的网络配置,确认公网 IP 是从虚拟机的网卡关联出去的,而不是一个孤立的、未关联的 IP。

我遇到过一个典型案例:安全组规则放行没问题,服务监听也没问题,但外面就是连不上。最后发现是虚拟机的网卡上还绑定着一个旧的网络安全组,新旧两条 NSG 规则叠加导致流量被拒。把旧的 NSG 解绑后,问题立刻解决。这个排查思路后来也总结成了一个习惯:一个网卡只绑一个 NSG,规则越简单越不容易出错。

5.3 其他典型问题速查

我在使用 Azure 过程中还整理了一些高频问题的排查记录,这些都属于“不查不知道、一查吓一跳”类型的问题。第一,Windows 虚拟机远程桌面连上后黑屏,大概率是系统的 GPU 驱动或者远程桌面服务异常,可以在启动诊断里重启远程桌面服务试试看。第二,创建虚拟机时报“配额不足”,这是因为你的订阅在某些区域有 vCPU 配额上限,可以在门户里提交配额增加申请,通常几个工作日内会审核通过。第三,Linux 虚拟机数据盘重启后“消失”了,这是因为你没有把挂载配置写入 /etc/fstab,系统重启后不会自动挂载数据盘,按提示把挂载信息追加到 fstab 文件即可永久生效。

问题现象可能原因解决思路
无法通过 RDP/SSH 连接安全组规则未放行端口检查 NSG 入站规则,确认端口开放
Windows 虚机远程桌面黑屏远程桌面服务异常使用启动诊断功能重启服务
创建资源报错配额不足订阅 vCPU 配额不够提交配额增加申请
Linux 重启后数据盘丢失未写入 /etc/fstab编辑 fstab 添加自动挂载配置
公网 IP 无法访问IP 未关联到网卡检查网卡配置,重新关联 IP

我自己的习惯是在做每一步关键操作时都打开“通知”面板看部署状态,出现失败提示时先把鼠标悬停在错误信息上,Azure 通常会在错误提示里附带资源 ID 和失败原因,这两个信息对后续排查非常有用。另外,新手阶段强烈建议在非生产订阅里大胆试错,Azure 门户里很多服务都有“快速启动模板”,可以直接部署整套环境,看到真实效果后再去理解背后的配置逻辑,比看文档效率高得多。

这套微软云计算 Windows Azure 的基础体系,就是按“理解概念、熟悉门户、动手实操、排查问题”这个节奏逐步建立的。前期多花一点时间把虚拟机、存储、网络这三个基本款玩明白,后续无论是接触 Kubernetes 容器服务、函数计算还是 AI 服务,都会发现它们都是建立在相同的基础能力之上的。把基本功打牢,后面学什么都快。

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询