Skip to Content
基础设施即代码,第2版
book

基础设施即代码,第2版

by Kief Morris
May 2025
Beginner to intermediate
430 pages
4h 37m
Chinese
O'Reilly Media, Inc.
Content preview from 基础设施即代码,第2版

第 13 章 作为代码的服务器图像 服务器图像作为代码

本作品已使用人工智能进行翻译。欢迎您提供反馈和意见:translation-feedback@oreilly.com

第 11 章提到了从单一来源创建多个服务器实例的想法("预构建服务器"),并建议使用干净的服务器映像("创建干净的服务器映像")。如果你想知道遵循这些建议的最佳方法,本章将为你提供帮助。

与系统中的大多数事情一样,您应该使用代码以可重复的方式构建和更新服务器镜像。无论何时对镜像进行更改,例如安装最新的操作系统补丁,都能确保构建镜像的一致性

通过使用自动化的代码驱动流程来构建、测试、交付和更新服务器镜像,您可以更轻松地保持服务器的最新状态,并确保其合规性和质量。

基本的服务器映像生命周期包括从原始源构建自定义映像(见图 13-1)。

iac2 1301
图 13-1. 服务器图像生命周期

构建服务器映像

大多数基础架构管理平台都有用于创建服务器实例的服务器映像格式。亚马逊有 AMI,Azure 有托管镜像,VMware 有虚拟机模板。托管平台提供带有常用操作系统和发行版的预包装库存映像,这样就可以创建服务器,而无需自己构建映像。

为什么要创建服务器映像?

大多数团队最终都会创建自定义图片,而不是使用平台供应商提供的库存图片。这样做的常见原因包括

遵守组织治理

许多组织,尤其是受监管行业的组织,需要确保按照更严格的准则来构建服务器。

安全加固

库存服务器图像往往安装了许多不同的软件包和实用程序,使其适用于各种情况。您可以构建只保留最基本要素的定制镜像。加固可包括禁用或删除未使用的用户账户和系统服务、禁用所有非严格运行所需的网络端口,以及锁定文件系统和文件夹权限1

优化性能

你为加强镜像安全性而采取的许多步骤,如停止或删除不需要的系统服务,也会减少服务器使用的 CPU 和内存资源。尽量减小服务器镜像的大小还能加快创建服务器实例的速度,这对扩展和恢复方案很有帮助。

安装常用软件包

您可以在服务器镜像上安装一套标准的服务、代理和工具,以确保它们在所有实例上都可用。例如,监控代理、系统用户账户以及特定于团队的实用程序和维护脚本。

为服务器角色构建映像

本章中的许多示例都比构建标准的通用映像更进一步。您可以为特定目的(如容器集群节点、应用服务器或 CI 服务器代理)定制服务器映像。

如何创建服务器映像

第 11 章介绍了创建新服务器实例的几种不同方法,包括热克隆现有实例或使用现有实例的快照(请参阅"预构建服务器")。但是,使用管理良好的服务器映像创建的实例更简洁、更一致。

构建服务器镜像有两种方法。最常见、最直接的是在线镜像构建,即创建和配置一个新的服务器实例,然后将其转化为镜像。第二种方法是离线镜像构建,即挂载磁盘卷并将必要的文件复制到其中,然后将其转化为可启动镜像。

在线和离线镜像构建之间的主要权衡因素是速度和难度。在线构建服务器镜像更容易,但启动和配置新实例的速度会很慢,大约需要几分钟或几十分钟。离线安装和准备磁盘通常要快得多,但需要更多的工作。

在讨论如何实施上述每个选项之前,值得注意的是一些用于构建服务器映像的工具。

构建服务器映像的工具

用于构建服务器镜像的工具和服务通常通过协调以下流程来工作:创建服务器实例或磁盘卷,运行服务器配置工具或脚本对其进行自定义,然后使用基础架构平台 ...

Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.

Read now

Unlock full access

More than 5,000 organizations count on O’Reilly

AirBnbBlueOriginElectronic ArtsHomeDepotNasdaqRakutenTata Consultancy Services

QuotationMarkO’Reilly covers everything we've got, with content to help us build a world-class technology community, upgrade the capabilities and competencies of our teams, and improve overall team performance as well as their engagement.
Julian F.
Head of Cybersecurity
QuotationMarkI wanted to learn C and C++, but it didn't click for me until I picked up an O'Reilly book. When I went on the O’Reilly platform, I was astonished to find all the books there, plus live events and sandboxes so you could play around with the technology.
Addison B.
Field Engineer
QuotationMarkI’ve been on the O’Reilly platform for more than eight years. I use a couple of learning platforms, but I'm on O'Reilly more than anybody else. When you're there, you start learning. I'm never disappointed.
Amir M.
Data Platform Tech Lead
QuotationMarkI'm always learning. So when I got on to O'Reilly, I was like a kid in a candy store. There are playlists. There are answers. There's on-demand training. It's worth its weight in gold, in terms of what it allows me to do.
Mark W.
Embedded Software Engineer

You might also like

构建数据集成解决方案

构建数据集成解决方案

Jay Borthen
金融领域的机器学习与数据科学蓝图

金融领域的机器学习与数据科学蓝图

Hariom Tatsat, Sahil Puri, Brad Lookabaugh
可观察性工程

可观察性工程

Charity Majors, Liz Fong-Jones, George Miranda

Publisher Resources

ISBN: 9798341658493