思路浅析 在我们分析的 Azure Terraform 系列文中有介绍到关于 Terraform 的状态文件远程存储的问题,我们在  Azure DevOps Pipeline 的 Task Job 加 azure_cli_script 执行内联脚本(该脚本帮我们创建好 Terraform 状态文件存储所在的 Azure Resource Group. Azure Storage Account.Azure KeyVault 等资源),需要注意的是,内联脚本中有使用动态变量,该变量临时存储 Az…
一,引言 Azure Pipeline 管道是一个自动化过程:但是往往我们由于某种原因,需要在多个阶段之前获得批准之后再继续下一步流程,所以我们可以向Azure Pipeline 管道添加审批!批准流程可帮助我们进一步控制自己的管道:我们可以控制管道内特定阶段的 Step 开始,通过审批,并决定 Azure Pipeline 管道何时完成. 而至于为什么要添加审批流程,是因为基础设施资源的部署是需要进行评估,慎重操作.有了审批,可以查看前一阶段以确认配置代码是否正确. -------------…
一,引言 之前一篇文章有讲解到利用 利用Azure DevOps 实现自动化部署基础资源,当时 TF 代码没有针对 Azure 各个资源的封装,所有的资源代码全部写在一个 main.tf 文件中.然后还有讲到 Azure Resource Common Module 的 TF 代码的封装.之前还在Azure Terraform 第四节讲到利用 Azure Storage 远程状态文件存储.那么今天我们尝试将封装过 Common Module 的 TF 代码,结合 TF 状态文件远端存储,实现自动…
一,引言 上一篇我们结合学习 Azure Traffic Manger 的内容,做了一个负载均衡的基础设施架构.通过 Terraform 部署执行计划,将整个 Azure Traffic Manager 结合 Azure Web App 的架构快速部署到云上.然后再将我们的示例项目代码部署到对应的不同区域的Azure Web 应用程序上.最后Azure Traffic Manager 将不同地理位置的用户的访问请求转发到后端的 Azure Web 应用上. 这时,又有人提问了,现在都流行 Dev…
一,引言 上一篇讲解到利用 Azure DevOps 将整个 Azure Web App,Azure Traffic Manager profile,Azure Storage Account,Azure Key Vault 部署到 Azure 上,我们也知道整个 Infra 架构已经实现了自动化部署,而 整个项目Web应该却没事实现CI/CD,那么我们今天继续关注 Azure DevOps. --------------------Azure Terraform 系列-------------…
一,引言 上一篇文章记录了利用 Azure DevOps 跨云进行构建 Docker images,并且将构建好的 Docker Images 推送到 AWS 的 ECR 中.今天我们继续讲解 Azure DevOps 的 Pipeline,利用 Release Pipeline 实现 Terraform for AWS Infrastructure Resources 自动部署,我们的目标是将 images 部署到 AWS ECS 上. -------------------- 我是分割线 -…
一,引言 之前我讲过的所有的案例中,都是将整个Azure Resource 部署到同一个订阅下,没有做到灵活的在 Azure Pipeline 在运行前选择需要部署的环境.在实际的项目开发中,我们也会遇到将这些基础设施资源验证完成后,分别部署到 DEV,UAT,PRD 等多个环境 .那么我们就带着个整个问题开始今天的分析. --------------------Azure Terraform 系列-------------------- 1,Azure Terraform(一)入门简介 2,A…
上次介绍了Azure Application Insights,实现了.net core程序的监控功能.这次让我们来看看Azure DevOps Pipeline功能.Azure DevOps Pipeline 是Azure DevOps里面的一个组件,对于12个月试用账号同样永久免费. 持续集成CI 持续集成指的是,频繁地(一天多次)将代码集成到主干. 它的好处主要有两个. (1)快速发现错误.每完成一点更新,就集成到主干,可以快速发现错误,定位错误也比较容易. (2)防止分支大幅偏离主干.如…
上一次我们讲了使用Azure DevOps Pipeline实现.Net Core程序的CI.这次我们来演示下如何使用Azure DevOps实现.Net Core程序的CD. 实现本次目标我们除了Azure DevOps外还需要: 一台安装了Docker的主机 一个 Docker Hub 账号 上一次我们的CI实现了: 发布>编译>单元测试 这次我们要实现剩下的几个步骤: 生成镜像>推送镜像>部署 创建Docker镜像仓库 我们生成的镜像需要有个存放的地方.各大云厂商其实都有这种…
一,引言 起因是前两天项目上做测试,需要我把写好的基于.NET 5 的 Web 测试程序作成 Docker 镜像.当我在本地验证完功能后,准备利用 Docker 构建应用程序镜像的时候,发现系统不支持安装 Docker Desktop.这下看来只能利用Azure DevOps 自动创建 Docker 镜像了. 二,正文 1,创建 Azure Container Registry 服务 前置条件,我们得先手动创建 镜像存储库.我们登录到 Azure Portal 上,点击 "Create a re…
一,引言 最近项目上让开始学习AWS,作为一名合格的开发人员,当然也是学会利用Azure DevOps Pipeline 将应用程序部署到 AWS ECS(完全托管的容器编排服务).我们要学会将应用程序部署到多云的环境上,技多不压身!!!! 首先肯定的是,我们必须先依赖Azure DevOps 进行应用程序构建 docker images .并且将 dockre image 推送到 AWS ECR(完全托管的容器注册表) 二,正文 1,创建AWS ECR 容器注册表 登陆到AWS 控制台后,搜索…
一,引言 之前我们在使用 Terraform 构筑一下 Azure 云资源的时候,直接将所以需要创建的资源全面写在 main.tf 这个文件中,这样写主要是为了演示使用,但是在实际的 Terraform 代码的整个项目代码结构是需要封装具体的 "Module",这里提到了 "Module" 也就是新的概念 "Common Module"."Common Mudule" 其实对于开发来说,其实就是封装的 "类库&quo…
思路浅析 使用 Terraform Code 部署 Azure 基础设施资源是特别受欢迎的,我曾经有写文章分享过利用 Azure DevOps 自动部署 Terraform Code 所描述的 Azure 基础设施资源.但是有些人对于Azure DevOps 可能比较陌生,再加上 Azure DevOps 的 Parallel jobs 付费作业.所以作为替代方案,今天给大家分享如何使用 GitHub Actions 部署 Terraform Code. 配置 Azure Service Pri…
在某些场景下,客户需要把Azure Storage的某一个container内的内容都下载到本地.当然采用PowerShell可以定时的进行下载的动作,但有时客户的环境是Linux或MacOS,这时需要采用Azure xplate CLI实现这个功能.本文将介绍如何采用Azure CLI实现这个功能. 安装Azure CLI,可以参考: http://www.cnblogs.com/hengwei/p/5183493.html http://www.cnblogs.com/hengwei/p/4…
一,引言 众所周知,当企业将项目整体架构资源迁移到云上,云基础设施架构师就要根据现有项目搭建整体项目的基础设施资源的架构,然后我们的云运维工程师就要根据设计好基础设施的架构图来创建云上资源,但是在构筑的过程太单一,太传统.动动鼠标创建资源的方式成本太高,同时还有一定几率出错的风险,这种方式已经不适合现代企业迁移基础设施架构的方式.如果能够通过一种 IT 基础设施架构自动化编排工具来管理维护IT资源岂不能够大大降低企业在基础设施构建过程中成本问题,同时也可以提高云基础设施开发人员在 IAC(基础设…
一,引言 上篇文章开始,我们简单介绍了以下通过基础设施管理工具----- Terraform,通过它来统一管理复杂的云基础设施资源.作为入门演示,使用Terraform 部署Azure 资源组的方式直观的感受到iac 工具带来的强大便利.接下来,今天介绍 Terraform 语法详解,从代码的角度来理解Azure 各个资源模块更好的理解如果部署资源. -------------------- Azure Terraform 系列 -------------------- 1,Azure Terr…
一,引言 上一节关于 Terraform 的文章讲到 Terraform 使用到的一些语法,以及通过演示使用 Terraform 在Azure 上部署资源组,极大的方便了基础设施实施人员,也提高了基础设施团队的工作效率,同时可以利用 IAC 工具来管理云基础设施资源. 这个时候就有人问到,既然 Terraform 这么强大,那可不可以自动化部署其他Azure 资源,比方我们公司的项目就部署在Azure Web 应用上,用户访问的流量通过 Traffic Manager(流量配置分发管理器) 将流…
问题描述 使用 Azure 虚拟网络,Azure APIM 可以管理无法通过 Internet 访问的 API,达到以保护企业内部的后端API的目的.在虚拟网络中,启用网络安全组(NSG:Network Security Group)来控制出站,入站的端口,我们可以形象的把它比喻成一道门,需要满足条件的流量才能通过这道安全的大门. 通过安全大门以后,我们就需要有路,才能达到目的.而默认的网络路径由Azure的骨干网络控制,如果需要通过公司自己的防火墙(Azure Firewall或企业自己的防火…
<Windows Azure Platform 系列文章目录> 对于传统的自建数据中心,从底层的Network,Storage,Servers,Virtualization,中间层的OS,Middleware,Runtime,最上层的Application,Data,都需要企业进行管理.这就好比农村自建房. 对于公有云平台,一般分为三种类型: IaaS, PaaS和SaaS. Microsoft Azure平台属于IaaS和PaaS范畴. 1. IaaS 对于用户来说,底层的Network,…
<Windows Azure Platform 系列文章目录> 在上一节中,笔者介绍了我们在Azure性能测试之前,首先需要提交<渗透性测试表> Windows Azure HandBook (8) Azure性能测试(1) 接下来,笔者将介绍做性能测试时,需要注意的问题介绍一下: (1)尽可能把测试机,与Web服务器,放在同一个内网进行性能测试 这样可以把网络延时带来的负面因素,降到最低 (2)如果测试机在本地,Web服务器在云端.需要考虑本地网络是否有足够的上行带宽,还要考虑本…
(此文章同时发表在本人微信公众号"dotNET每日精华文章") Azure Automation是Azure内置的一项自动化运维基础功能,微软为了让大家更快上手使用这项功能,特意推出了一本免费电子书供大家下载阅读. 随着Azure在各国的不断落地和推广,微软也加大了Azure技术的布道工作.最近微软就开始发布一套名为"微软Azure基础(Microsoft Azure Essentials)"的系列电子书,第一本涉及Azure的基础知识,而第二本就详细讲述了Azur…
Stephen MaloneAzure网络 - DNS和 Traffic Manager高级项目经理 我们非常高兴地宣布,中国版 Azure中现已提供 Azure Traffic Manager.Azure Traffic Manager 是一种流量管理解决方案,可促进部署到 Azure或/和内部部署的应用程序的弹性.性能和可伸缩性.中国版 Azure Traffic Manager是一项正式发布的服务,可通过 Azure 门户.Azure服务管理 API和 PowerShell进行管理. Az…
什么是 Azure PowerShell? Azure PowerShell 是一组模块,提供用于通过 Windows PowerShell 管理 Azure 的 cmdlet.你可以使用 cmdlet 来创建.测试.部署和管理通过 Azure 平台传送的解决方案和服务.在大多数情况下,这些 cmdlet 可用于执行在 Azure 经典管理门户中可以执行的任务,例如,创建和配置云服务.虚拟机.虚拟网络和 Web 应用. 版本控制的工作原理 Azure PowerShell 使用语义版本控制,这意…
问题描述 由于Azure Redis的性能在不同级别表现不同,当需要升级/缩放Redis的时候,从使用者的角度,需要知道有那些步骤? 注意事项? 潜在影响?停机事件窗口? 升级预估时间? 解决方案 从使用的步骤出发,升级的步骤为: 1)Azure门户页面操作 选择缩放(Scale)目录 选择需要的级别(C1 ~ C6, P1 ~P5) 点击Select按钮确认 2)使用Powershell命令 使用 Set-AzRedisCache 来缩放 Azure Redis 缓存实例,修改 Size.Sk…
问题描述 Key Vault (密钥保管库) 能不能针对用户授权实现指定用户只能访问某个或某些特定的key? 如当前有两个用户(User1, User2),在Key Vault中有10个Key,User1只能访问前5个Key,User2只能访问后5个Key. 问题分析 Azure 密钥保管库是一种云服务,用于保护加密密钥和机密(例如证书.连接字符串和密码). 因为此数据是敏感数据和业务关键数据,所以需要保护对密钥保管库的访问,只允许得到授权的应用程序和用户进行访问. 密钥保管库的访问分为两种:管…
<Windows Azure Platform 系列文章目录> 本文介绍的是国内由世纪互联运维的Azure China. 本文介绍的Azure管理界面是Classic Model,网址:https://manage.windowsazure.cn/ 我们在使用Azure虚拟机的时候,需要对Azure虚拟机进行备份.我们可以使用Azure Backup备份服务,备份虚拟机. 优势如下: 1.无需管理Azure存储账户 Azure备份服务,备份的文件其实都是保存在Azure Storage里的.…
<Windows Azure Platform 系列文章目录> 首先是Q&A时间 1.我在Azure Global拥有测试账号或者免费的MSDN订阅账号,这个账号可以在国内Azure China使用吗? 回答:不可以.Microsoft Azure在国内和国外有2套系统. (1)Azure Global.域名是www.windowsazure.com.是由微软运营的,数据中心在中国大陆以外的地区.客户可以通过Windows Live ID登陆,MSDN订阅用户每月可以免费试用一定额度的…
<Windows Azure Platform 系列文章目录> 在之前的文章中,笔者了Azure VM虚拟机,分为A系列和D系列2种 Microsoft Azure News(4) Azure新D系列虚拟机上线 2016-05-07,今天世纪互联运维的Azure China,正式宣布CPU为DV2系列的Azure VM,正式在国内商用. VM分为D1至D14,一共8种.如下表: VM Size CPU Core RAM OS Disk(windows) Tem Disk(SSD) Attach…
通过上一篇博文可以得知,Azure其实是个平台,上面跑的服务五花八门,可以相互分开使用,同时也可以相互结合. 那我们应该如何来学习Azure呢? 其实有很多种选择,正所谓条条大路通罗马, 官方的training kit 提供了五种选择分别是: Web Site,Virtual Machine,Cloud Service, Building Block Services,Mobile 详情可以参看:通过Trainingkit对Azure有一个初步的了解 我将这五种选择根据自己理解加以划分,希望能帮…
概念 这一节是关于让设置了Azure的虚拟机,它包括的Visual Studio 2013 RC旗舰版和SQL Server 2012 Express的 . 在此动手实验中,您将探索建立使用Windows Azure库的虚拟机的Windows Azure的虚拟机的基本要素. 一旦一个基本的虚拟机已经安装,我们将添加的SQL Server 2012 Express. 我们的目标是,你将有一个相当的基础设施,开发人员将需要. 您将有Visual Studio 2013 RC旗舰和SQL Server…