Bigfix best practices over Linux and DB2

Hello All,

Finally, after several months of negotiation, we are migrating our bigfix (windows 2008 + SQL) to Linux RedHat 7.4 and DB2.

we were discussing with The Linux administrator and DBA about what is the best practices for Bigfix over Linux and DB2.

For example:

  1. The size bigfix database will be around 300GB and They recommend creating the bigfix databases specifying 06 tablespaces that will be related to 06 disks (50gb).

  2. The size bigfix directory /var/opt/BESServer will be around 200GB, so they recommend to have 04 disks (50gb )

Please, could you share some best practices for configuring DB2 and filesystem for bigfix?

note:All disk will be in SAN (SSD).

Regards

José Osorio R.

I can give what we did, but @cmcannady may be able to speak better to it, but here’s a stab at it.

  1. Keep DB2 local. It makes upgrading simpler and performs way better.
  2. Set up a seperate volume for the DB2 user “/home/db2inst1” or what ever user you use.
  3. Our server using:
    1.1G /var/opt/BESClient
    252G /var/opt/BESServer
    534M /var/opt/BESLogs
    5.9G /var/opt/BESWebReportsServer
    265G /home/db2user
  4. We have tweaked out DB2 settings a bit with the help of IBM recommendations. Mainly because of WebUI, we set:
    NUM_LOG_SPAN 200
    LOGFILSIZ 32768

Post 9.5.7 upgrade, we hit some log transaction issues and setting a limit on log size and span help things not utterly crash if things got to big.

  1. Set a seperate volume for BES logs. If/when you have to set your server info verbose logging, it really helps with performance.

Hope that helps!

@pejosorio - Unless I’m mistaken, the IBM documentation referring to specifying 06/04 tablespaces/disks for data/app respectively is for physical systems/disks. Assuming that you’re virtualizing and leveraging SAN/SSD, then what becomes more important is:

  1. Implement dedicated storage partitions for OS, database, database logs, BES applications and BES logs.
  2. Implement dedicated virtual SCSI controllers for each storage partition (no exceptions).
  3. Implement redundant 10GB/s (or better) fiber connections to said storage.
  4. Don’t use VMware’s storage replication for DR (have seen it cause latency issues with the primary storage in prior deployments).

In large implementations you want sub 0.5-to-1.0 millisecond read/write I/O, so if your budget permits I would strongly suggest upgrading to redundant Flash storage.

To @masonje point, environment specific tweaking will likely be required. So in addition to your total number of managed endpoints, the size of your BESRelay infrastructure in addition to any supporting services (i.e. Compliance, Inventory, WebReports and WebUI) will absolutely increase your instance systems/storage I/O requirements.

In addition to the excellent comments by @masonje and @cmcannady:

  • Benchmark your IO before you go live. You are not always getting what you think you are getting. :slight_smile:
    I can help you with this.
  • Verify your ulimit, IO scheduler, and swappiness for your Linux instance(s).
    Details are in the capacity planning guide (or contact me):
    http://www-01.ibm.com/support/docview.wss?uid=swg27048326
  • Schedule backups/stats/reorgs. Reorgs in particular become critical over time.
    Details in the capacity planning guide, but your DBAs should manage this by default.

Both a local and remote database can work well. You will pay some overhead for remote but this is typically a few per cent for standard operations. We tend to see the largest impact for upgrade operations where we migrate a large amount of data (something we try to avoid, but has been necessary for things like Unicode conversion).

Once you have it set up, feel free to contact me and we can do a health check for you.

2 Likes

By this do you mean “drives” as vSphere presents it? I’ve never seen this recommendation before, but it certainly makes sense for high I/O applications.

Hello All,

Thanks for your help.

I had a meeting with the DB2 Admin who gave me these recommendations for better performance:

  • 01 Virtual Disk -> 01 Volume Group - 15GB - fs:/db2/db2_sw = DB2 Binaries
  • 01 Virtual Disk -> 01 Volume Group - 15GB - fs:/db2/instance = DB2 Instance
  • 01 Virtual Disk -> 01 Volume Group - 150GB - fs:/db2/logs: DB2 Database Logs
  • 01 Virtual Disk -> 01 Volume Group - 40GB - fs:/db2/db2dump : DB2 dump logs
  • 01 Virtual Disk -> 01 Volume Group - 15GB - fs:/db2/db2_sw : DB2 Binaries
  • 01 Virtual Disk -> 01 Volume Group - 100GB - fs:/db2/data01 : DB2 Database files (DB2 Automatic Storage)
  • 01 Virtual Disk -> 01 Volume Group - 100GB - fs:/db2/data02 : DB2 Database files (DB2 Automatic Storage)
  • 01 Virtual Disk -> 01 Volume Group - 100GB - fs:/db2/data03 : DB2 Database files (DB2 Automatic Storage)
  • 01 Virtual Disk > 01 volume group - 200GB /var/opt/BEServer
  • 01 Virtual Disk > 01 volume group - 5GB /var/opt/BESClient
  • 01 Virtual Disk > 01 volume group - 15GB /var/opt/BESWebReport

These recommendations are based on a tunning that was made to another application (IBM Maximo) that had db2 performance issues.

Regards

José Osorio R.

Hey @atlauren,

Within Vcenter when configuring a guest with multiple drives/partitions the default is a single virtual SCSI controller. However with high I/O root BES server implementations it’s critical to configure each drive/partition to have a dedicated virtual SCSI controller. This is of course in addition to standard virtualization best practices like redundant fiber storage connections, high-speed storage media (i.e. SSD or flash), etc.

Best,
@cmcannady

Software Product Compatibility Reports says BigFix 9.5 with DB2 10.5 workgroup edition can only be installed on RHEL 6.3. is it right statement?

IBM BigFix Platform 9.5.0 - Detailed System Requirements!

I have not had any issues running DB2 v10.5 fp6 or higher on RHEL v7.5.

Thanks Casey.

Leaders/Dev team - Pls take necessary steps to publish correct software product compatibility report.