【AICon】AI 基础设施、LLM运维、大模型训练与推理,一场会议,全方位涵盖! >>> 了解详情
写点什么

FAI:Linux 的自动安装、管理和自定义工具

  • 2010-04-03
  • 本文字数:1727 字

    阅读完需:约 6 分钟

FAI(Fully Automatic Installation,完全自动安装)是一种无须交互就可以完成那些重复性枯燥乏味的、常常需要手动完成的 Linux 安装、自定义以及管理任务的自动化系统。现如今,FAI 被用户维护假根环境 ( chroot environments ),虚拟机以及服务器。它可以完成从几个独立系统到基于大规模基础设施和有数千个系统组成的集群系统的部署和安装。

系统管理员可以利用配置空间在FAI 中定义硬盘布局、文件系统、软件包、键盘布局、时区、用户帐号等等,参见** FAI 的网站:**

[FAI 是] 一个用来管理大量无需监护的 Linux 系统安装的工具。你只需要打开一台或者多台裸机的电源,几分钟后,系统就被安装成功,并根据你的需要配置好,无需交互。

与可以基本实现安装过程自动化的 Debian 安装程序 Preseeding 相比,FAI 还能够实现上线、部署、系统启动 (Provisioning)、并能在一定程度上实现配置管理的自动化。

上个星期在德国克姆尼茨Linux 日上InfoQ 有机会遇到了Thomas Lange。他是FAI 的项目主管,刚刚发布了它的3.3.4 版本。

Info 向 Thomas 询问了有关他的 IT 背景情况:

我先是在波恩大学学习计算机科学,后来我做了超过 18 年的系统管理员。十年前,有一次我需要安装一个 16 台电脑的集群。我一向比较懒(我认为自己是一个比较典型的系统管理员),我不想手动安装这么多电脑。那时候我了解并使用了 Solaris 的 Jumpstart 来部署 Solaris 系统,我想做一个跟 Debian 类似的东西。最后就做出了今天的 FAI。为了能够偷懒,我花了很大的功夫。:) 但是现在你可以完全自动地部署您的系统。到 2009 年底,FAI 已经十岁了。

当被问及 FAI 的最重要以及最有趣的功能,Lange 谈到:

FAI 具有很高的灵活性。你不会被那些工具自己认为最适合你的东西所束缚(译者注:工具根据自己的智能确定了一些最佳配置,然后强制给管理员)。相反,根据自己的需要你可以调整并创建脚本,钩子和配置来扩展部署过程。这对初学者来说有一定的困难,但是对熟悉 FAI 的系统管理员来说,这就像瑞士军刀那样好用。 比如 FAI 的 Setup-storage 就是一个很灵活的分区工具组件。尽管也可以指定分区的大小,其实您完全没有必要那样做。你只需要告诉 FAI,比如用 10% 的硬盘空间作为跟文件系统,2-4GB 作为交换空间,剩下的作为数据分区。这个功能为逻辑卷管理以及软件 RAID 提供了很好的支持。

在设计和实现 FAI 的时候,易读易修改的配置格式对我来说来说十分重要。我认为系统管理员一般不太喜欢 XML。为了能够存放到版本控制系统,而且易读易修改,FAI 采用了很简单的配置文件。

另一个很重要的功能是基于类的方式。没有必要在把所有的配置放到一个文件里面,你可以抽象出硬件及软件的配置。在整个系统中都会使用的部分可以放到基类里面。你可以根据架构、现有的硬件和软件配置按需激活特定的功能。当然这也适用于软件的选择。因此你可以很方便地提供一个基类,里面包括在所有主机上都需要安装的基本软件包,同时对于您可以在桌面系统上添加其他与服务器系统不同的软件包。

有经验的高级系统管理员可以实现最初的类设计。初级系统管理员可以执行实际的部署任务包括安装硬件、集成新的硬件…等等。这种基于类方式的灵活性使得 FAI 能够在企业里得到广泛的应用。

谈到使用 FAI 必要条件,Lange 解释到:

为了使用 FAI 进行部署,你需要 DHCP, NFS, HTTP 和 TFTP 服务器,当然还需要 FAI 软件。具体了解如何使用 FAI,我强烈建议你去看一下网上的 FAI 指南

为了让用户对未来 FAI 的新功能有一个了解,InfoQ 向 Lange 询问了 FAI 以后版本的路线图:

在接下来的版本中,我希望看到一个面向 Ubuntu 的不错的 Debian 软件包,从而支持 Ubuntu 桌面系统的部署。我们正在把存储配置从组件中独立出来,因此可以在 FAI 以外使用这一部分功能。另外,我还希望尽快能够支持 Grub2。

在访谈的最后,Thomas Lange 还想告诉 InfoQ 的读者们:

我希望大家注意 FAI 的用户报告。我鼓励 FAI 的用户去填写 FAI 的网上问卷,我们想知道我们的用户是谁,他们都使用哪些功能,他们遇到了哪些问题。正是因为关注用户以及他们的反馈,FAI 发展成为一个相当不错的发布解决方案。请给我们提供反馈并分享您的想法。

查看英文原文: FAI: Automated Install, Management and Customization for Linux

2010-04-03 11:103758

评论

发布
暂无评论
发现更多内容

阿里P8内部架构核心学习知识笔记在各大互联网上流传,限时开放下载

Java架构之路

Java 程序员 架构 面试 编程语言

快速入门案例实战:电商网站商品管理(一)

escray

elasticsearch elastic 28天写作 死磕Elasticsearch 60天通过Elastic认证考试

如何对AD和Exchange进行安全加固满足护网需要?

嘉为蓝鲸

安全 asm AD 邮件系统 权限

高频量化交易机器人系统开发|高频量化交易机器人APP软件开发

系统开发

2020DevOps状态报告——变更管理

禅道项目管理

DevOps 运维 开发 趋势 自动化测试

盘点2020 | 人生是一场马拉松-OBKoro1的2020年年终总结

OBKoro1

2020 大前端 年终总结 OBKoro1

盘点2020| 开启小马哥的新未来

小马哥

盘点2020

重学JS | 异步编程 Generator()

梁龙先森

面试 大前端 编程语言 28天写作

阿里中间件团队技术官手撸笔记,全新演绎“Kafka部署实战”,已开源

Java架构之路

Java 程序员 架构 面试 编程语言

我以为自己够牛逼了,直到看到了Alibaba专家的面试笔记,我学习了三个月,却入职京东,税前36K

Java架构之路

Java 程序员 架构 面试 编程语言

最近线上发生的两个坑爹锅

艾小仙

后端

跨越全场景统一架构三大挑战,MindSpore亮出“四招”

华为云开发者联盟

深度学习 联邦学习 mindspore 算子 ai框架

从美国《拜杜法案》到中国供应链体系形成的内在逻辑

JiangX

供应链 28天写作 制造

低代码开发平台的技术路线

Sam678678

快抛弃你错误的坚持

石君

生活随想 28天写作

研发管理101军规#003 实战规模化敏捷:从8人到百人的敏捷之路

PingCode

程序人生 Scrum 敏捷开发

林昊获中国计算机学会杰出工程师奖,阿里中间件再获高度肯定,“三位一体”推动技术普惠

阿里巴巴云原生

阿里巴巴 阿里云 开发者 云原生 中间件

electron实战练习-三个文件实现一个命令行终端

OBKoro1

node.js Electron electron实战 命令行终端 electron学习

安卓开发在线!字节跳动Android研发岗这些知识点内部泄露出来了,已拿到offer

欢喜学安卓

android 程序员 面试 移动开发

WebRTC ICE 状态与提名处理

阿里云视频云

阿里云 WebRTC 通信 流媒体开发 流媒体传输

GrowingIO Design 组件库搭建之开发工具

GrowingIO技术专栏

设计 大前端

软件测试--selenium安装使用

测试人生路

软件测试

Java 程序经验小结:用私有构造器或者枚举类型强化Singleton属性

后台技术汇

28天写作

细节决定成败!致Android高级工程师的一封信,实战解析

欢喜学安卓

android 程序员 面试 移动开发

新思科技静态应用安全测试解决方案获得Forrester Wave认可

InfoQ_434670063458

新思科技 Forrester Wave 静态应用安全测试

普通人必须掌握的五个必学理财知识

v16629866266

工业传感器:工业互联网的第一道门

浪潮云

工业互联网

mysql字符串字段索引优化

瞌睡的李先生

MySQL 索引

顶级!13位专家力荐Spring5为企业级开发提供一站式方案

996小迁

Java spring 编程 架构 面试

备战2O2I新年资料

ios 面试

新鲜出炉!阿里内部开源SpringCloud Alibaba全解(全彩版)全网首发

Java架构追梦

Java 学习 架构 面试 SpringCloud Alibaba

FAI:Linux的自动安装、管理和自定义工具_技术管理_Michael Prokop_InfoQ精选文章