# Licensed to the Apache Software Foundation (ASF) under one
# or more contributor license agreements.  See the NOTICE file
# distributed with this work for additional information
# regarding copyright ownership.  The ASF licenses this file
# to you under the Apache License, Version 2.0 (the
# "License"); you may not use this file except in compliance
# with the License.  You may obtain a copy of the License at
#
#   http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing,
# software distributed under the License is distributed on an
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
# KIND, either express or implied.  See the License for the
# specific language governing permissions and limitations
# under the License.
{
    "zones": [
        {
            "name": "zim1",
            "guestcidraddress": "10.100.1.0/24",
            "dns1": "10.147.100.6",
            "physical_networks": [
                {
                    "broadcastdomainrange": "Zone",
                    "vlan": "1100-1200",
                    "name": "z1-pnet",
                    "traffictypes": [
                        {
                            "typ": "Guest"
                        },
                        {
                            "typ": "Management"
                        },
                        {
                            "typ": "Public"
                        }
                    ],
                    "providers": [
                        {
                            "broadcastdomainrange": "ZONE",
                            "name": "VirtualRouter"
                        },
                        {
                            "broadcastdomainrange": "ZONE",
                            "name": "VpcVirtualRouter"
                        },
                        {
                            "broadcastdomainrange": "ZONE",
                            "name": "InternalLbVm"
                        }
                    ],
                    "isolationmethods": [
                             "VLAN"
                    ]
                }
            ],
            "vmwaredc": {
                "username": "",
                "vcenter": "",
                "password": "",
                "name": ""
            },
            "ipranges": [
                {
                    "startip": "192.168.100.2",
                    "endip": "192.168.100.200",
                    "netmask": "255.255.255.0",
                    "vlan": "50",
                    "gateway": "192.168.100.1"
                }
            ],
            "networktype": "Advanced",
            "pods": [
                {
                    "endip": "172.16.100.200",
                    "name": "Z1P1",
                    "startip": "172.16.100.2",
                    "netmask": "255.255.255.0",
                    "clusters": [
                        {
                            "clustername": "Z1P1C1",
                            "hypervisor": "simulator",
                            "hosts": [
                                {
                                    "username": "root",
                                    "url": "http://sim1/c1/h1",
                                    "password": "password"
                                },
                                {
                                    "username": "root",
                                    "url": "http://sim1/c1/h2",
                                    "password": "password"
                                }
                            ],
                            "clustertype": "CloudManaged",
                            "primaryStorages": [
                                {
                                    "url": "nfs://10.147.100.6:/export/home/sandbox/z1p1",
                                    "name": "Z1PS1"
                                },
                                {
                                    "url": "nfs://10.147.100.6:/export/home/sandbox/z1p2",
                                    "name": "Z1PS2"
                                }
                            ]
                        },
                        {
                            "clustername": "Z1P1C2",
                            "hypervisor": "simulator",
                            "hosts": [
                                {
                                    "username": "root",
                                    "url": "http://sim1/c2/h1",
                                    "password": "password"
                                },
                                {
                                    "username": "root",
                                    "url": "http://sim1/c2/h2",
                                    "password": "password"
                                }
                            ],
                            "clustertype": "CloudManaged",
                            "primaryStorages": [
                                {
                                    "url": "nfs://10.147.100.6:/export/home/sandbox/z1p3",
                                    "name": "Z1PS3"
                                },
                                {
                                    "url": "nfs://10.147.100.6:/export/home/sandbox/z1p4",
                                    "name": "Z1PS4"
                                }
                            ]
                        }
                    ],
                    "gateway": "172.16.100.1"
                }
            ],
            "internaldns1": "10.147.100.6",
            "secondaryStorages": [
                {
                    "url": "nfs://10.147.100.6:/export/home/sandbox/z1secondary",
                    "provider" : "NFS"
                }
            ]
        },
        {
            "name": "zim2",
            "guestcidraddress": "10.200.1.0/24",
            "dns1": "10.147.200.6",
            "physical_networks": [
                {
                    "broadcastdomainrange": "Zone",
                    "vlan": "2100-2200",
                    "name": "z2-pnet",
                    "traffictypes": [
                        {
                            "typ": "Guest"
                        },
                        {
                            "typ": "Management"
                        },
                        {
                            "typ": "Public"
                        }
                    ],
                    "providers": [
                        {
                            "broadcastdomainrange": "ZONE",
                            "name": "VirtualRouter"
                        },
                        {
                            "broadcastdomainrange": "ZONE",
                            "name": "VpcVirtualRouter"
                        },
                        {
                            "broadcastdomainrange": "ZONE",
                            "name": "InternalLbVm"
                        }
                    ],
                    "isolationmethods": [
                             "VLAN"
                    ]
                }
            ],
            "vmwaredc": {
                "username": "",
                "vcenter": "",
                "password": "",
                "name": ""
            },
            "ipranges": [
                {
                    "startip": "192.168.200.2",
                    "endip": "192.168.200.200",
                    "netmask": "255.255.255.0",
                    "vlan": "50",
                    "gateway": "192.168.200.1"
                }
            ],
            "networktype": "Advanced",
            "pods": [
                {
                    "endip": "172.16.200.200",
                    "name": "Z2P1",
                    "startip": "172.16.200.2",
                    "netmask": "255.255.255.0",
                    "clusters": [
                        {
                            "clustername": "Z2P1C1",
                            "hypervisor": "simulator",
                            "hosts": [
                                {
                                    "username": "root",
                                    "url": "http://sim2/c1/h1",
                                    "password": "password"
                                },
                                {
                                    "username": "root",
                                    "url": "http://sim2/c1/h2",
                                    "password": "password"
                                }
                            ],
                            "clustertype": "CloudManaged",
                            "primaryStorages": [
                                {
                                    "url": "nfs://10.147.200.6:/export/home/sandbox/z2p1",
                                    "name": "Z2PS1"
                                },
                                {
                                    "url": "nfs://10.147.200.6:/export/home/sandbox/z2p2",
                                    "name": "Z2PS2"
                                }
                            ]
                        },
                        {
                            "clustername": "Z2P2C1",
                            "hypervisor": "simulator",
                            "hosts": [
                                {
                                    "username": "root",
                                    "url": "http://sim2/c1/h1",
                                    "password": "password"
                                },
                                {
                                    "username": "root",
                                    "url": "http://sim2/c1/h2",
                                    "password": "password"
                                }
                            ],
                            "clustertype": "CloudManaged",
                            "primaryStorages": [
                                {
                                    "url": "nfs://10.147.200.6:/export/home/sandbox/z2p3",
                                    "name": "Z2PS3"
                                },
                                {
                                    "url": "nfs://10.147.200.6:/export/home/sandbox/z2p4",
                                    "name": "Z2PS4"
                                }
                            ]
                        }
                    ],
                    "gateway": "172.16.200.1"
                }
            ],
            "internaldns1": "10.147.200.6",
            "secondaryStorages": [
                {
                    "url": "nfs://10.147.200.6:/export/home/sandbox/z2secondary",
                    "provider" : "NFS"
                }
            ]
        }
    ],
    "dbSvr": {
        "dbSvr": "localhost",
        "passwd": "cloud",
        "db": "cloud",
        "port": 3306,
        "user": "cloud"
    },
    "logger":
        {
            "LogFolderPath": "/tmp"
        },
    "globalConfig": [
        {
            "name": "network.gc.wait",
            "value": "20"
        },
        {
            "name": "storage.cleanup.interval",
            "value": "40"
        },
        {
            "name": "vm.op.wait.interval",
            "value": "5"
        },
        {
            "name": "default.page.size",
            "value": "500"
        },
        {
            "name": "network.gc.interval",
            "value": "20"
        },
        {
            "name": "instance.name",
            "value": "QA"
        },
        {
            "name": "workers",
            "value": "10"
        },
        {
            "name": "account.cleanup.interval",
            "value": "20"
        },
        {
            "name": "guest.domain.suffix",
            "value": "sandbox.simulator"
        },
        {
            "name": "expunge.delay",
            "value": "20"
        },
        {
            "name": "vm.allocation.algorithm",
            "value": "random"
        },
        {
            "name": "expunge.interval",
            "value": "20"
        },
        {
            "name": "expunge.workers",
            "value": "3"
        },
        {
            "name": "check.pod.cidrs",
            "value": "true"
        },
        {
            "name": "secstorage.allowed.internal.sites",
            "value": "10.147.0.0/16"
        },
        {
            "name": "direct.agent.load.size",
            "value": "1000"
        },
        {
            "name": "enable.dynamic.scale.vm",
            "value": "true"
        },
        {
            "name": "ping.interval",
            "value": "10"
        },
        {
            "name": "ping.timeout",
            "value": "2.0"
        }
    ],
    "mgtSvr": [
        {
            "mgtSvrIp": "localhost",
            "passwd": "password",
            "user": "root",
            "port": 8096,
            "hypervisor": "simulator",
            "useHttps": "False",
            "certCAPath":  "NA",
            "certPath":  "NA"
        }
    ]
}
