蓝盟IT小贴士,来喽!
建立支持新软件学习和实验的环境。
公共云环境的建立和拆除非常有用,但我们大多数人不容易访问公共云。 第二个最好的方法是在本地计算机上建立实验室,但在本地计算机上运行也会带来性能、灵活性和其他挑战。 在许多情况下,本地计算机的额外工作负载会干扰我们的日常工作,当然也会影响到提供现成的环境来玩和实验新软件。
几年前,我和我的团队开始学习Ansible时,我们面对了这个挑战。 我们找不到可以单独使用的环境,我们对这种状况的失望使我们有些人停止了实验。 我知道有必要找到解决办法。
我们花了很多时间研究各种方案,开发了可以在好奇心完全控制的环境中学习的工具。 无需访问内部实验室或公共云,即可在本地计算机上轮换和分解实验室环境。
本文介绍如何在20分钟内将自己的实验室环境完全自动化地部署到本地计算机上。
这个练习的所有代码都可以在我的GitHub仓库里找到。
工具和软件。
本方案使用以下工具和软件:
Ansible是我们选择的自动化工具,因为它易于使用,足够灵活以满足实验室的要求。
Vagrant易于使用,用于构建和维护虚拟机。
VirtualBox是可在Windows和Linux环境中使用的管理器。
Fedora v30是我本地机器上的操作系统。
要创建环境,必须进行以下设置:
网上连接
在BIOS中启用虚拟化技术支持(联想笔记本电脑上的步骤如下)。
Vagrant v2.2.9
最新版本的Ansible
最新版本的VirtualBox
Fedora v30宿主机操作系统
这个实验室环境里有什么?
这个项目被设计为部署具有Ansible引擎和多个Linux节点的Ansible主机,以及一些预加载和预配置的应用程序(httpd和MySQL )。 此外,还启用了Cockpit,以便在测试期间监视虚拟机(VM )的状态。 使用预先部署的应用程序的理由是为了提高效率(因此,无需花时间安装这些组件)。 这使您可以集中精力创建角色和方案,并对部署了上述工具的环境进行测试。我们确认了对我们的用例来说,最好的方案是多机器Vagrant环境。 Vagrant文件创建了三个CentOS虚拟机来模拟两个目标主机和一个Ansible控件。
Host1:没有GUI,安装了httpd和MySQL
Host2:没有GUI,安装了httpd和MySQL
ansible-host :没有GUI,安装了ansi ble引擎
启用多个管理器。
如果使用多个虚拟机管理程序,有些虚拟机管理程序可能无法提升虚拟机。 要解决此问题,请执行以下步骤(根据Vagrant安装步骤)。
首先,找到经理的名字。
$ lsmod | grep kvm
kvm_intel 204800 6
kvm 593920 1 kvm_intel
irqbypass 16384 1 kvm
我感兴趣的是kvm_intel,但可能还需要一个(kvm_amd等)。
文/上海蓝盟 IT外包专家