优化 Azure 成本,实现财务目标

点击上方蓝字关注“汪宇杰博客”

原文:Omar Khan General Manager, Microsoft Azure

翻译:汪宇杰

导语

我们的许多客户都面临着如何满足关键 IT 项目的资金需求的困难决策。我们在此共同帮助您实现财务目标。确保 Azure 工作负载的成本得到优化有助于释放资金,以支持远程工作等基本激增区域。

根据 Flexera 的 2020 年云服务状况报告,成本优化连续第四年成为云的最高优先级计划

https://info.flexera.com/SLO-CM-REPORT-State-of-the-Cloud-2020

今天,我们将介绍 Azure 工具、产品/服务和指导,这些工具、优惠和指南可帮助您管理和优化云成本。您将学习如何理解和预测您的账单、成本优化您的Azure资源以及控制您的支出。然后,我们将向您展示您现在可以做的七件事开始节省成本。

理解和预测您的成本

若要管理和优化 Azure 成本,首先需要了解现在的支出,并预测当前和计划的项目将来可能花费的帐单。

Azure Cost Management + Billing (成本管理 – 计费)为您提供了一套完整的云成本管理功能。您可以使用成本管理 – 计费:

  • 监视和分析 Azure 帐单

  • 设置预算和支出警报

  • 为团队和项目分配额度

当您开始新的优先级工作负载或重新审视现有工作负载以寻求成本优化机会时,您需要估计所涉及的成本。成本管理 – 计费显示丰富的运营和财务见解,包括成本预测。此外,Azure 定价计算器和总拥有成本 (TCO) 计算器可帮助您估计下一个 Azure 项目的成本。

https://azure.microsoft.com/en-us/pricing/calculator/

https://azure.microsoft.com/en-us/pricing/tco/calculator/

优化您的工作负载成本

一旦您更好地了解了现在和将来的支出,就可以专注于成本优化 Azure 资源和工作负荷。在此,Azure AdvisorMicrosoft Azure 良好构建框架(Well-Architected Framework)是我们的主要优化工具,而关键的 Azure 产品/服务/服务以及许可条款(如 Azure 混合权益和 Azure 预留)可以帮助您实现显著节省。

https://azure.microsoft.com/en-us/services/advisor/ 

https://aka.ms/theframework 

Azure Advisor 通过基于配置和使用数据的个性化最佳实践建议,帮助您以成本优化 Azure 资源。例如,Azure Advisor 可以帮助您识别未使用的资源(如空闲虚拟机 (VM),并查找适合 SQL 数据库等正确大小的资源的机会。

Azure 良好构建框架(Well-Architected Framework)在更广泛的体系结构级别提供指导和最佳实践,以帮助您降低成本优化工作负荷。您还可以以 Azure 精心构建的审核从成本角度评估当前或计划中的工作负载,以获得有关如何改进的定制建议。

此外,在节省成本方面,Azure优惠和许可条款可能会产生很大的变化,其中包括:

  • Azure混合优势:对于Windows Server和SQL Server,AWS的价格是Azure的五倍。将本地工作负载迁移到Azure时节约成本。

    https://azure.microsoft.com/en-us/pricing/hybrid-benefit/

  • Azure预订:如果您以预订价格预付一年或三年的费用,则可以享受Azure服务的按使用即付定价的最高72%的折扣。

    https://azure.microsoft.com/en-us/reservations/

  • Azure Spot 虚拟机:以低折扣使用未使用的Azure计算容量-与按需购买的价格相比,高达90%。

    https://azure.microsoft.com/en-us/pricing/spot/

  • Azure开发/测试定价:在正在进行的开发和测试中利用大幅折扣,并避免在VM上支付微软软件费用。

    https://azure.microsoft.com/en-us/pricing/dev-test/

控制成本

最后,您将需要制定组织范围内的成本管理政策和护栏,以便在保持成本可控的同时解放您的团队以更快地前进。

对于许多客户来说,管理成本是云的一个主要问题。平衡工作负载需求(如性能需求和可靠性需求)与云成本之间可能具有挑战性,尤其是在业务转型时期,如我们今天所看到的那样。作为云治理策略的一部分,Microsoft Azure 云框架上手指南提供组织成本管理指导。本指南可以通过成本管理最佳实践帮助降低云支出风险。

https://aka.ms/adopt

https://docs.microsoft.com/en-us/azure/cloud-adoption-framework/govern/cost-management/

为成本管理设置组织策略后,可以使用 Azure 策略直接在 Azure 环境中实施这些成本控制和护栏,以实现大规模实时云合规性。

优化 Azure 成本的 7 种方法

使用许多工具、要利用的优惠以及要遵循的最佳实践,您可能想知道如何开始使用。为了帮助您快速发展,我们建议从以下七种方法开始优化 Azure 成本。

  • 关闭未使用的资源:使用 Azure Advisor 识别空闲虚拟机、ExpressRoute 电路和其他资源。获取有关要关闭的资源的建议,并查看将节省多少资源。

  • 大小未充分利用的资源:使用 Azure Advisor 查找未充分利用的资源,并获取有关如何通过重新配置或合并这些资源来减少支出的建议。

  • 为一致的工作负载预留实例:提前预留资源时节省资金。此外,享受每月付款选项,无需额外付费。

  • 利用 Azure 混合优势:将 Windows 服务器和 SQL Server 本地许可证与软件保障一起带到 Azure 以大量节省成本。

  • 获取开发环境的 Azure 开发/测试定价:获取 Azure 上的费率折扣以支持开发和测试方案。

  • 设置预算并将成本分配给团队和项目:使用 Azure 成本管理为使用或订阅的 Azure 服务创建和管理预算,并监视组织的云支出。

  • 探索无服务器技术和新体系结构:使用最佳实践和经过验证的模式在 Azure 上构建应用和解决方案的指导来优化工作负荷。

成本优化上手

云成本优化从未像现在这样重要。Azure 为您提供工具、优惠和最佳实践,帮助您在此困难时期优化云成本并实现技术和业务目标。

我们还开始一个新的博客系列,以帮助您优化 Azure 环境。请尽快查看 Azure 博客,了解最新的成本优化指南和最佳实践,或在 Azure 页面上访问成本优化以了解更多信息。

https://aka.ms/costoptimization

汪宇杰博客

.NET | Azure | 微软MVP

长按二维码获取我的最新技术分享

喜欢本篇内容请点个在看

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/308954.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

集合的定义与并查操作(C语言)

代码如下: #define MAXN 1000 /* 集合最大元素个数 */ typedef int ElementType; /* 默认元素可以用非负整数表示 */ typedef int SetName; /* 默认用根结点的下标作为集合名称 */ typedef ElementType SetType[MAXN]; /…

采用config方式灵活配置我们的Quarz.net中的Job,Trigger

经常在项目中遇到定时任务的时候,通常第一个想到的是Timer定时器,但是这玩意功能太弱鸡,实际上通常采用的是专业化的第三方调度框架,比如说Quartz,它具有功能强大和应用的灵活性,我想使用过的人都非常了解&…

hash table(开放寻址法-双重散列实现的哈希表)

hash table(开放寻址法-双重散列实现的哈希表&#xff09; #ifndef C11LEARN_HASHDOUBLE_H #define C11LEARN_HASHDOUBLE_H #include "HashLiner.h" template<typename T> class HashDouble:public HashLiner<T>{ protected:virtual int hashing(int key…

对于任给的一张无向带权连通图,求出其最小生成树(C++)

对于任给的一张无向带权连通图&#xff0c;求出其最小生成树。 题目要求: (1)编程创建一幅图 (2)输出创建的图 (3)编写Prim算法代码&#xff0c;实现图的最小生成树求解&#xff0c;且输出最小生成树 (4)编写Kruskal算法代码&#xff0c;实现图的最小生成树求解&#xff0c;且…

使用.Net Core实现的一个图形验证码

SimpleCaptcha是一个使用简单&#xff0c;基于.Net Standard 2.0的图形验证码模块。它的灵感来源于Edi.Wang的这篇文章https://edi.wang/post/2018/10/13/generate-captcha-code-aspnet-core&#xff0c;我将其中生成验证码的代码抽取出来进行封装得到了这个模块。下面介绍一下…

hash table(全域散列法实现的哈希表)

hash table(全域散列法实现的哈希表&#xff09; 利用每次重建哈希表时随机生成散列函数 #ifndef C11LEARN_HASHUNIVERSAL_H #define C11LEARN_HASHUNIVERSAL_H #include "Chain.h" #include "../tools/random.h" template<typename T> class HashU…

Maven编译项目时报错:不再支持源选项 5。请使用 6 或更高版本。 不再支持目标选项 1.5。请使用 1.6 或更高版本。

在使用Maven编译项目时报错&#xff1a; 不再支持源选项 5。请使用 6 或更高版本。 不再支持目标选项 1.5。请使用 1.6 或更高版本。 在项目pom.xml文件中增加maven编译的jdk版本设置&#xff0c;maven.compiler.source和maven.compiler.target&#xff1a; <properties&…

random(随机函数生成)

random(随机函数生成&#xff09; #ifndef C11LEARN_RANDOM_H #define C11LEARN_RANDOM_H #include <time.h> #include <stdlib.h> int random_include_left_right(int left,int right); int random_only_include_left(int left,int right); int random_only_incl…

ABP框架 v3.0 已发布!

我们很高兴地宣布,ABP框架和ABP商业版3.0版已经发布.与常规的2周发布一个版本不同的是, 这个版本用了4周的时间.关闭了119个issue,合并了89个pull request 和主框架仓库中的798次提交.由于这是一个主要版本,它也包括了一些重大更改.不要害怕,这些变化都容易对应,并且下面会详细…

C++实现dijkstra单源最短路径

代码如下: #include <iostream> using namespace std; const int N 30; typedef char ElemType; const double noEdge 99999;class Graph { private:double G[N][N];int vertexN, edgeN;double dist[N];bool vis[N];int path[N];int sv;ElemType data[N];int findMinD…

hash table(完全散列实现的哈希表)

hash table(完全散列实现的哈希表) 完全散列 特点&#xff1a;静态的&#xff0c;创建时候完成了散列表的生成。 不可以删&#xff0c;也不可以增加数据。只可以修改数据。 内部用全域散列生成 #ifndef C11LEARN_HASHPERFECT_H #define C11LEARN_HASHPERFECT_H #include &quo…

WPF 框架全构建环境虚拟机硬盘分享

现在 WPF 完全开源了&#xff0c;咱可以构建自己私有的版本。我分享一个虚拟机硬盘给你&#xff0c;只要你下载下来&#xff0c;通过 VMWare 导入&#xff0c;即可无需任何配置&#xff0c;拿到一个能构建 WPF 官方源代码的全构建环境。可以用来只做你的定制版的 WPF 框架现在 …

C++从vector中删除指定元素

①只删除一个元素 vector<int> num;for(vector<int>::iterator iternum.begin();iter!num.end();iter){ //从vector中删除指定的某一个元素 if(*iterk){num.erase(iter);break;} }②删除指定的多个重复元素 erase函数的返回的是指向被删除元素的下一个元素…

二叉树的遍历(算法导论第三版12.1-4)(包含先序遍历,后序遍历和中序遍历)

二叉树的遍历(算法导论第三版12.1-4) 1⃣️先序遍历 template<typename T> void preorder_tree_wald(BinaryTreeNode<T> *node) {if(node! nullptr){std::cout<<node->key<<" ";preorder_tree_wald(node->left);preorder_tree_wald(…

基于.NetCore3.1搭建项目系列 —— 使用Swagger做Api文档 (下篇)

前言回顾上一篇文章《使用Swagger做Api文档 》&#xff0c;文中介绍了在.net core 3.1中&#xff0c;利用Swagger轻量级框架&#xff0c;如何引入程序包&#xff0c;配置服务&#xff0c;注册中间件&#xff0c;一步一步的实现&#xff0c;最终实现生产自动生产API接口说明文档…

C++ vector容器中常见的三种遍历方式

1.迭代器 for (std::vector<int>::iterator it vecTest.begin(); it ! vecTest.end(); it){tempNum *it;}2.C11 新增关键字auto for (auto it : vecTest){tempNum it;}3.对C念念不舍的童鞋们习惯的数组写法 for (size_t i 0; i < maxCount; i){tempNum vecTest[i…

二叉树的中序遍历非递归方法(算法导论第三版12.1-3)

二叉树的中序遍历非递归方法&#xff08;算法导论第三版12.1-3&#xff09; 1⃣️用栈实现 template<typename T> void inorder_tree_walk_non_recursion_by_stack(BinaryTreeNode<T> *node) {Stack<BinaryTreeNode<T>*> stack;stack.push(node);whi…

C++ vector容器中用erase函数和迭代器删除重复元素问题分析

第一种写法&#xff1a; #include <iostream> #include <vector> using namespace std;int main() {vector<int>v;v.push_back(888);v.push_back(89);v.push_back(89);v.push_back(89);v.push_back(9999);v.push_back(89);for (std::vector<int>::ite…

基于.NetCore3.1搭建项目系列 —— 使用Swagger做Api文档(上篇)

前言为什么在开发中&#xff0c;接口文档越来越成为前后端开发人员沟通的枢纽呢&#xff1f;随着业务的发张&#xff0c;项目越来越多&#xff0c;而对于支撑整个项目架构体系而言&#xff0c;我们对系统业务的水平拆分&#xff0c;垂直分层&#xff0c;让业务系统更加清晰&…

写出TREE-MINIMUM 和TREE-MAXIMUM的递归版本(算法导论第三版12.2-2)

写出TREE-MINIMUM 和TREE-MAXIMUM的递归版本&#xff08;算法导论第三版12.2-2&#xff09; template<typename T> BinaryTreeNode<T>* tree_minimum_recursion(BinaryTreeNode<T>* node) {if(node nullptr) return node;if(node->left ! nullptr)retur…