[TriLUG] CentOS 5.5: kickstart shmall and shmmax woes

Brian Weaver cmdrclueless at gmail.com
Thu Jan 6 21:31:47 EST 2011


Kristopher,

The only problem with what you've posted is that it requires the system to be rebooted. I need PostgreSQL to run during the initial kickstart. I've added a bit of code to the %pre section of the kickstart configuration to work around the issue. I'm just curious why it changes during package installation on a cdrom install but doesn't change during package installation of a network install.

Once the system reboots and starts normally the default values have been acceptable without any modification on my part.

-- Weave


On Jan 6, 2011, at 7:33 PM, Kristopher Kane wrote:

> On Thu, Jan 6, 2011 at 6:16 PM, Brian Weaver <cmdrclueless at gmail.com> wrote:
> 
>> Well I've run into an issue that kind of has me shaking my head. I'm
>> wondering if anyone on the list might have some idea what is causing the odd
>> behavior that I'm seeing.
>> 
>> The problem I'm running into has to do with a new kickstart install of a
>> CentOS 5.5 system with additional custom packages. We have a build process
>> that replicates the ISO layout so that we can build an installable DVD. As
>> part of the process we build two sets of kickstart configuration files. One
>> for the ISO and one for a network install via HTTP. The kickstart
>> configuration files are built from an identical master source with just the
>> URL being changed. Using the 'diff' command I can verify that the only
>> difference between the two configuration files is that one has 'url --url
>> ....' and the other has 'cdrom' as the installation source.
>> 
>> One of the software packages installed is PostgreSQL version 8.4 that is in
>> the distribution. Our code later creates a database during the %post section
>> of the kickstart file. The problem I'm having is that PostgreSQL is not
>> starting during the network install but is working fine during the cdrom
>> install. The problem is the values 'kernel.shmmax' and 'kernel.shmall'
>> 
>> The default shared memory size is too small on the network installation but
>> is sufficiently large enough on the cdrom installation. The two installation
>> use the same kickstart file (except installation source), vmlinuz, and
>> initrd.img. To further complicate matters I accessed the shell when the
>> installation starts via ALT-F2 and initially the values for shmmax and
>> shmall are *identical* when the system starts installing packages. At some
>> point during the installation the values for shmmax and shmall change on the
>> cdrom install but do not on the network install.
>> 
>> The two system install exactly the same RPMs, have the same partition
>> layout, and have been tested on the same hardware. I checked each rpm in the
>> i386/CentOS directory of the DVD using 'rpm -q --triggers --scripts -p $rpm'
>> to see if any of them changed the values of shmmax or shmall. I couldn't
>> find any scripts that modified the kernel values.
>> 
>> I hope I managed to explain it well enough for all to understand the
>> problem. If you have any ideas I'd like to know.
>> 
>> Thanks
>> 
>> -- Weave
>> 
>> 
> 
> Hi Weave,
> 
> This post was interesting to me so I did some searching and found this:
> 
> http://wiki.oracle.com/page/Linux+installation+kickstart+for+Oracle+database
> 
> <excerpt from Oracle Kickstart>
> # Change kernel parameters
> cat >> /etc/sysctl.conf << EOF
> 
> ##############################
> # Oracle Database requirements
> ##############################
> 
> # The max value for shmmax on a 32bit machine is 4294967295
> #kernel.shmmax = 536870912
> 
> kernel.shmall = 2097152
> kernel.shmmni = 4096
> kernel.sem = 250 32000 100 128
> fs.file-max = 658576
> net.ipv4.ip_local_port_range = 1024 65000
> net.core.rmem_default = 262144
> net.core.wmem_default = 262144
> net.core.rmem_max = 1048536
> net.core.wmem_max = 1048536
> EOF
> 
> 
> </excerpt>
> 
> You will have to figure out your max values.  I also found this:
> 
> http://developer.postgresql.org/pgdocs/postgres/kernel-resources.html
> 
> Hope that helps,
> 
> -Kristopher Kane
> -- 
> This message was sent to: cmdrclueless at gmail.com <cmdrclueless at gmail.com>
> To unsubscribe, send a blank message to trilug-leave at trilug.org from that address.
> TriLUG mailing list : http://www.trilug.org/mailman/listinfo/trilug
> Unsubscribe or edit options on the web	: http://www.trilug.org/mailman/options/trilug/cmdrclueless%40gmail.com
> TriLUG FAQ          : http://www.trilug.org/wiki/Frequently_Asked_Questions




More information about the TriLUG mailing list