solaris 10, kernel parameters for ids 9.40
Posted in 2008
On Solaris 10 the old /etc/system IPC tunables (semmns, shmmax, shmmni, etc.) are gone, replaced by resource controls, and the poster asked how to tune them for IDS 9.40. Jonathan Leffler said no tuning/equivalents are needed. The real problem was that only one of three instances would start, failing with 'shmget: EINVAL invalid segment size / can't create resident segment'. The cause was the project.max-shm-memory resource control being too small; raising it (projmod -s -K 'project.max-shm-memory=...' default, or prctl -n project.max-shm-memory -v 30GB -r -i project default to change it online) fixed it. Check values with prctl -i project default, and note zones need separate handling.
Auto-generated by DrWatson from the posts below — may be imperfect; read the full thread.
Topics: Platform-Specific Issues, Versions, Editions & End-of-Life
Hi, I'm testing my instances in a server with solaris 10. I read release machine notes And it says: b) On Solaris 10, all System V IPC facilities are either automatically configured or can be controlled by resource controls. The following kernel parameters are either removed or commented out from /etc/system: semsys:seminfo_semmap semsys:seminfo_semmns semsys:seminfo_semmnu semsys:seminfo_semume shmsys:shminfo_shmmin shmsys:shminfo_shmseg The following obsolete IPC tunables are replaced by their resource controls with the new default values: semsys:seminfo_semmni semsys:seminfo_semmsl shmsys:shminfo_shmmax shmsys:shminfo_shmmni Please reference rctladm(1m) for more information about available resource controls. My questions are: Is it any recomendation to tune this parameters?, because it refers that first group is automatically configured; and second group says that they're configured with default values, but do ther're really have default ones? Document doesn't refer nothing with new parameters equivalences in SOLARIS 10. Does any knows equivalences? Thanks
On Fri, May 30, 2008 at 10:35 AM, PAULO RAFAEL PADILLA VELAZQUEZ <rafaelpadilla@grupomayan.com> wrote: > I'm testing my instances in a server with solaris 10. > I read release machine notes And it says: > > b) On Solaris 10, all System V IPC facilities are either automatically > configured or can be controlled by resource controls. > The following kernel parameters are either removed or commented out > from /etc/system: > > semsys:seminfo_semmap > semsys:seminfo_semmns > semsys:seminfo_semmnu > semsys:seminfo_semume > shmsys:shminfo_shmmin > shmsys:shminfo_shmseg > > The following obsolete IPC tunables are replaced by their resource > controls with the new default values: > > semsys:seminfo_semmni > semsys:seminfo_semmsl > shmsys:shminfo_shmmax > shmsys:shminfo_shmmni > > Please reference rctladm(1m) for more information about available > resource controls. > > My questions are: > > Is it any recomendation to tune this parameters?, because it refers that first > group is automatically configured; and second group says that they're > configured with default values, but do ther're really have default ones? Basically, you don't need to tune the system - you can't tune the system; don't worry about it. > Document doesn't refer nothing with new parameters equivalences in SOLARIS 10. > Does any knows equivalences? There are no equivalents. Really - the /etc/system on my Solaris 10 box has none of those and is fine running half-a-dozen instances of IDS of various versions (simultaneously). I did have problems with the other parameter mentioned in the 11.50 release notes... # IDS 11.50.UC1 recommends this setting (JL 2008-05-11) # IDS 11.50.UC1 was locking up without it - trying with. set mmu_ism_pagesize = 4194304 I'm not certain that it cured the problems I was seeing, but things are working better now. -- Jonathan Leffler #include <disclaimer.h> Email: jleffler@earthlink.net, jleffler@us.ibm.com Guardian of DBD::Informix v2008.0513 -- http://dbi.perl.org/ "Blessed are we who can laugh at ourselves, for we shall never cease to be amused." NB: Please do not use this email for correspondence. I don't necessarily read it every week, even.
Thank you for your comments Jonathan.
I hope you can give me another advice or anyone else...
I was asking for those parameters because after I installed my SOLARIS 10, I
installed IDS 9.FC40FC9 and I recovered from archive 3 instances, but I
realized that I can only have running one at time.
My Solaris installation is a global zone and it's release 05/08.
I took care about my parameters to avoid SHMEM problems, but this message
still comes out.
20:38:03 IBM Informix Dynamic Server Started.
20:38:03 shmget: [EINVAL][22]: key 52644802: invalid segment size
20:38:03 mt_shm_init: can't create resident segment
I have share same IDS 9.40 FC9 installation, but I have these parameters for
each instance:
Is any issue missing?
1)
SERVERNUM 2
SHMBASE 0x10A000000L
DBSERVERNAME on_matrizINFORMIXSERVER on_matriz
ROOTHPATH /opt/INFORMIXDBS/ON_MATRIZ/rootdbs.000
DBSERVERALIAS on_matriztcp
2)
SERVERNUM 14
SHMBASE 0x10A000000L
DBSERVERNAME on_interfasesINFORMIXSERVER on_interfases
ROOTHPATH /opt/INFORMIXDBS/ON_INTERFASES/rootdbs.000
DBSERVERALIAS on_interfasestcp
3)
SERVERNUM 15
SHMBASE 0x10A000000L
SERVERNUM 14
SHMBASE 0x10A000000L
DBSERVERNAME on_inventarioINFORMIXSERVER on_inventario
ROOTHPATH /opt/INFORMIXDBS/ON_INVENTARIO/rootdbs.000
DBSERVERALIAS on_inventariotcp
Unless that's a typo below, it looks like the 'inventario' instance has two
SERVERNUM entries and one, SERVERNUM 14, clashes with the 'interfases'
instance.
On Mon, Jun 2, 2008 at 2:27 PM, PAULO RAFAEL PADILLA VELAZQUEZ <
rafaelpadilla@grupomayan.com> wrote:
> Thank you for your comments Jonathan.
> I hope you can give me another advice or anyone else...
>
> I was asking for those parameters because after I installed my SOLARIS 10,
> I
> installed IDS 9.FC40FC9 and I recovered from archive 3 instances, but I
> realized that I can only have running one at time.
>
> My Solaris installation is a global zone and it's release 05/08.
>
> I took care about my parameters to avoid SHMEM problems, but this message
> still comes out.
>
> 20:38:03 IBM Informix Dynamic Server Started.
> 20:38:03 shmget: [EINVAL][22]: key 52644802: invalid segment size
> 20:38:03 mt_shm_init: can't create resident segment
>
> I have share same IDS 9.40 FC9 installation, but I have these parameters
> for
> each instance:
> Is any issue missing?
>
> 1)
> SERVERNUM 2
> SHMBASE 0x10A000000L
> DBSERVERNAME on_matriz> INFORMIXSERVER on_matriz
> ROOTHPATH /opt/INFORMIXDBS/ON_MATRIZ/rootdbs.000
> DBSERVERALIAS on_matriztcp
>
> 2)
> SERVERNUM 14
> SHMBASE 0x10A000000L
> DBSERVERNAME on_interfases> INFORMIXSERVER on_interfases
> ROOTHPATH /opt/INFORMIXDBS/ON_INTERFASES/rootdbs.000
> DBSERVERALIAS on_interfasestcp
>
> 3)
> SERVERNUM 15
> SHMBASE 0x10A000000L
> SERVERNUM 14
> SHMBASE 0x10A000000L
> DBSERVERNAME on_inventario> INFORMIXSERVER on_inventario
> ROOTHPATH /opt/INFORMIXDBS/ON_INVENTARIO/rootdbs.000
> DBSERVERALIAS on_inventariotcp
>
>
>
>
*******************************************************************************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
>
--
Art S. Kagel
Oninit (www.oninit.com)
IIUG Board of Directors (art@iiug.org)
Disclaimer: Please keep in mind that my own opinions are my own opinions and
do not reflect on my employer, Oninit, the IIUG, nor any other organization
with which I am associated either explicitly or implicitly. Neither do
those opinions reflect those of other individuals affiliated with any entity
with which I am affiliated nor those of the entities themselves.
Ups! Shame on me... Thank you for your observation Art it was a typing error on my subject, there are ok in y instances ... SERVERNUM for each instance are: SERVERNUM 2 SERVERNUM 14 SERVERNUM 15 respectively and so error is still on server... I'd appreciate any advice. Regards
Hi
not an expert with Solaris 10 but may be the following will work:
- Search for the shared memory parameters (bacical: BUFFERS, SHMVIRTSIZE) in
onconfig of the particular instances
- add them up for all instances
- Define a limit for shared memory with SHMTOTAL in case a running instance
allocates more virtual portion.
- Some Solaris kernel parameter are project specific
- Assuming you start your Informix instances in the global zone and you
didn't define a project for running informix instances
- then the "default" project is the one which is in effect
- you may list the kernel parameters with: prctl -i project default
- or find the PID of an oninit and list the effectual parameters with: prctl
-i pid oninitpid
- Search for parameter: project.max-shm-memory
- It should be greater than the sum of the shared memory parameters of all
your instances (but less than actual available memory of your server)
- You may set the kernel parameter for the "default" project e.g.to 30 GB:
projmod -s -K 'project.max-shm-memory=(privileged,32212254720,deny)'
default
We didn't change any other kernel parameter though it might be neccessary in
your case.
Have a look to the man-page of prctl, projmod, rctladm, resource_controls(5)
etc.
HTH,
Reinhard.
> -----Original Message-----
> From: ids-bounces@iiug.org [mailto:ids-bounces@iiug.org]On Behalf Of
> PAULO RAFAEL PADILLA VELAZQUEZ
> Sent: Monday, June 02, 2008 10:55 PM
> To: ids@iiug.org
> Subject: Re: solaris 10, kernel parameters for ids 9.40 [12281]
>
>
> Ups! Shame on me...
>
> Thank you for your observation Art
>
> it was a typing error on my subject, there are ok in y instances ...
> SERVERNUM for each instance are: SERVERNUM 2 SERVERNUM 14
> SERVERNUM 15> respectively and so error is still on server...
>
> I'd appreciate any advice.
>
> Regards
>
>
> **************************************************************
> *****************
> Forum Note: Use "Reply" to post a response in the discussion forum.
>
Thank you Reinhard You gave me a big clue, I really appreciate it. My server had a very short value for max-shm-memory as you described. I increased this value and it runs as cheetah! I just want to complement your advice. You can use this other command to avoid reinitiate your server (it's online, good for solaris 10), but that command that you showed before is needed to keep it every reebot. (Note that you can specify in short way size of max-shm-memory with letter G meaning Gb in all solaris parameters commands). #prctl -n project.max-shm-memory -v 30GB -r -i project default I hope anyone else find this helpful, because there are obsolete kernel and other well tuned parameters in SOLARIS 10 as Jonathan described above, but there are other ones that we need to pay attention like this one and they could become a headache. I'll call to INFORMIX support in order to advice them that they should put a better description in release machine notes about this SOLARIS 10 features. Thanks everybody. NOTE: To Everyone who read this. Take care about these commands. They are for default project in global zone, if you're using solaris zones, you must review the way to tune them.