Я вижу, что слово "обеспечение" используется везде с виртуализацией, но я не могу найти четкое определение этого в google. Включает ли это просто настройку гостевой операционной системы и выделение ресурсов на нее, или же она включает загрузку программного обеспечения и обновлений? Или он включает в себя даже больше, чем настройку общих папок и конфигураций?
Что означает предоставление виртуальной машины?
Ответ 1
Определения и примеры
Puppet - это система управления конфигурацией, которая позволяет вам определять состояние вашей ИТ-инфраструктуры, а затем автоматически обеспечивает правильное состояние.
Vagrant позволяет использовать создателей, таких как сценарии оболочки, кукольный, шеф-повар или Ansible, чтобы настроить вашу машину как часть процесса :
Provisioners in Vagrant позволяют автоматически устанавливать программное обеспечение, изменять конфигурации и т.д. на машине как часть процесса бродяг.
В общем, если вы хотите автоматизировать настройку или конфигурацию node, виртуального или нет, тогда вам понадобится инструмент управления конфигурацией, который поддерживает аппаратное обеспечение и/или настройку ОС.
Ответ 2
Предоставление обычно означает функциональное состояние - что-то за созданием ванильного сервера.
Типичным примером является: Предоставление веб-сервера или предоставление 20 веб-серверов. На практике это означает: - Создайте 20 серверов. - Установить пакеты, необходимые для обслуживания веб-трафика; - Возможно создать балансировщик нагрузки - (возможно) Присоедините все эти поля к балансировщику нагрузки
Пример с помощью шеф-повара (от: 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