带你读《云上自动化运维宝典》——一文读懂云上大规模资源管理的最佳实践(3)

简介: 带你读《云上自动化运维宝典》——一文读懂云上大规模资源管理的最佳实践(3)

更多精彩内容,欢迎观看:

带你读《云上自动化运维宝典》——一文读懂云上大规模资源管理的最佳实践(2):https://developer.aliyun.com/article/1405348


3. 大规模资源场景最佳实践:分权、分账、自动化运维

接下来学习企业日常的使用过程中,如何更安全、更便捷、更自动化地使用资源,在这个部分,会从分权、自动化运维和分账三个场景案例介绍在资源管理过程中的实践场景。

1) 安全精细化权限管理场景

如下图所示:

 

image.png

 

当前的场景是授权员工能够停止杭州区域生产环境的ECS实例,条件是操作人员必须在公司的内部网络、必须经过MFA登录。这是日常维护格中非常具体的场景,该场景中假设对于云上的权限管控的基础语法有一定的认识。对于权限,所谓的访问控制,就是指什么身份在何种条件下对资源做何种操作,在该过程中需要关注四个要素,即身份、条件、资源和操作。对应在该场景中,“身份”是员工,“条件”包括3项,即必须在公司的内部网络、必须是MFA登录、操作是生产环境,“资源”是杭州的ECS实例,“操作”是停止实例。

 

经过对权限场景的分析后,通过ABAC模型,即基于属性的权限管理策略来进行权限的设计。

 

关于策略设计,如图中右侧所示。这里要强调,生产环境是条件而不是资源。如何判断是条件还是资源呢?资源属性一般带有地域、账号(ID或名称),除此以外,其他的描述资源的信息都属于条件。由此,是否有权限取决于操作的人员是否满足内网和MFA的条件,还要判断是否具备相关操作环境的权限。

 

从上图中的左下侧可以看到,测试人员想要访问生产环境,由于其没有生产环境的标签,因此其不具备访问、运维、生产环境的权限,不能停止生产环境的实例。

 

反之,如果测试人员有对应的测试环境的标签,就可以通过对应的标签进行相关测试环境资源的停止操作。对于运维人员,由于其对应的标签是灵活赋予的,换言之,当运维人员在操作生产环境时,可以被加上生产环境授权的标签,进行生产环境的处理,同样运维人员加上测试环境的标签,就可以对测试环境进行停止运维的操作。左下图中右侧示例图是针对生产环境的权限设计,即图中灰色部分的权限。若要将其转换成黄色部分的权限,只需要把策略右边中的红色字“production”换成“testing”。

 

对于安全、精细的分组管理就会变得非常简单,只需关注标签即可,策略是不需要变化的,能够非常灵活地进行权限的管控。

 

拓展:如项目A的成员可以访问项目A的资源,项目B的成员可以访问项目B的资源,但是两个项目的成员不可以访问彼此的资源,这种情况下要如何进行安全实践场景的落地呢?

2) 自动化运维场景

如下图所示:

 

image.png

 

当前场景是企业用应用管理资源,需要按照应用关注的应用监控信息进行资源的扩容、缩容,目的是降本增效。换言之,就是希望资源可以在业务流量突增时快速扩容机器以应对突发流量带来的业务压力,同时通过弹性伸缩的方式在业务低峰时进行资源的缩容,实现成本的优化,以最大效率的实现资源的高效利用。整个过程都是自动化的,不需要人为介入,应如何实践该场景呢?

 

首先,要在创建应用时候配置云监控自动识别相关的标签,这样只需配置一次即可,在后续的资源生产中都无需再关注配置,创建的资源或者存量打上标签的资源会自动地加入到该分组中。这种自发现资源的能力可以帮助我们快速实现维监控场景的分组监控能力,进而识别业务的峰谷值。例如,在CPU的峰谷值场景下来进行资源扩展的场景。

 

拓展:如何结合普罗米修斯实现容器的自动集群创建能力?

1) 如何快速分清账单

更好的成本管理可以为内部的管理和云上深度的扎根打下坚实的基础,也可以让大家在看清费用的成本的同时,更高性价比地使用云上的资源。而看清费用是成本管理的第一步,也是最关键的一步。如何在杂这关键的一步上进行实践?即谁花了钱?花了多少钱?对于财务管理者来讲,首先要关注的场景分类是什么?

 

例如,财务负责的单元,有些企业按照部门,有些企业按照项目,有些企业按照员工,有的企业按照业务。财务单元的设计是财务成本管理的最小单元,也是企业关注成本及员工效能的进一步优化,以及后续实现企业运营提效的关键一步。那要如何快速的分清账单呢?

 

如下图所示:

 

image.png

 

首先,财务负责设计财务的负责单元,即通过标签进行资源的分类,也就是进行分类类别的设计;然后,开启财务的管理能力;接下来进行财务管理报表的查看;最后通过查看财务报表的数据进行思考,以及落实责任人,实现降本提效。通过这四个步骤,财务的成本管理以及治理就做好了数据准备。

 

分账案例说明:接下来通过案例了解如何实现成本管理,如下图:

 

image.png

在此案例中设计标签键department,标签值是业务部、市场部、研发部和运维部。

 

这样通过标签键的视角,就可以看清楚每个部门的成本情况。要进行更多维度的管理,只需通过多个标签来进行分账管理即可。如财务的多级财务管理,要在每个部门下按照项目组进行分账,可以通过对应的多视图的方式关注每个部门、每个项目组的账单情况。同时视图是可以进行保存的,可以实现对相应部门的成本情况持续进行跟踪及优化,这样企业的业务的运作模式就可以从“花钱买效率”转变为“管理换效率”,有效提高企业的可持续发展。

 

从上图中的右侧可以看到,在“维度分类”中选择实例标签,在最下方选择标签为department,即部门分类,查看应付金额,设置时间粒度为月,就可以看到每个部门对于的花费情况,再进一步地通过多维度的视图看到责任人对应花费的金额。

 

企业大规模的资源管理的设计是以全局的、统筹的视角来进行规划和考虑,这往往也是业务发展过程当中最难的一步,因为企业上云的步伐是循序渐渐进的,大部分是一个部门先上云,进行独立管理,此时还没有资源管理和分账的诉求,到每个BU上云进行独立管理(因为初期每个BU都是进行独立管理和独立结算的),当企业规模化上云以后,用云的团队和云上支出开始增加,管理的模式从分散的管理模式到集中的管理模式进行转换,进行统一的支付和成本的分摊。

 

通过管理和治理能力的提升,以及各种成本管理、治理以及分类的工具的使用,能够辅助进一步的加强企业在上云过程中的体验,帮助企业内部结算清晰化,也能够帮助企业降低成本。

4. 大规模资源管理实践:设计、应用

接下来总结一下在资源管理的设计过程中,需要关注的设计点包括哪些。

1) 大规模管理的原则

 

首先需要了解设计的原则,即如何设计、如何分类,如下图:

 

image.png

 

在设计标签键时:

 

第一,要保障所关注的设计要点的分类可以覆盖所有的资源,即互斥和集体详尽原则,如部门要保证所有的资源都具备部门分类。

 

第二,要确保值的规范,最好配置有限制原则,进行有效的管理资源分类。即设置部门时,由于部门有限,应把部门对应的相关逻辑设计清楚,如一个企业有业务部、数据部、财务部,在把部门梳理清楚以后,即可配置有限值原则,可以更好地进行资源的管理和管控;也可以使用预制标签的方式先将对应的规范定义清楚,在业务使用方在使用资源时只需做出选择即可,不会存在二异性,导致使用错误的情况。

 

第三,要精简标签键的设计,仅在需要时设计分类,而不过度地设计分类,因为过度的设计分类会导致分类过多,进而导致整个使用管理的难度增加。同时,在标签键的设计上不要有二异性,如一个标签分类用多个键来表示。

 

最后,要考虑未来的变化性。如部门的设计,部门分类要考虑未来的变化,部分部门会进行调整,进行整合、转换,转换后对应的值如何变化?带来的资源如何变化?带来的成本如何变化?要考虑未来的变化能够符合对应的设计结果。

2) 大规模资源管理的步骤

如下图所示:

 

image.png

 

∙        要明确企业的发展阶段以及选择的管理模式。

∙        要确定管理诉求,以确定对应的管理诉求场景,即管理的目的以及要解决问题。

∙        设计场景的分类。

∙        规范场景的标准,要确定每个场景能够被所有的资源规范地使用。

∙        小范围的测试实践场景的分类。

∙        将场景分类应用到对应确认的场景中。

∙        持续地治理优化,不管是资源,还是成本,都要进行持续的治理和优化,才能保障整个管理的结构和步骤持续有效。

3) 可以带走的实践

通过本节课的内容,可以带走许多与企业管理密切相关的最佳实践,如下图所示:

 

image.png

 

 

∙        企业管理和云上资源管理的最佳实践,通过资源的分类设计,为实现企业后续的场景应用做数据基础。这部分内容可以跳转到“企业管理视角与云上资源转换”章节进行了解。

∙        可以带走快速实现多维度的分账的最佳实践,从showback模式和chargeback模式看企业财务管理从计划经济转换成按到按需经济的转变。这部分可以跳转到对应的“如何快速的分清账单”模块了解。

∙        在扩展场景当中,思考项目权限的管理的最佳实践。这部分可以跳转到“如何进行分组的权限设计”学习“企业如何精细化权限管理”模块,学习做项目权限管理的最佳实践。

 

最后,通过标签策略实现资源的规范管理。这部分可以跳转到对应的“如何保障规范管理”的模块了解。

 

以上就是本节课程的全部内容,同时欢迎大家点击链接 / 扫描下方海报中的二维码进入【CloudOps云上运维】课程官网,了解最新课程资讯!

相关文章
|
23天前
|
机器学习/深度学习 人工智能 监控
软件测试中的自动化测试策略与最佳实践##
在当今快速发展的软件行业中,自动化测试已成为确保软件质量和加速产品上市的关键工具。本文将探讨自动化测试的重要性,分析不同类型的自动化测试工具和框架,并深入讨论实施自动化测试的最佳实践。通过案例研究和数据分析,我们将揭示如何有效整合自动化测试到软件开发生命周期中,以及它如何帮助团队提高测试效率和覆盖率。 ##
41 1
|
1月前
|
设计模式 前端开发 JavaScript
自动化测试框架设计原则与最佳实践####
本文深入探讨了构建高效、可维护的自动化测试框架的核心原则与策略,旨在为软件测试工程师提供一套系统性的方法指南。通过分析常见误区,结合行业案例,阐述了如何根据项目特性定制自动化策略,优化测试流程,提升测试覆盖率与执行效率。 ####
58 6
|
4月前
|
运维 Prometheus 监控
OceanBase 的运维与监控最佳实践
【8月更文第31天】随着分布式数据库解决方案的需求日益增长,OceanBase 作为一种高性能的分布式数据库系统,在众多场景下得到了广泛应用。为了确保 OceanBase 集群的稳定运行,合理的运维与监控是必不可少的。本文将探讨 OceanBase 的日常运维管理与监控策略,并提供相应的代码示例。
256 2
|
22天前
|
监控 数据管理 测试技术
API接口自动化测试深度解析与最佳实践指南
本文详细介绍了API接口自动化测试的重要性、核心概念及实施步骤,强调了从明确测试目标、选择合适工具、编写高质量测试用例到构建稳定测试环境、执行自动化测试、分析测试结果、回归测试及集成CI/CD流程的全过程,旨在为开发者提供一套全面的技术指南,确保API的高质量与稳定性。
|
22天前
|
数据管理 测试技术 持续交付
软件测试中的自动化测试策略与最佳实践
在当今快速迭代的软件开发环境中,自动化测试已成为确保软件质量和加速产品上市的关键手段。本文旨在探讨软件测试中的自动化测试策略,包括选择合适的自动化测试工具、构建有效的自动化测试框架以及实施持续集成和持续部署(CI/CD)。通过分析自动化测试的最佳实践,本文为软件开发团队提供了一系列实用的指南,以优化测试流程、提高测试效率并减少人为错误。
56 4
|
5月前
|
机器学习/深度学习 监控 算法
自动化测试框架的演进与最佳实践
随着软件行业的迅猛发展,自动化测试已成为确保软件质量的关键手段。本文将深入探讨自动化测试框架的历史演进、当前趋势以及面临的挑战,并结合实际案例分析,提出一系列的最佳实践策略,旨在帮助读者构建更加高效、稳定的自动化测试体系。
|
1月前
|
监控 测试技术 持续交付
探索自动化测试在软件开发中的最佳实践
本文旨在深入探讨自动化测试在软件开发过程中的应用,以及如何有效地实施自动化测试以提高软件质量和开发效率。通过分析自动化测试的优势、挑战和最佳实践,本文为软件开发团队提供了一套实用的指导方案。
|
1月前
|
前端开发 数据管理 测试技术
前端自动化测试:Jest与Cypress的实战应用与最佳实践
【10月更文挑战第27天】本文介绍了前端自动化测试中Jest和Cypress的实战应用与最佳实践。Jest适合React应用的单元测试和快照测试,Cypress则擅长端到端测试,模拟用户交互。通过结合使用这两种工具,可以有效提升代码质量和开发效率。最佳实践包括单元测试与集成测试结合、快照测试、并行执行、代码覆盖率分析、测试环境管理和测试数据管理。
66 2
|
26天前
|
Devops 测试技术 持续交付
软件测试中的自动化与持续集成:最佳实践与挑战
在快速迭代的软件开发周期中,自动化测试和持续集成(CI)已成为提高软件质量和加速产品上市的关键策略。本文探讨了自动化测试和CI的实施如何帮助开发团队提前发现缺陷、缩短反馈循环,并确保代码质量。我们将深入分析自动化测试的策略选择、工具应用以及面临的挑战,同时提供一些克服这些挑战的最佳实践。
41 0
|
1月前
|
前端开发 JavaScript 数据可视化
前端自动化测试:Jest与Cypress的实战应用与最佳实践
【10月更文挑战第26天】前端自动化测试在现代软件开发中至关重要,Jest和Cypress分别是单元测试和端到端测试的流行工具。本文通过解答一系列问题,介绍Jest与Cypress的实战应用与最佳实践,帮助开发者提高测试效率和代码质量。
46 2

热门文章

最新文章