不可变环境:打造稳定、可预期、低成本的运行环境 | 学习笔记

简介: 快速学习不可变环境:打造稳定、可预期、低成本的运行环境

开发者学堂课程【ALPD 云架构师系列:云原生 DevOps 36计-阿里云云效出品不可变环境:打造稳定、可预期、低成本的运行环境】学习笔记,与课程紧密连接,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/772/detail/13501


不可变环境:打造稳定、可预期、低成本的运行环境


内容介绍:

一. 不可变构建(回顾)

二. 运行环境的目标:稳定、可预期、低成本

三. 环境管理的常见问题


一. 不可变构建(回顾)

1. 不可变构建:相同的源码+相同的环境+相同的构建脚本=>一致的软件制品

2. 通过 Dockerfile 描述构建环境、构建脚本及运行环境

3. 容器的基本概念:One process per container

4. 按逻辑单库的结构组织代码库和代码组

这样才能以更好的组织形态去协作大家更好的维护。

5. 软件交付过程,其本质是开发者围绕代码库的协作过程,按照 SLA(Small、Linear、Atomic)的原则提交代码

6. 将环境相关的配置与镜像分离

问题:运行环境相关的配置属于哪一层?

image.png

答案:Pod和系统

解析:配置越靠里,成本越高。


二. 运行环境的目标:稳定、可预期、低成本

终态:提供稳定、可预期的系统

可预期的系统,需要确保运行环境和软件制品(例:容器镜像)一致性

运行环境,要做到环境的可预期和稳定,环境需要稳定。另外,因为相对来说环境资源成本比较高,所以要强调低成本这一点。

整个运行环境分为三部分,有制品(如容器镜像),运行上下文(数据、配置),编排规则。image.png

制品要保证一致性,首先保证代码极其依赖的一致性,并且构建环境的一致性,构建脚本的一次性。 从环境的角度来讲应用或者服务的制品,比如运行容器镜像的数据配置相关的,编排规则怎么在上面跑,部署在哪些容器里头,在哪些机器上,哪些节点,以及要几次的备份,这些东西通过部署的动作到了环境。这是部署完了之后才会形成一个可以运行的环境。


三. 环境管理的常见问题

现实当中,在环境一块里会有很多的问题的。环境问题往往是痛点。

1. 常见的问题有哪些?

⑴配置文件中有好多监控之类的配置,我不知道该怎么设置

⑵测试依赖的环境经常发生问题, 耗费大量的等待和排查时间

⑶搭建一套新的环境很痛苦,经常需要耗费整天的时间

⑷开发的应用在本地跑不起来

⑸每次配置环境都需要小心翼翼,生怕漏修改了某个配置

2. 问题的根源:环境没有清晰的定义

环境不清晰,就会带来很多很多的问题,不管是拍照,还是去创建新环境,都会带来很多问题。

清晰的定义指的是说环境里头应该包含什么,他是怎么部署起来的,这些东西都需要有明确的定义。

3. 环境管理的终态:软件定义的不可变环境

通过相同的制品,相同的运行上下文,相同的编排规则去部署一致的环境。

这个定义是明确的、一致的。当制品相同的时候,有相同的运行上下文,资源、数据都一样,基于相同的编排规则,那么环境就应该是一致的,它的环境在任何地方都是一样的,不会有偏差。

环境管理的终态,其实可以通过代码库版本管理的方式定义出来,那么第一环境它基本上就是明确的,第二是有明确版本,这样就可以保证不同的版本的环境的一致性。

相关文章
|
Rust JavaScript Unix
Nodejs 常见版本管理工具(nvm、n、fnm、nvs、nodenv)
Nodejs 常见版本管理工具(nvm、n、fnm、nvs、nodenv)
12458 0
|
安全 jenkins 网络安全
在配置 Gitee 时需要注意什么?
通过注意以上这些方面,可以更好地配置Gitee,保障项目的代码管理安全、高效、有序,为团队的协作开发和代码上线流程提供有力的支持。
|
机器学习/深度学习 自然语言处理 PyTorch
PyTorch 中的动态图与静态图:理解它们的区别及其应用场景
【8月更文第29天】深度学习框架中的计算图是构建和训练神经网络的基础。PyTorch 支持两种类型的计算图:动态图和静态图。本文旨在阐述这两种计算图的区别、各自的优缺点以及它们在不同场景下的应用。
3413 0
|
SQL 监控 数据库
MSSQL性能调优秘籍:索引深度优化、SQL重构技巧与高效锁策略
在Microsoft SQL Server(MSSQL)环境中,性能调优是确保数据库高效运行、满足业务快速增长需求的关键
|
移动开发 JavaScript 小程序
uView Divider 分割线
uView Divider 分割线
239 0
|
存储 缓存 运维
Nacos 配置管理最佳实践
一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。
Nacos 配置管理最佳实践
|
4天前
|
数据采集 人工智能 安全
|
13天前
|
云安全 监控 安全
|
5天前
|
自然语言处理 API
万相 Wan2.6 全新升级发布!人人都能当导演的时代来了
通义万相2.6全新升级,支持文生图、图生视频、文生视频,打造电影级创作体验。智能分镜、角色扮演、音画同步,让创意一键成片,大众也能轻松制作高质量短视频。
1102 152