配置虚拟机意味着什么?

时间:2015-04-16 22:42:52

标签: vagrant virtual-machine virtualbox vmware virtualization

我看到“配置”一词在虚拟化无处不在,但我似乎无法在谷歌上找到明确的定义。它是否仅涉及设置客户操作系统并为其分配资源,还是包括下载软件和更新?或者它是否包含更多内容,例如设置共享文件夹和配置?

2 个答案:

答案 0 :(得分:6)

定义和实例

来自definition of Puppet

  

Puppet是一个配置管理系统,允许您定义IT基础架构的状态,然后自动强制执行正确的状态。

Vagrant允许您使用shell脚本,Puppet,Chef或Ansible等配置程序将您的计算机配置为provisioning process的一部分:

  

Vagrant中的配置程序允许您在漫游过程中自动安装软件,更改配置等等。

通常,如果要自动设置或配置节点(无论是否为虚拟节点),那么您需要的是支持硬件和/或操作系统配置的配置管理工具。

答案 1 :(得分:2)

供应通常意味着功能状态 - 通过vanilla服务器创建的东西。

典型示例是:配置Web服务器或配置20个Web服务器。 在实践中,这意味着:   - 创建20台服务器。   - 安装提供Web流量所需的包   - 可能会创建一个负载均衡器   - (可能)将所有这些框加入负载均衡器

所述via Chef Provisioning的示例(来自:https://github.com/vinyar/tokyo_chef_provisioning

## Setting up empty array
elb_instances = []

## Generic name
name = 'stack_example'

## machine_batch allows parallel creation of machines
machine_batch 'hello_world' do
  1.upto(20) do |n|
    ## Just a variable to make things easier
    instance = "#{name}-webserver-#{n}"
    ## Machine resource is used to create a single server
    machine instance do
      machine_options ({
        bootstrap_options: { 
          :instance_type => "t1.micro",
          image_id: 'ami-b6bdde86',
          :key_name => "stack_key"},
        :ssh_username => "root"})
      recipe "webserver"
      tag "#{name}-webserver"
      converge true
    end
    ## Populating array with instance name on each loop.
    elb_instances << instance
  end
end

## Creating load balancer
load_balancer "#{name}-webserver-lb" do
  load_balancer_options({
    :availability_zones => ["us-west-2a", "us-west-2b", "us-west-2c"],
    :listeners => [{:port => 80, :protocol => :http, :instance_port => 80, :instance_protocol => :http }],
  })
  ## Passing array as a list of machines to the load balancer
  machines elb_instances
end