Tips for supporting Greenplum on the Linux OS

posted Apr 28, 2017, 4:52 PM by Sachchida Ojha

File system and OS Diagnostics

Quick background on the Linux file system:

  • Ext2 is the default and longest-running Linux file system.
  • The main advantage of this file system is its speed. It is used as a benchmark against other file systems.
  • Ext2 is not a journaled file system. If the OS crashes, then consistency checks must be made.
  • Ext3 is a seamless add-on to the Ext2 file system. It adds journaling and typically a crash recovery happens instantly from journal replay.
  • Ext2 and Ext3 do not include snapshot ability.

Tools for Checking OS and Hardware Configuration

  • uname –a and cat /etc/redhat-release
  • dmesg – kernel messages (related to disk failures and memory)
  • cat /proc/meminfo /proc/cpuinfo /proc/swaps
  • ldd <binary> - show shared object deps (use example)
  • /etc/ld.so.conf or /etc/ld.so.d/*, LD_LIBRARY_PATH
  • ldconfig
  • lsattr, chattr
  • stat
  • mount – find remote or NFS mounts against df table

Tuning OS Parameters

  • chkconfig –list shows the Linux services configuration
  • To turn on statistics gathering facility use: chkconfig –level 12345 psacct on
  • sa and ac are tools for reading the statistics.
  • ipcs –l and ipcs –a for semaphore use
  • Semaphores are used for interprocess communication. It is so important to Greenplum’s interconnect because it allows the threads to communicate in shared memory. When segment hosts or count is increased, this shared memory allocation must be expanded.
  • lsmod – modules associated with the firewall – ip_*
  • /etc/sysctl.conf and running kernel config in /proc/sys/kernel/*

Process Inspection

  • ps –ef is used on system V arch. ps auxw is equiv for bsd-based systems including Linux
  • Solaris does not wrap its ps output properly. This can be fixed by piping the output to the fold command.
  • gstackpstack –pstrace
  • Prepare a core dump – read ulimit –a and then set core size with ulimit –c
  • Generate a core file by sending kill -11 to a process.

Networking

  • ifconfig –a
  • netstat –an
  • netstat –r
  • lsof (root)
  • tcpdump (root) tracing a TCP connection stream
  • network bandwidth
  • Host-based firewall
Comments