Hi Jim,

Thank you for your feedback and your thoughs, I make some test for clarifying my experience ...


*_On Solaris 11_*

root@soledg14:~# zpool create -O mountpoint=none -O compression=lz4 Testpool c0t60060160F4D0320042F89EFA1FF1E611d0

root@soledg14:~# zpool list
Testpool            49.8G   122K  49.7G 0%  1.00x  ONLINE  -
rpool                278G  83.7G   194G  30%  1.00x  ONLINE  -

root@soledg14:~# zfs list
Testpool 143K  49.0G    31K  none
Testpool/TestZones                                31K  49.0G 31K  /TestZones

root@soledg14:~# zoneadm list -civ
 - TestZone         configured  /TestZones/TestZone solaris    excl

root@soledg14:~# zoneadm -z TestZone install
The following ZFS file system(s) have been created:
    Testpool/TestZones/TestZone
Progress being logged to /var/log/zones/zoneadm.20170212T140109Z.TestZone.install
       Image: Preparing at /TestZones/TestZone/root.

 Install Log: /system/volatile/install.16565/install_log
 AI Manifest: /tmp/manifest.xml.vvcbTb
  SC Profile: /usr/share/auto_install/sc_profiles/enable_sci.xml
    Zonename: TestZone
Installation: Starting ...

        Creating IPS image
Startup linked: 1/1 done
        Installing packages from:
            solaris
                origin: http://oracle-oem-oc-mgmt-ops-proxy-edg:8002/IPS/
            cacao
                origin: http://oracle-oem-oc-mgmt-ops-proxy-edg:8002/IPS/
            mp-re
                origin: http://oracle-oem-oc-mgmt-ops-proxy-edg:8002/IPS/
            opscenter
                origin: http://oracle-oem-oc-mgmt-ops-proxy-edg:8002/IPS/
DOWNLOAD PKGS FILES XFER (MB) SPEED Completed 285/285 55878/55878 479.8/479.8 5.9M/s

PHASE                                          ITEMS
Installing new actions                   73669/73669
Updating package state database                 Done
Updating package cache                           0/0
Updating image state                            Done
Creating fast lookup database                   Done
Updating package cache                           4/4
Installation: Succeeded

        Note: Man pages can be obtained by installing pkg:/system/manual

 done.

        Done: Installation completed in 221.859 seconds.


  Next Steps: Boot the zone, then log into the zone console (zlogin -C)

              to complete the configuration process.

Log saved in non-global zone as /TestZones/TestZone/root/var/log/zones/zoneadm.20170212T140109Z.TestZone.install


root@soledg14:~# zfs list
Testpool 932M  48.1G    31K  none
Testpool/TestZones 931M 48.1G 32K /TestZones Testpool/TestZones/TestZone 931M 48.1G 32K /TestZones/TestZone Testpool/TestZones/TestZone/rpool 931M 48.1G 31K /rpool Testpool/TestZones/TestZone/rpool/ROOT 931M 48.1G 31K legacy Testpool/TestZones/TestZone/rpool/ROOT/solaris 931M 48.1G 847M /TestZones/TestZone/root Testpool/TestZones/TestZone/rpool/ROOT/solaris/var 84.3M 48.1G 83.4M /TestZones/TestZone/root/var Testpool/TestZones/TestZone/rpool/VARSHARE 31K 48.1G 31K /var/share Testpool/TestZones/TestZone/rpool/export 62K 48.1G 31K /export Testpool/TestZones/TestZone/rpool/export/home 31K 48.1G 31K /export/home


So on Solaris 11 it allow you to install a zone even if the parent mountpoint = none


*_Did also some test on OmniOS_*

root@OmniOS:/root# zfs list
NAME                                         USED  AVAIL  REFER MOUNTPOINT
DATA 435G   774G    23K  /LXZones
DATA/Backup                                  432G   774G   432G /Backup
DATA/LXMatterMost 408M 774G 347M /LXZones/LXMatterMost
DATA/Zones2                                 2,13G   774G    23K /Zones2
DATA/Zones2/NGINX 959M 774G 24K /Zones2/NGINX
DATA/Zones2/NGINX/ROOT                       959M   774G    23K legacy
DATA/Zones2/NGINX/ROOT/export                 71K   774G    23K /export
DATA/Zones2/NGINX/ROOT/export/home            48K   774G    23K /export/home
DATA/Zones2/NGINX/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/NGINX/ROOT/zbe                   959M   774G   959M legacy
DATA/Zones2/Percona 1,19G 774G 24K /Zones2/Percona
DATA/Zones2/Percona/ROOT                    1,19G   774G    23K legacy
DATA/Zones2/Percona/ROOT/export               71K   774G    23K /export
DATA/Zones2/Percona/ROOT/export/home          48K   774G    23K /export/home
DATA/Zones2/Percona/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/Percona/ROOT/zbe                1,19G   774G  1,19G legacy


root@OmniOS:/root# zfs set mountpoint=none DATA
root@OmniOS:/root# zfs list
NAME                                         USED  AVAIL  REFER MOUNTPOINT
DATA 435G   774G    23K  none
DATA/Backup                                  432G   774G   432G /Backup
DATA/LXMatterMost                            408M   774G   347M none
DATA/Zones2                                 2,13G   774G    23K /Zones2
DATA/Zones2/NGINX 959M 774G 24K /Zones2/NGINX
DATA/Zones2/NGINX/ROOT                       959M   774G    23K legacy
DATA/Zones2/NGINX/ROOT/export                 71K   774G    23K /export
DATA/Zones2/NGINX/ROOT/export/home            48K   774G    23K /export/home
DATA/Zones2/NGINX/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/NGINX/ROOT/zbe                   959M   774G   959M legacy
DATA/Zones2/Percona 1,19G 774G 24K /Zones2/Percona
DATA/Zones2/Percona/ROOT                    1,19G   774G    23K legacy
DATA/Zones2/Percona/ROOT/export               71K   774G    23K /export
DATA/Zones2/Percona/ROOT/export/home          48K   774G    23K /export/home
DATA/Zones2/Percona/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/Percona/ROOT/zbe                1,19G   774G  1,19G legacy

root@OmniOS:/root# zonecfg -z Test
Test: No such zone configured
Use 'create' to begin configuring a new zone.
zonecfg:Test> create
zonecfg:Test> set zonepath=/Zones2/Test
zonecfg:Test> info
zonecfg:Test> exit
root@OmniOS:/root# zonecfg -z Test info
zonename: Test
zonepath: /Zones2/Test
brand: ipkg
autoboot: false
bootargs:
pool:
limitpriv:
scheduling-class:
ip-type: shared
hostid:
fs-allowed:
root@OmniOS:/root#

I'm not making here the filesytem DATA/Zones2/Test !!!!


root@OmniOS:/root# zfs list
NAME                                         USED  AVAIL  REFER MOUNTPOINT
DATA                                         435G   774G    23K none
DATA/Backup                                  432G   774G   432G /Backup
DATA/LXMatterMost                            408M   774G   347M none
DATA/Zones2                                 2,13G   774G    23K /Zones2
DATA/Zones2/NGINX 959M 774G 24K /Zones2/NGINX
DATA/Zones2/NGINX/ROOT                       959M   774G    23K legacy
DATA/Zones2/NGINX/ROOT/export                 71K   774G    23K /export
DATA/Zones2/NGINX/ROOT/export/home            48K   774G    23K /export/home
DATA/Zones2/NGINX/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/NGINX/ROOT/zbe                   959M   774G   959M legacy
DATA/Zones2/Percona 1,19G 774G 24K /Zones2/Percona
DATA/Zones2/Percona/ROOT                    1,19G   774G    23K legacy
DATA/Zones2/Percona/ROOT/export               71K   774G    23K /export
DATA/Zones2/Percona/ROOT/export/home          48K   774G    23K /export/home
DATA/Zones2/Percona/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/Percona/ROOT/zbe                1,19G   774G  1,19G legacy

root@OmniOS:/root# zoneadm list -civ
  ID NAME             STATUS     PATH BRAND    IP
   0 global           running    / ipkg     shared
   - DNS              installed  /Zones/DNS lipkg    excl
   - LXDebian8        installed  /Zones/LXDebian8 lx       excl
   - LXMatterMost     installed  /LXZones/LXMatterMost lx       excl
   - Percona          installed  /Zones2/Percona lipkg    excl
   - NGINX            installed  /Zones2/NGINX lipkg    excl
   - Test             configured /Zones2/Test ipkg     shared

root@OmniOS:/root# zoneadm -z Test install
WARNING: zone LXMatterMost is installed, but its zonepath /LXZones/LXMatterMost does not exist.
Sanity Check: Looking for 'entire' incorporation.
ERROR: the zonepath must be a ZFS dataset.
The parent directory of the zonepath must be a ZFS dataset so that the
zonepath ZFS dataset can be created properly.
root@OmniOS:/root#

On this point I had to uninstall the LXMatterMost zone because I set the mountpoint=none on the DATA pool and the LXMatterMost zone depend on the mountpoint=/LXZones of the DATA pool.

Then I also created a filesystem DATA/Zones2/Test


root@OmniOS:/root# zfs create -o mountpoint=/Zones2/Test DATA/Zones2/Test
root@OmniOS:/root# zfs list
NAME                                         USED  AVAIL  REFER MOUNTPOINT
DATA 435G   774G    23K  none
DATA/Backup                                  432G   774G   432G /Backup
DATA/Zones2                                 2,13G   774G    23K /Zones2
DATA/Zones2/NGINX 959M 774G 24K /Zones2/NGINX
DATA/Zones2/NGINX/ROOT                       959M   774G    23K legacy
DATA/Zones2/NGINX/ROOT/export                 71K   774G    23K /export
DATA/Zones2/NGINX/ROOT/export/home            48K   774G    23K /export/home
DATA/Zones2/NGINX/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/NGINX/ROOT/zbe                   959M   774G   959M legacy
DATA/Zones2/Percona 1,19G 774G 24K /Zones2/Percona
DATA/Zones2/Percona/ROOT                    1,19G   774G    23K legacy
DATA/Zones2/Percona/ROOT/export               71K   774G    23K /export
DATA/Zones2/Percona/ROOT/export/home          48K   774G    23K /export/home
DATA/Zones2/Percona/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/Percona/ROOT/zbe                1,19G   774G  1,19G legacy
DATA/Zones2/Test 23K   774G    23K  /Zones2/Test


And now it is allowed to install the zone :)


root@OmniOS:/root# zoneadm -z Test install
/Zones2/Test must not be group readable.
/Zones2/Test must not be group executable.
/Zones2/Test must not be world readable.
/Zones2/Test must not be world executable.
/Zones2/Test: changing permissions to 0700.
Sanity Check: Looking for 'entire' incorporation.
       Image: Preparing at /Zones2/Test/root.

   Publisher: Using omnios (http://pkg.omniti.com/omnios/r151020/).
       Cache: Using /var/pkg/publisher.
  Installing: Packages (output follows)
Packages to install: 388
Mediators to change:   1
 Services to change:   5

DOWNLOAD PKGS FILES XFER (MB) SPEED Completed 388/388 37406/37406 332.0/332.0 0B/s

PHASE                                          ITEMS
Installing new actions                   61025/61025
Updating package state database                 Done
Updating package cache                           0/0
Updating image state                            Done
Creating fast lookup database                   Done

        Note: Man pages can be obtained by installing pkg:/system/manual
 Postinstall: Copying SMF seed repository ... done.
        Done: Installation completed in 93,895 seconds.

  Next Steps: Boot the zone, then log into the zone console (zlogin -C)
              to complete the configuration process

root@OmniOS:/root# zoneadm -z Test boot; zlogin -C Test
[Connected to zone 'Test' console]
Loading smf(5) service descriptions: 113/113
Hostname: Test

Test console login:

root@OmniOS:/root# zfs list
NAME                                         USED  AVAIL  REFER MOUNTPOINT
DATA 435G   774G    23K  none
DATA/Backup                                  433G   774G   433G /Backup
DATA/Zones2                                 2,66G   774G    24K /Zones2
DATA/Zones2/NGINX 959M 774G 24K /Zones2/NGINX
DATA/Zones2/NGINX/ROOT                       959M   774G    23K legacy
DATA/Zones2/NGINX/ROOT/export                 71K   774G    23K /export
DATA/Zones2/NGINX/ROOT/export/home            48K   774G    23K /export/home
DATA/Zones2/NGINX/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/NGINX/ROOT/zbe                   959M   774G   959M legacy
DATA/Zones2/Percona 1,19G 774G 24K /Zones2/Percona
DATA/Zones2/Percona/ROOT                    1,19G   774G    23K legacy
DATA/Zones2/Percona/ROOT/export               71K   774G    23K /export
DATA/Zones2/Percona/ROOT/export/home          48K   774G    23K /export/home
DATA/Zones2/Percona/ROOT/export/home/witte 25K 774G 25K /export/home/witte
DATA/Zones2/Percona/ROOT/zbe                1,19G   774G  1,19G legacy
DATA/Zones2/Test 540M   774G    23K  /Zones2/Test
DATA/Zones2/Test/ROOT                        540M   774G    23K legacy
DATA/Zones2/Test/ROOT/zbe                    540M   774G   540M legacy

So that's why I ask the question :)

In my opinion we miss some logic in the zoneadm, we don't need to set a parent mountpoint like i proof with above example.

Maybe someone can have a look on the code it would be great to fix this, if I had the knowledge how to fix it it should be great, but I'm unfortunately not so smart and intelligent as you guy's sorry :(

I wish ;)


Kind Regards,


Dirk


On 10-02-17 22:19, Jim Klimov wrote:
9 февраля 2017 г. 18:09:04 CET, Dirk Willems <dirk.will...@exitas.be> пишет:
Thanks Dan,


I just was wondering about it, because in Solaris it's allowed we do it

all the time and it's become a automatic behavior for us, but if we
know
it we can arrange it like you do.


Thanks


On 09-02-17 17:41, Dan McDonald wrote:
On Feb 9, 2017, at 11:28 AM, Dirk Willems <dirk.will...@exitas.be>
wrote:
Hello OmniOS,

Why isn't allowed to install a LX-Zone or Zone if the DATA pool
doesn't have a mountpoint on the parent ?

below example doesn't allow you to install a Zone or LX-Zone

root@OmniOS:/root# zfs list
NAME                           USED  AVAIL  REFER  MOUNTPOINT
DATA                           432G   777G    23K  none
DATA/Backup                    432G   777G   432G  /Backup
DATA/LXZones                    23K   777G    23K  /LXZones


below example does allow you to install a Zone or LX-Zone

root@OmniOS:/root# zfs list
NAME                           USED  AVAIL  REFER  MOUNTPOINT
DATA                           433G   776G    23K  /LXZones
DATA/Backup                    432G   776G   432G  /Backup
DATA/LXMatterMost              229M   776G   228M
/LXZones/LXMatterMost

It's kind ignoring because i like to make separated filesystems for
having a nice overview :)
All zones (not just LX) need to be a subdirectory of a higher-level
ZFS filesystem.  This is so zoneadm(1M) can create the zone root.
bloody(~)[0]% zfs list | grep zones | grep -v zbe
data/zones                              3.90G   509G    23K  /zones
data/zones/lipkg0                       3.14G   509G    24K
/zones/lipkg0
data/zones/lipkg0/ROOT                  3.14G   509G    23K  legacy
data/zones/lx0                           465M   509G   465M
/zones/lx0
data/zones/lx1                           315M   509G   239M
/zones/lx1
bloody(~)[0]%

My bloody box has zones name per their brand, so you can see what I
mean.
Dan

Just in case, do you not mistake zone roots here with delegated datasets (e.g. 
for data or local progs, but with zfs structure managed from inside the zone)? 
This is indeed usable even from different pools in solaris 10 up to openindiana 
at least.
--
Typos courtesy of K-9 Mail on my Samsung Android

--

<http://www.exitas.be/>

        
        

**Dirk Willems* *
System Engineer

        

*+32 (0)3 443 12 38* <tel:003234431238>

        

*dirk.will...@exitas.be* <mailto:dirk.will...@exitas.be>

        

*Veldkant 31 - 2550 Kontich* <https://goo.gl/maps/2fuSkEZe3Lz>

        

*www.exitas.be* <http://www.exitas.be>

*Disclaimer* <http://www.exitas.be/legal/disclaimer/>

_______________________________________________
OmniOS-discuss mailing list
OmniOS-discuss@lists.omniti.com
http://lists.omniti.com/mailman/listinfo/omnios-discuss

Reply via email to