Vagrant定制个性化CentOS7虚拟机模板

关于虚拟机模板

想用vagrant搭建hadoop集群,要完成以下准备工作:

  1. 三个虚拟机实例操作系统都是CentOS7的server版;
  2. 每个实例都要安装同样的应用、关闭防火墙、关闭swap等;
    今天就来做个模板,用此模板创建好的虚拟机都已经完成了上述操作;

关于vagrant的安装和基本操作,请参考《Mac下vagrant从安装到体验》

环境信息

  1. 操作系统:macOS Mojave 10.14.6
  2. Vagrant:2.2.5
  3. VirtualBox:6.0.10

    创建实例并完成个性化设置

  4. 创建一个centos7的实例,以此实例来做模板,新建个目录,在里面执行命令vagrant init centos/7;
  5. 再执行命令vagrant up启动实例;
  6. 执行命令vagrant ssh进入虚拟机,默认密码是vagrant,另外root账号的密码也是vagrant;
  7. 登录之后,然后按照自己的需要去操作吧,例如关闭防火墙、安装JDK、关闭swap等;
  8. 为了能用ssh工具来远程连接虚拟机,需要修改/etc/ssh/sshd_config文件,将和的值设置如下:
PermitRootLogin yes
PasswordAuthentication yes

以上的设置已经满足我个人的需要了,您可以按照自己的要求来做;

把实例做成模板

  1. 退出虚拟机;
  2. 在Vagrantfile文件所在目录执行vagrant halt命令将当前虚拟机停止;
  3. 执行vagrant package命令将当前虚拟机作为文件导出,名为package.box:
[email protected]:~/vm/template$ vagrant package
==> default: Attempting graceful shutdown of VM...
==> default: Clearing any previously set forwarded ports...
==> default: Exporting VM...
==> default: Compressing package to: /Users/zhaoqin/vm/template/package.box
[email protected]:~/vm/template$ ls
Vagrantfile package.box
  1. 接下来将这个导出的package.box文件加入本地box仓库:
vagrant box add --name my-c7-template ./package.box

上述命令执行成功后,可以在本地box列表中见到名为my-c7-template的box:

[email protected]:~/vm/template$ vagrant box add --name my-c7-template ./package.box
==> box: Box file was not detected as metadata. Adding it directly...
==> box: Adding box 'my-c7-template' (v0) for provider:
    box: Unpacking necessary files from: file:///Users/zhaoqin/vm/template/package.box
==> box: Successfully added box 'my-c7-template' (v0) for 'virtualbox'!
[email protected]:~/vm/template$ vagrant box list
centos/7       (virtualbox, 1905.1)
customize-c7   (virtualbox, 0)
my-c7-template (virtualbox, 0)

注意:执行vagrant box add命令的时候,最后一个参数指明了box文件的位置,我这里加了"./"指明是当前目录,这个"./"一定不能省掉,否则很有可能去找到了其他目录下的package.box文件
模板制作已经完成,接下来验证这个实例;

验证

  1. 新建个目录,在里面执行命令vagrant init my-c7-template;
  2. 打开新生成的Vagrantfile文件,增加以下配置,作用是将虚拟机网络类型改成私有网络并固定IP地址:
config.vm.network "private_network", ip: "192.168.33.10"
  1. 再执行命令vagrant up启动实例;
  2. 由于模板里已经设置了ssh,允许以root账号远程ssh登录,所以这次ssh客户端登录试试,如下图,可以顺利登录成功:
  3. 您也可以检查其他的设置是否已经生效;

以上就是个性化虚拟机模板的制作过程,借助此功能可以高效的创建虚拟机实例,希望本文能够给您一些参考。

原文地址:https://www.cnblogs.com/bolingcavalry/p/11628248.html

时间: 2024-10-11 01:09:13

Vagrant定制个性化CentOS7虚拟机模板的相关文章

0. vagrant+vbox创建centos7虚拟机

准备工作 安装 virthbox和vagrant 下载地址: 常用vagrant命令 $ vagrant init # 初始化 $ vagrant up # 启动虚拟机 $ vagrant halt # 关闭虚拟机 $ vagrant reload # 重启虚拟机 $ vagrant ssh # SSH 至虚拟机 $ vagrant suspend # 挂起虚拟机 $ vagrant resume # 唤醒虚拟机 $ vagrant status # 查看虚拟机运行状态 $ vagrant de

在XenCenter6.2中构建CentOS7虚拟机的启动错误

在XenCenter6.2中创建CentOS7虚拟机时,发现系统并没有提供CentOS7 64bit的模板,只有CentOS6 64bit模板.如果采用CentOS6作为其模板来创建CentOS7虚拟机,则会报出如下的错误: 该错误是由于启动引导过程不匹配引起的.在创建CentOS7虚拟机时,改用Other Media作为模板创建即可解决此问题.当然如果你的虚拟机已经创建,只是无法启动的话,可以将磁盘先解除挂载,在选择正确模板创建虚拟机(选择稍后安装OS)后,将原有磁盘挂载到新建的虚拟机上即可.

vSphere部署系列之10——虚拟机模板和规范

在前面的博文章节中,已搭建了群集,并启用了HA和DRS,但还没有划分资源池,这种情况已经可以应付实际生产环境.资源池的创建和配置比较简单.难点在对配额的理解和按需划分.有兴趣的朋友可以网上查阅相关资料,这里暂不作研究. vCenter提供了模板功能,可把一台已部署好的虚拟机转换为模板,然后以此模板为镜像批量部署虚拟机.这一节是关于虚拟机模板及其管理规范方面的操作. 实验环境总体规划,请见前面的博文<vSphere部署系列之03--实验环境总体规划> ▲总体规划网络拓扑图 一.前期工作 在使用模

使用virsh工具创建虚拟机模板

今天我们介绍使用virsh虚拟机管理工具组件来创建虚拟机模板 首先准备基础环境: 在vmware上安装一台Centos7.0的虚拟机打开CPU的虚拟化功能安装完操作系统之后验证虚拟化功能是否打开使用 egrep --color=auto "(svm|vmx)" /proc/cpuinfo进行查看安装libvirt的工具组件yum install libvirt libvirt-client virt-manager virt-install因为我们要使用libvirt组件去管理kvm,

互金时代如何定制个性化信用评分模型

互金时代如何定制个性化信用评分模型 相比起传统金融机构,互联网金融以个性化服务取胜,由此也催生了各类深耕细分市场的互联网金融公司.不过这样一来,原来传统风控的玩法和经验,已经很难满足新兴互联网金融公司的风控需求. 如何用最为省时省力的方法,打造契合自身业务特色的个性化风控模型?如何利用先进的大数据手段,迅速提高风控的效率,降低风控的成本?今天就让处座来介绍一下吧. 风控将成互联网金融发展"痛点" 在经历2013至2014年的爆发式发展之后,互联网金融行业逐渐步入到规范化发展阶段.201

Python - 定制pattern的string模板(template) 具体解释

定制pattern的string模板(template) 具体解释 本文地址: http://blog.csdn.net/caroline_wendy/article/details/28625179 string.Template的pattern是一个正則表達式, 能够通过覆盖pattern属性, 定义新的正則表達式. 如: 使用新的定界符"{{", 把{{var}}作为变量语法. 代码: # -*- coding: utf-8 -*- ''' Created on 2014.6.5

CentOS7虚拟机桥接设置及问题

今天在VMWare WorkStation9中安装了CentOS7虚拟机. 虚拟机与宿主机网络连接有三种方式:桥接模式.NAT模式和Host Only模式. 具体三种模式的解释可以在网络上搜到很多. 1.桥接模式设置: 我这里使用的是桥接模式,虚拟机Edit->Virtual Network Editor配置中可以看到桥接模式默认使用Vmnet0虚拟网卡,这里我们选择桥接网卡.(其实Automatic我试了一下也是可以的) 然后安装CentOS7虚拟机,安装过程不多说,安装时要配置网卡,将其启用

CentOS7虚拟机搭建xwiki

和我们使用的confluence一样,xwiki也是wiki的一种,只不过xwiki是免费的,而我们使用的confluence是破解版的.下面就来看一看xwiki是如何搭建在centos7虚拟机上的. 1在vm上创建centos7虚拟机 2打开xwiki的下载页面,目前最高版本是8,4,2     链接是http://www.xwiki.org/xwiki/bin/view/Download/ 打开链接,你会发现如下两种安装方式: 方式一:zip安装. zip安装比较简单,这个安装包就集成了Se

使用Vagrant和Virtualbox创建虚拟机

简单地说,Vagrant让我们可以通过代码的方式快速地.可重复地创建针对不同虚拟环境的虚拟机,包括Virtualbox.AWS.Docker等.它使得我们可以一次性地.自动创建多个环境相同的虚拟机,对于软件开发和测试尤其有用.本文我们将以Virtualbox为例,看看Vagrant的基本使用. (一)快速入门 首先需要创建一个目录用于存放Vagrantfile文件以及Vagrant在工作中的数据: mkdir my-vagrant-project cd my-vagrant-project 然后