| --- |
| # vars/cord-pod.yaml |
| # Configures an M-CORD pod |
| |
| # site configuration |
| site_name: mysite |
| site_humanname: MySite |
| deployment_type: MyDeployment |
| |
| xos_admin_user: xosadmin@opencord.org |
| xos_admin_pass: "{{ lookup('password', 'credentials/xosadmin@opencord.org chars=ascii_letters,digits') }}" |
| xos_admin_first: XOS |
| xos_admin_last: Admin |
| |
| xos_users: [] |
| |
| use_vtn: True |
| |
| xos_tosca_config_templates: |
| - openstack.yaml |
| - vtn-service.yaml |
| - fabric-service.yaml |
| - management-net.yaml |
| - shared-net.yaml |
| - wan-net.yaml |
| - vsg-net.yaml |
| - mcord-services.yaml |
| - xos-gui-extensions.yml |
| #- ng-core.yaml |
| |
| xos_other_templates: |
| - fabric-network-cfg.json |
| |
| cord_profile_dir: "{{ ansible_user_dir + '/cord_profile' }}" |
| |
| xos_docker_volumes: |
| - host: "{{ cord_profile_dir }}/images" |
| container: /opt/xos/images |
| |
| # GUI Config [new GUI] |
| gui_project_name: "M-CORD" |
| gui_background: "cord-bg.jpg" # TODO find mcord image |
| |
| # GUI branding [OLD GUI to be removed] |
| gui_branding_name: "MCORD" |
| gui_branding_icon: "/static/mcord-logo.png" |
| gui_branding_favicon: "/static/mcord-favicon.png" |
| gui_branding_bg: "/static/mcord-bg.jpg" |
| |
| enabled_gui_extensions: [] |
| #enabled_gui_extensions: |
| # - name: vtr |
| # path: orchestration/xos_services/vtr/xos/gui |
| # - name: rcord |
| # path: orchestration/profiles/rcord/xos/gui |
| |
| # paths defined in manifest/default.xml |
| xos_services: |
| - name: vtn |
| path: onos-apps/apps/vtn |
| keypair: vsg_rsa |
| synchronizer: true |
| - name: openstack |
| path: orchestration/xos_services/openstack |
| synchronizer: true |
| - name: onos |
| path: orchestration/xos_services/onos-service |
| keypair: onos_rsa |
| synchronizer: true |
| - name: fabric |
| path: orchestration/xos_services/fabric |
| synchronizer: true |
| - name: vbbu |
| path: orchestration/xos_services/vbbu |
| keypair: mcord_rsa |
| synchronizer: true |
| - name: vmme |
| path: orchestration/xos_services/vmme |
| keypair: mcord_rsa |
| synchronizer: true |
| - name: vsgw |
| path: orchestration/xos_services/vsgw |
| keypair: mcord_rsa |
| synchronizer: true |
| - name: vpgwc |
| path: orchestration/xos_services/vpgwc |
| keypair: mcord_rsa |
| synchronizer: true |
| - name: vhss |
| path: orchestration/xos_services/vhss |
| keypaird: mcord_rsa |
| synchronizer: true |
| - name: vmm |
| path: orchestration/xos_services/vmm |
| keypaird: mcord_rsa |
| synchronizer: true |
| - name: vsm |
| path: orchestration/xos_services/vsm |
| keypaird: mcord_rsa |
| synchronizer: true |
| # needed onboarding synchronizer doesn't require service code to be present when started |
| - name: exampleservice |
| path: orchestration/xos_services/exampleservice |
| keypair: exampleservice_rsa |
| synchronizer: true |
| - name: monitoring |
| path: orchestration/xos_services/monitoring |
| keypair: monitoringservice_rsa |
| synchronizer: false |
| |
| xos_service_sshkeys: |
| - name: onos_rsa |
| source_path: "~/.ssh/id_rsa" |
| - name: onos_rsa.pub |
| source_path: "~/.ssh/id_rsa.pub" |
| - name: mcord_rsa |
| source_path: "~/.ssh/id_rsa" |
| - name: mcord_rsa.pub |
| source_path: "~/.ssh/id_rsa.pub" |
| # needed onboarding synchronizer doesn't require service code to be present when started |
| - name: exampleservice_rsa |
| source_path: "~/.ssh/id_rsa" |
| - name: exampleservice_rsa.pub |
| source_path: "~/.ssh/id_rsa.pub" |
| - name: monitoringservice_rsa |
| source_path: "~/.ssh/id_rsa" |
| - name: monitoringservice_rsa.pub |
| source_path: "~/.ssh/id_rsa.pub" |
| |
| # profile_library: "mcord" |
| |
| # VM networks/bridges on head |
| virt_nets: |
| - name: mgmtbr |
| ipv4_prefix: 192.168.122 |
| head_vms: true |
| |
| # site domain suffix |
| site_suffix: cord.lab |
| |
| # resolv.conf settings |
| dns_search: |
| - "{{ site_suffix }}" |
| |
| # SSL server certificate generation |
| server_certs: |
| - cn: "keystone.{{ site_suffix }}" |
| subj: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU=Test Deployment/CN=keystone.{{ site_suffix }}" |
| altnames: |
| - "DNS:keystone.{{ site_suffix }}" |
| - "DNS:keystone" |
| - cn: "xos-core.{{ site_suffix }}" |
| subj: "/C=US/ST=California/L=Menlo Park/O=ON.Lab/OU=Test Deployment/CN=xos-core.{{ site_suffix }}" |
| altnames: |
| - "DNS:xos-core.{{ site_suffix }}" |
| |
| # NSD/Unbound settings |
| nsd_zones: |
| - name: "{{ site_suffix }}" |
| ipv4_first_octets: 192.168.122 |
| name_reverse_unbound: "168.192.in-addr.arpa" |
| soa: ns1 |
| ns: |
| - { name: ns1 } |
| nodelist: head_vm_list |
| aliases: |
| - { name: "ns1" , dest: "head" } |
| - { name: "ns" , dest: "head" } |
| - { name: "apt-cache" , dest: "head" } |
| |
| name_on_public_interface: head |
| |
| # VTN network configuration |
| management_network_cidr: 172.27.0.0/24 |
| management_network_ip: 172.27.0.1/24 |
| data_plane_ip: 10.168.0.253/24 |
| |
| # CORD ONOS app version |
| cord_app_version: 1.2-SNAPSHOT |
| |
| # If true, unbound listens on the head node's `ansible_default_ipv4` interface |
| unbound_listen_on_default: True |
| |
| # turn this on, or override it when running the playbook with --extra-vars="on_cloudlab=True" |
| on_cloudlab: False |
| |
| # turn this off, or override when running playbook with --extra-vars="on_maas=False" |
| on_maas: True |
| |
| run_dist_upgrade: False |
| |
| maas_node_key: /etc/maas/ansible/id_rsa |
| |
| openstack_version: kilo |
| |
| juju_config_name: cord |
| |
| juju_config_path: /usr/local/src/juju_config.yml |
| |
| # Pull ONOS from local Docker registry rather than Docker Hub |
| onos_docker_image: "docker-registry:5000/onosproject/onos:candidate" |
| |
| # Pull XOS from local Docker registry |
| xos_docker_image: "docker-registry:5000/xosproject/xos:candidate" |
| |
| keystone_admin_password: "{{ lookup('password', 'credentials/cord_keystone_admin chars=ascii_letters,digits') }}" |
| |
| deployment_flavors: |
| - m1.small |
| - m1.medium |
| - m1.large |
| - m1.xlarge |
| |
| charm_versions: |
| ceilometer: "cs:trusty/ceilometer-17" |
| ceilometer-agent: "cs:trusty/ceilometer-agent-13" |
| glance: "cs:trusty/glance-28" |
| keystone: "cs:trusty/keystone-33" |
| mongodb: "cs:trusty/mongodb-33" |
| percona-cluster: "cs:trusty/percona-cluster-31" |
| nagios: "cs:trusty/nagios-10" |
| neutron-api: "cs:~cordteam/trusty/neutron-api-5" |
| nova-cloud-controller: "cs:trusty/nova-cloud-controller-64" |
| nova-compute: "cs:~cordteam/trusty/nova-compute-2" |
| nrpe: "cs:trusty/nrpe-4" |
| ntp: "cs:trusty/ntp-14" |
| openstack-dashboard: "cs:trusty/openstack-dashboard-19" |
| rabbitmq-server: "cs:trusty/rabbitmq-server-42" |
| |
| head_vm_list: [] |
| |
| head_lxd_list: |
| - name: "juju-1" |
| service: "juju" |
| aliases: |
| - "juju" |
| ipv4_last_octet: 10 |
| |
| - name: "ceilometer-1" |
| service: "ceilometer" |
| aliases: |
| - "ceilometer" |
| ipv4_last_octet: 20 |
| forwarded_ports: |
| - { ext: 8777, int: 8777 } |
| |
| - name: "glance-1" |
| service: "glance" |
| aliases: |
| - "glance" |
| ipv4_last_octet: 30 |
| forwarded_ports: |
| - { ext: 9292, int: 9292 } |
| |
| - name: "keystone-1" |
| service: "keystone" |
| aliases: |
| - "keystone" |
| ipv4_last_octet: 40 |
| forwarded_ports: |
| - { ext: 35357, int: 35357 } |
| - { ext: 4990, int: 4990 } |
| - { ext: 5000, int: 5000 } |
| |
| - name: "percona-cluster-1" |
| service: "percona-cluster" |
| aliases: |
| - "percona-cluster" |
| ipv4_last_octet: 50 |
| |
| - name: "nagios-1" |
| service: "nagios" |
| aliases: |
| - "nagios" |
| ipv4_last_octet: 60 |
| forwarded_ports: |
| - { ext: 3128, int: 80 } |
| |
| - name: "neutron-api-1" |
| service: "neutron-api" |
| aliases: |
| - "neutron-api" |
| ipv4_last_octet: 70 |
| forwarded_ports: |
| - { ext: 9696, int: 9696 } |
| |
| - name: "nova-cloud-controller-1" |
| service: "nova-cloud-controller" |
| aliases: |
| - "nova-cloud-controller" |
| ipv4_last_octet: 80 |
| forwarded_ports: |
| - { ext: 8774, int: 8774 } |
| |
| - name: "openstack-dashboard-1" |
| service: "openstack-dashboard" |
| aliases: |
| - "openstack-dashboard" |
| ipv4_last_octet: 90 |
| forwarded_ports: |
| - { ext: 8080, int: 80 } |
| |
| - name: "rabbitmq-server-1" |
| service: "rabbitmq-server" |
| aliases: |
| - "rabbitmq-server" |
| ipv4_last_octet: 100 |
| |
| - name: "mongodb-1" |
| service: "mongodb" |
| aliases: |
| - "mongodb" |
| ipv4_last_octet: 110 |
| |
| lxd_service_list: |
| - ceilometer |
| - glance |
| - keystone |
| - mongodb |
| - nagios |
| - neutron-api |
| - nova-cloud-controller |
| - openstack-dashboard |
| - percona-cluster |
| - rabbitmq-server |
| |
| standalone_service_list: |
| - ntp |
| - nrpe |
| - ceilometer-agent |
| |
| |
| service_relations: |
| - name: keystone |
| relations: [ "percona-cluster", "nrpe", ] |
| |
| - name: nova-cloud-controller |
| relations: [ "percona-cluster", "rabbitmq-server", "glance", "keystone", "nrpe", ] |
| |
| - name: glance |
| relations: [ "percona-cluster", "keystone", "nrpe", ] |
| |
| - name: neutron-api |
| relations: [ "keystone", "percona-cluster", "rabbitmq-server", "nova-cloud-controller", "nrpe", ] |
| |
| - name: openstack-dashboard |
| relations: [ "keystone", "nrpe", ] |
| |
| - name: nagios |
| relations: [ "nrpe", ] |
| |
| - name: "percona-cluster:juju-info" |
| relations: [ "nrpe:general-info", ] |
| |
| - name: rabbitmq-server |
| relations: [ "nrpe", ] |
| |
| - name: ceilometer |
| relations: [ "mongodb", "rabbitmq-server", "nagios", "nrpe", ] |
| |
| - name: "ceilometer:identity-service" |
| relations: [ "keystone:identity-service", ] |
| |
| - name: "ceilometer:ceilometer-service" |
| relations: [ "ceilometer-agent:ceilometer-service", ] |
| |
| |
| compute_relations: |
| - name: nova-compute |
| relations: [ "ceilometer-agent", "glance", "nova-cloud-controller", "nagios", "nrpe", ] |
| |
| - name: "nova-compute:shared-db" |
| relations: [ "percona-cluster:shared-db", ] |
| |
| - name: "nova-compute:amqp" |
| relations: [ "rabbitmq-server:amqp", ] |
| |
| - name: ntp |
| relations: [ "nova-compute", ] |
| |
| |
| xos_images: |
| - name: "trusty-server-multi-nic" |
| url: "http://www.vicci.org/opencloud/trusty-server-cloudimg-amd64-disk1.img.20170201" |
| checksum: "sha256:ebf007ba3ec1043b7cd011fc6668e2a1d1d4c69c41071e8513ab355df7a057cb" |
| |
| # How to add local image and dynamically load it into existing XOS |
| # add your private image such as mcord-local-image-name.img to /opt/iamges/ on 'corddev' VM inside cord in a box |
| # uncomment the code blow,and run those two commands: |
| # on corddev VM: vagrant@corddev:/cord/build$ ./gradlew -PdeployConfig=config/mcord_in_a_box.yml PIcreateProfile |
| # on prod VM: compute-node-refresh |
| |
| #- name: "mcord-local-image-name" |
| # url: "file://localhost/opt/images/mcord-local-image-name.img" |
| # checksum: "sha256:ebf007ba3ec1043b7cd011fc6668e2a1d1d4c69c41071e8513ab355df7a057cb" |
| |
| - name: "vsg-1.1" |
| url: "http://www.vicci.org/cord/vsg-1.1.img" |
| checksum: "sha256:16b0beb6778aed0f5feecb05f8d5750e6c262f98e6011e99ddadf7d46a177b6f" |
| |
| - name: "ceilometer-trusty-server-multi-nic" |
| url: "http://www.vicci.org/cord/ceilometer-trusty-server-multi-nic.compressed.qcow2" |
| checksum: "sha256:b77ef8d692b640568dea13df99fe1dfcb1f4bb4ac05408db9ff77399b34f754f" |
| |
| - name: "ceilometer-service-trusty-server-multi-nic" |
| url: "http://www.vicci.org/cord/ceilometer-service-trusty-server-multi-nic.compressed.qcow2.20170131" |
| checksum: "sha256:f0341e283f0f2cb8f70cd1a6347e0081c9c8492ef34eb6397c657ef824800d4f" |