---
|
# tasks file for oi-zone
|
- name: create VNICs
|
dladm_vnic:
|
name: "{{ item['logical'] }}"
|
link: "{{ item['physical'] }}"
|
vlan: "{{ item['vlan'] }}"
|
loop: "{{ oizone['nics'] }}"
|
|
- name: create filesystems
|
zfs:
|
name: "{{ item['path'] }}"
|
state: present
|
zfs_extra_properties: "{{ item['zfs_extra_properties'] }}"
|
loop: "{{ oizone['filesystems'] }}"
|
when: zfscreate
|
|
- name: set up VM zones for master
|
solaris_zone:
|
name: "{{ oizone['name'] }}"
|
state: installed
|
path: "{{ oizone['zoneroot'] }}/{{ oizone['name'] }}"
|
config: >
|
set brand={{ oizone['brand'] }};
|
set autoboot={{ oizone['autoboot'] }};
|
{% if oizone['bootargs'] %}
|
set bootargs={{ oizone['bootargs'] }};
|
{% endif %}
|
set ip-type={{ oizone['iptype'] }};
|
{% for nic in oizone['nics'] %}
|
add net;
|
set physical={{ nic['logical'] }};
|
{% if {{ oizone['iptype'] == "shared" %}
|
set address={{ nic['address'] }};
|
{% endif %}
|
end;
|
{% endfor %}
|
{% for disk in vmconfig[outer_item]['disks'] %}
|
add device;
|
set match="/dev/zvol/rdsk/localstripe/vm/{{ outer_item }}d{{ disk['instance'] }}";
|
end;
|
add attr;
|
set name="{{ disk['label'] }}";
|
set type="string";
|
set value="localstripe/vm/{{ outer_item }}d{{ disk['instance'] }}";
|
end;
|
{% endfor %}
|
{% if oizone['cpus'] == "dedicated" %}
|
add dedicated-cpu;
|
set ncpus={{ oizone['ncpus'] }};
|
end;
|
{% endif %}
|
{% if oizone['cpus'] == "capped-cpu" %}
|
add capped-cpu;
|
set ncpus={{ oizone['ncpus'] }};
|
end;
|
{% endif %}
|
{% if oizone['mem'] == "capped-memory" %}
|
add capped-memory;
|
set physical={{ oizone['ram'] }};
|
set swap={{ oizone['swap'] }};
|
set locked={{ oizone['locked'] }};
|
end;
|
{% endif %}
|
{% for dataset in oizone['filesystems'] %}
|
{% if dataset['type'] == "dataset" %}
|
add dataset;
|
set name={{ dataset['path'] }};
|
end;
|
{% endif %}
|
{% if dataset['type'] == "lofs" %}
|
add fs;
|
set special={{ dataset['path'] }};
|
set dir={{ dataset['mountpoint'] }};
|
set type="lofs";
|
{% for option in database['options'] %}
|
add options {{ option }};
|
{% endfor %}
|
end;
|
{% endif %}
|
{% if dataset['type'] == "volume" %}
|
add device;
|
set match=/dev/zvol/rdsk/{{ dataset['path'] }};
|
end;
|
{% endif %}
|
{% endfor %}
|
{% if oizone['brand'] == "kvm" %}
|
add attr;
|
set name="bootorder";
|
set type="string";
|
set value="{{ oizone['kvm']['bootorder'] }}";
|
add attr;
|
set name="vnc";
|
set type="string";
|
set value="{{ oizone['kvm']['vnc'] }}";
|
end;
|
add attr;
|
set name="vcpus";
|
set type="string";
|
set value="{{ oizone['ncpus'] }}";
|
end;
|
add attr;
|
set name="ram";
|
set type="string";
|
set value="{{ oizone['ram'] }}";
|
end;
|
{% endif %}
|
|
- name: create a sysding.conf
|
template:
|
dest: "{{ oizone['zoneroot'] }}/{{ oizone['name'] }}/root/etc/sysding.conf"
|
src: sysding.j2
|