Sample configuration: Server consolidation

The following configuration has a complex eight-node cluster running multiple applications and large databases. The database servers, LargeServer1, LargeServer2, and LargeServer3, are enterprise systems. The middle-tier servers running multiple applications are MedServer1, MedServer2, MedServer3, MedServer4, and MedServer5.

In this configuration, the database zone (system zone 0) can handle a maximum of two failures. Each server has Limits to support a maximum of three database service groups. The application zone has excess capacity built into each server.

The servers running the application groups specify Limits to support one database, even though the application groups do not run prerequisites. This allows a database to fail over across system zones and run on the least-loaded server in the application zone.

    include "types.cf"
    cluster SGWM-demo (
    )

    system LargeServer1 (
        Capacity = 200
        Limits = { ShrMemSeg=15, Semaphores=30, Processors=18 }
        LoadWarningLevel = 80
        LoadTimeThreshold = 900
        )

    system LargeServer2 (
        Capacity = 200
        Limits = { ShrMemSeg=15, Semaphores=30, Processors=18 }
        LoadWarningLevel=80
        LoadTimeThreshold=900
        )

    system LargeServer3 (
        Capacity = 200
        Limits = { ShrMemSeg=15, Semaphores=30, Processors=18 }
        LoadWarningLevel=80
        LoadTimeThreshold=900
        )

    system MedServer1 (
        Capacity = 100
        Limits = { ShrMemSeg=5, Semaphores=10, Processors=6 }
        )

    system MedServer2 (
        Capacity = 100
        Limits = { ShrMemSeg=5, Semaphores=10, Processors=6 }
        )

    system MedServer3 (
        Capacity = 100
        Limits = { ShrMemSeg=5, Semaphores=10, Processors=6 }
        )

    system MedServer4 (
        Capacity = 100
        Limits = { ShrMemSeg=5, Semaphores=10, Processors=6 }
        )

    system MedServer5 (
        Capacity = 100
        Limits = { ShrMemSeg=5, Semaphores=10, Processors=6 }
        )

    group Database1 (
        SystemList = { LargeServer1 = 0, LargeServer2 = 1, 
                       LargeServer3 = 2, MedServer1 = 3,
                       MedServer2 = 4, MedServer3 = 5, 
                       MedServer4 = 6, MedServer5 = 6 }
        SystemZones = { LargeServer1=0, LargeServer2=0, 
    LargeServer3=0,
                MedServer1=1, MedServer2=1, MedServer3=1, 
    MedServer4=1,
                MedServer5=1 }
        AutoStartPolicy = Load
        AutoStartList = { LargeServer1, LargeServer2, LargeServer3 }
        FailOverPolicy = Load
        Load = { Units = 100 }
        Prerequisites = { ShrMemSeg=5, Semaphores=10, Processors=6 }
        )

    group Database2 (
        SystemList = { LargeServer1 = 0, LargeServer2 = 1, 
                       LargeServer3 = 2, MedServer1 = 3,
                       MedServer2 = 4, MedServer3 = 5, 
                       MedServer4 = 6, MedServer5 = 6 }
        SystemZones = { LargeServer1=0, LargeServer2=0, 
    LargeServer3=0,
                MedServer1=1, MedServer2=1, MedServer3=1, 
    MedServer4=1,
                MedServer5=1 }
        AutoStartPolicy = Load
        AutoStartList = { LargeServer1, LargeServer2, LargeServer3 }
        FailOverPolicy = Load
        Load = { Units = 100 }
        Prerequisites = { ShrMemSeg=5, Semaphores=10, Processors=6 }
        )

    group Database3 (
        SystemList = { LargeServer1 = 0, LargeServer2 = 1, 
                       LargeServer3 = 2, MedServer1 = 3,
                       MedServer2 = 4, MedServer3 = 5, 
                       MedServer4 = 6, MedServer5 = 6 }
        SystemZones = { LargeServer1=0, LargeServer2=0, 
    LargeServer3=0,
                MedServer1=1, MedServer2=1, MedServer3=1, 
    MedServer4=1,
                MedServer5=1 }
        AutoStartPolicy = Load
        AutoStartList = { LargeServer1, LargeServer2, LargeServer3 }
        FailOverPolicy = Load
        Load = { Units = 100 }
        Prerequisites = { ShrMemSeg=5, Semaphores=10, Processors=6 }
        )

    group Application1 (
        SystemList = { LargeServer1 = 0, LargeServer2 = 1, 
                       LargeServer3 = 2, MedServer1 = 3,
                       MedServer2 = 4, MedServer3 = 5, 
                       MedServer4 = 6, MedServer5 = 6 }
        SystemZones = { LargeServer1=0, LargeServer2=0, 
    LargeServer3=0,
                MedServer1=1, MedServer2=1, MedServer3=1, 
    MedServer4=1,
                MedServer5=1 }
        AutoStartPolicy = Load
            AutoStartList = { MedServer1, MedServer2, MedServer3, 
    MedServer4,
                MedServer5 }
        FailOverPolicy = Load
        Load = { Units = 50 }
        )

    group Application2 (
        SystemList = { LargeServer1 = 0, LargeServer2 = 1, 
                       LargeServer3 = 2, MedServer1 = 3,
                       MedServer2 = 4, MedServer3 = 5, 
                       MedServer4 = 6, MedServer5 = 6 }
        SystemZones = { LargeServer1=0, LargeServer2=0, 
    LargeServer3=0,
                MedServer1=1, MedServer2=1, MedServer3=1, 
    MedServer4=1,
                MedServer5=1 }
        AutoStartPolicy = Load
        AutoStartList = { MedServer1, MedServer2, MedServer3, 
    MedServer4,
                MedServer5 }
        FailOverPolicy = Load
        Load = { Units = 50 }
        )

    group Application3 (
        SystemList = { LargeServer1 = 0, LargeServer2 = 1, 
                       LargeServer3 = 2, MedServer1 = 3,
                       MedServer2 = 4, MedServer3 = 5, 
                       MedServer4 = 6, MedServer5 = 6 }
        SystemZones = { LargeServer1=0, LargeServer2=0, 
    LargeServer3=0,
                MedServer1=1, MedServer2=1, MedServer3=1, 
    MedServer4=1,
                MedServer5=1 }
        AutoStartPolicy = Load
        AutoStartList = { MedServer1, MedServer2, MedServer3, 
    MedServer4,
                MedServer5 }
        FailOverPolicy = Load
        Load = { Units = 50 }
        )

    group Application4 (
        SystemList = { LargeServer1 = 0, LargeServer2 = 1, 
                       LargeServer3 = 2, MedServer1 = 3,
                       MedServer2 = 4, MedServer3 = 5, 
                       MedServer4 = 6, MedServer5 = 6 }
        SystemZones = { LargeServer1=0, LargeServer2=0, 
    LargeServer3=0,
                MedServer1=1, MedServer2=1, MedServer3=1, 
    MedServer4=1,
                MedServer5=1 }
        AutoStartPolicy = Load
        AutoStartList = { MedServer1, MedServer2, MedServer3, 
    MedServer4,
                MedServer5 }
        FailOverPolicy = Load
        Load = { Units = 50 }
        )

    group Application5 (
        SystemList = { LargeServer1 = 0, LargeServer2 = 1, 
                       LargeServer3 = 2, MedServer1 = 3,
                       MedServer2 = 4, MedServer3 = 5, 
                       MedServer4 = 6, MedServer5 = 6 }
        SystemZones = { LargeServer1=0, LargeServer2=0, 
    LargeServer3=0,
                MedServer1=1, MedServer2=1, MedServer3=1, 
    MedServer4=1,
                MedServer5=1 }
        AutoStartPolicy = Load
        AutoStartList = { MedServer1, MedServer2, MedServer3, 
    MedServer4,
                MedServer5 }
        FailOverPolicy = Load
        Load = { Units = 50 }
        )