Showing posts with label Zones. Show all posts
Showing posts with label Zones. Show all posts

18 November 2022

Solaris 11.4 SRU51 (Nov 2022) - virtinfo enhancements for Solaris Zones

In the past virtinfo provided only minimal information about the underlying global zone.

root@marcel49:~# uname -a
SunOS marcel49 5.11 11.4.47.119.2 sun4v sparc sun4v non-global-zone

root@marcel49:~# virtinfo get all
NAME            CLASS       PROPERTY VALUE
non-global-zone current     -        -
logical-domain  parent      -        -
non-global-zone unsupported status   not supported in non-global-zone
kernel-zone     unsupported status   not supported in non-global-zone
logical-domain  unsupported status   not supported in non-global-zone


After upgrade to SRU51, we have details from the parent.

Remark: I modified our serial number in the output below.
The serial is helpful if you need to open a case with Oracle Support.

root@marcel49:~# uname -a
SunOS marcel49 5.11 11.4.51.132.1 sun4v sparc sun4v non-global-zone

root@marcel49:~# virtinfo get all
NAME            CLASS       PROPERTY              VALUE
non-global-zone current     zonename              marcel49
non-global-zone current     chassis-serial-number AK99999999
non-global-zone current     parent-hostname       g0049.jomasoft-lab.ch
logical-domain  parent      -                     -
non-global-zone unsupported status                not supported in non-global-zone
kernel-zone     unsupported status                not supported in non-global-zone
logical-domain  unsupported status                not supported in non-global-zone

Output of values is also supported

root@marcel49:~# virtinfo -c current get -H -o value parent-hostname
g0049.jomasoft-lab.ch

15 February 2021

Oracle LGWR is not running at highest priority

The Oracle database does automatically increase the priority on Solaris if you run
the database version 11.2.0.4 or later. On older versions this does not happen.


If you are on Oracle 12.1.0.2 it could be because of Bug
27092821 - IN 12C CRITICAL DATABASE PROCESSES ARE NOT RUNNING WITH HIGHER PRIORITIES IN FSS
It is fixed in 12.1.0.2.99


If you run the Oracle database in a Solaris Zone, make sure you have 'proc_priocntl' set in limitpriv in your zonecfg. This is required to allow the change of the priority inside the zone.


Ideally the ora_lwgr_x process should run in the FX class with prio 60.
This can be verified using

ps -efcZ | grep lgwr




10 June 2016

How to change Solaris Zones configurations online

I assume you are aware that Solaris Zones are one of the most valuable features of Solaris since years. In this post I focus on the "Live Zone Reconfiguration" feature available since
Solaris 11.2 for Solaris Zones and since Solaris 11.3 for Kernel Zones. CPU pools, filesystems, network and disk configurations can be changed while Solaris Zones are running.

1. Limit CPU usage of a Solaris Zone using dedicated-cpu

By default Solaris Zones share the CPUs with the global and all other local Zones.
Our sample Zone currently uses 16 virtual CPUs.

# zlogin v0131 psrinfo | wc -l

16


We can now assign 4 dedicated virtual CPUs to be used by this Zone only.

# zonecfg -z v0131 -r "add dedicated-cpu; set ncpus=4; end"

zone 'v0131': Checking: Adding dedicated-cpu

zone 'v0131': Applying the changes

# zlogin v0131 psrinfo | wc -l

4
The “zonecfg -r” changes the configuration of the running Zone only.
Make sure to run the command once again to make the configuration persistent for the next Zone reboot.

# zonecfg -z v0131 "add dedicated-cpu; set ncpus=4; end"


2. Create and mount an additional ZFS filesystem

# zfs create v0131_data/myapp

# zonecfg -z v0131 -r "add fs; set type=zfs; set dir=/myapp; set special=v0131_data/myapp; end"

zone 'v0131': Checking: Mounting fs dir=/myapp

zone 'v0131': Applying the changes


# zlogin v0131 mount | grep myapp

/myapp on /myapp read/write/setuid/devices/rstchown/nonbmand/exec/xattr/atime/zone=v0131/nozonemod/sharezone=4/dev=d50045 on Fri Jun 10 11:56:19 2016


And make it persistent

# zonecfg -z v0131 "add fs; set type=zfs; set dir=/myapp; set special=v0131_data/myapp; end"

Adding network interfaces and disk devices are similar to the samples above.