Nazwa zony i fizycznego interfejsu sieciowego:
ZNAME="il1"
NIC="nge0"
Tworzymy wirtualną kartę sieciową oraz kontener, do którego będziemy instalować zonę:
dladm create-vnic -l ${NIC} ${ZNAME}
zfs create -o canmount=off -o mountpoint=/zones rpool/zones
Konfiguracja strefy. W podanym przykładzie mamy:
- montowany katalog /code z globalnej strefy
- ograniczenie CPU do 0.5 rdzenia
- ograniczenie pamięci do 512MB i swap do 768MB
cat >${ZNAME}.cfg << EOF
create
set autoboot=true
set zonepath=/zones/${ZNAME}
set ip-type=exclusive
add fs
set dir=/code
set special=/code
set type=lofs
end
add net
set physical=${ZNAME}
end
add capped-cpu
set ncpus=0.5
end
add capped-memory
set physical=512m
set swap=768m
end
EOF
Podstawowa konfiguracja systemu zony.
Uwaga, wszystkie parametry muszą się zgadzać z istniejącą infrastrukturą.
Jeśli przykładowo nie będzie wpisu w DNS dla zony, to konfigurator będzie prosił o manualne podanie poprawnego hostname/dns itp:
cat > ${ZNAME}.sysidcfg << EOF
system_locale=C
terminal=xterms
network_interface=primary {
hostname=${ZNAME}
default_route=10.10.10.1
ip_address=10.10.10.12
netmask=255.255.255.0
protocol_ipv6=no
}
security_policy=NONE
name_service=DNS {
domain_name=example.com
name_server=10.20.20.20,10.20.20.21
}
nfs4_domain=dynamic
timezone=Poland
root_password=passwPassWorD
EOF
Konfiguracja zony:
zonecfg -z ${ZNAME} -f ${ZNAME}.cfg
Utworzenie ZFSu i instalacja:
zfs create -o quota=50g rpool/zones/${ZNAME}
chmod 700 /zones/${ZNAME}
ptime zoneadm -z ${ZNAME} install
Po instalacji wrzucamy konfigurację i odpalamy zainstalowaną strefę:
zoneadm -z ${ZNAME} ready
cp ${ZNAME}.sysidcfg /zones/${ZNAME}/root/etc/sysidcfg
zoneadm -z ${ZNAME} boot
zlogin -C ${ZNAME}
Jeśli wszystkie przekazane parametry były poprawne, to powinniśmy dostać ekran logowania, w innym wypadku konfigurator poprosi o korektę.
Przykład przetestowany na OpenIndiana b148.