Help us improve your experience.

Let us know what you think.

Do you have time for a two-minute survey?

Navigation
Guide That Contains This Content
[+] Expand All
[-] Collapse All

    Installing and Configuring the Cloud CPE Centralized Deployment Model

    Before You Begin

    Before you begin, provision the virtual machines (VM) for the Contrail Service Orchestration nodes.

    Creating the Deployment Directory

    The deployment directory contains the files that you need to install the Cloud CPE Centralized Deployment Model. You need to run a script to create the directory.

    To create the deployment directory:

    1. Log in as root to the host on which you deployed the installer.
    2. Access the directory that contains the example configuration file. For example, if the name of the installer is cspVersion:
      root@host:~/# cd cspVersion
    3. Run the script that creates the directory.

      This action creates a directory called /deployments/default in the home directory of the installer host. The /deployments/default directory contains files that you use for the installation.

      root@host:~/cspVersion# ./create_deployment_env.sh

    Customizing the Roles Configuration File

    In the roles file, you specify network-specific settings that you configured for Contrail OpenStack, the Junos Space Virtual Appliance, and the Junos Space database. The installer uses the settings in this file to configure the Cloud CPE Centralized Deployment Model. The roles file is located in the deployments/default directory and is in YAML format.

    To customize the configuration file:

    1. Log in as root to the host on which you deployed the installer.
    2. Access the directory that contains the roles file. For example, if the name of the installer is cspVersion:
      root@host:~/# cd cspVersion/deployments/default
    3. Open the file roles.conf with a text editor.
    4. Search for the text string <Fill Value> to find settings that you need to specify.
    5. In the contrail_openstack section, specify the following values that you configured for Contrail Openstack:

      Note: You can view the Keystone settings on the primary Contrail configure and control node in the /etc/contrail/keystonerc and /etc/contrail/openstackrc files.

      • OS_domain—OpenStack Keystone domain
      • OS_password—OpenStack Keystone password
      • OS_tenant—OpenStack Keystone tenant
      • OS_username—OpenStack Keystone username
      • service_token—OpenStack Keystone service token
      • ip_address—IP address of management interface of primary Contrail configure and control node
      • keystone_ip—OpenStack Keystone IP address

      For example:

      OS_domain: default
      OS_password: contrail123
      OS_tenant: admin
      OS_username: admin
      service_token: 229537
      ip_address: 192.168.2.10/24
      keystone_ip: 192.168.2.11/24
    6. In the elasticsearch section, specify the following value:
      • es_cluster_name—Name of the Elastic Search Cluster. The name is arbitrary; however, we recommend using the hostname of the node on which the Elastic Search instance resides.

        For example:

        es_cluster_name: ccra-35
    7. In the mysql section, specify the following values:
      • ip_address—IP address of the VM that contains the primary Junos Space database.
      • username—Username for logging in to the Junos Space database. This value must match the value you specified in the provision_vm.conf file or the username that you configured manually for MySQL.
      • password—Password for logging in to the Junos Space database. This value must match the value you specified in the provision_vm.conf file or the password that you configured manually for MySQL.

      For example:

      ip_address: 192.168.1.23/24
      password: passw0rd
    8. In the space section, specify the following values:
      • ip_address—IP address of the VM that contains the primary Junos Space Virtual Appliance
      • web_ip_address—Virtual IP (VIP) address of the primary Junos Space Virtual Appliance

      For example:

      ip_address: 192.168.1.21/24
      web_ip_address: 192.168.1.22/24
    9. Save the file.

    Customizing the Configuration File for the Cloud CPE Centralized Deployment Model Installation

    The Cloud CPE Centralized Deployment Model installer uses a configuration file, which you must customize for your network. After you customize the configuration file, you run the installer to deploy and configure the software on the servers and VMs. An example configuration file is located in the server_manager directory of the installer and has the name csp_topology_example.conf. The configuration file is in YAML format.

    To customize the configuration file:

    1. Log in as root to the host on which you deployed the installer.
    2. Access the directory that contains the example configuration file. For example, if the name of the installer is cspVersion:
      root@host:~/# cd /cspVersion
    3. If you used the provisioning tool, generate the topology.conf file from the provisioning_vm.conf. If you did not use the provisioning tool to provision VMs, proceed to Step 4.
      root@host:~/cspVersion# ./ import_topology_info.sh

      This action uses the provisioning_vm.conf file to generate a corresponding topology.conf file in the /~cspVersion/deployments/default directory.

    4. With a text editor, open the topology.conf file in the /~cspVersion/deployments/default directory.
    5. In the [TARGETS] section, specify the following values for the network on which the Cloud CPE Centralized Deployment Model resides.
      • ha_mode—Status of Contrail Service Orchestration high availability. Use true for both a redundant configuration and for a non-redundant configuration.

        The non-redundant installation uses two redundant Notification Engine components in different VMs.

      • installer_ip—IP address of the management interface of the host on which you deployed the installer.
      • ntp_servers—Comma-separated list of Network Time Protocol (NTP) servers in your domain. For networks within firewalls, specify NTP servers specific to your network.
      • servers—Comma-separated list of names of:
        • For a non-redundant Contrail Service Orchestration installation, all three Contrail configure and control nodes
        • For a redundant Contrail Service Orchestration installation, the primary Contrail configure and control node
        • All Contrail Service Orchestration VMs except Junos Space Virtual Appliance and Junos Space database VMs
    6. Specify the following configuration values for the nodes and the VMs that you specified in Step 5.
      • [hostname]—Name of the machine.
      • management_address—IP address of the Ethernet management interface.
      • hostname—Fully qualified domain name (FQDN) of the machine.

        Caution: If you do not configure DNS for your network, specify the IP address of the machine in the hostname field. Otherwise, the Cloud CPE Centralized Deployment Model may not work correctly.

      • username—Username for logging in to the machine. Always specify root.
      • password—Root password for logging in to the machine.
      • Roles—Components installed on the machine:
        • cassandra—Cassandra
        • contrail_openstack—Contrail OpenStack
        • elasticsearch—Elastic Search
        • elk_filebeat—Filebeat
        • elk_index—Component that enables redundancy of logging components
        • elk_kibana—Kibana
        • elk_logstash—Logstash
        • iam—Identity and Access Manager
        • ne—Notification Engine
        • nsd—Network Service Designer
        • nsd_import—Component that enables import of network service profiles to Administration Portal
        • nso—Network Service Orchestrator
        • rabbitmq—RabbitMQ
        • redis—Redis, a database used for Cassandra, RabbitMQ, and Zookeeper
        • sim—Icinga server software
        • sim_client—Icinga client software, which resides on the same machine as any component monitored by Service and Infrastructure Monitor
        • sim_cluster—Service and Infrastructure Monitor (redundant configuration)
        • sse—Server sent event
        • tssm—Cloud CPE Tenant, Site and Service Manager
        • vnfm—VNF Manager
        • zookeeper—Zookeeper
    7. Save the file.

    The following examples show customized configuration files for non-redundant and redundant Contrail Service Orchestration installations.

    Sample Configuration File for a Non-Redundant Contrail Service Orchestration Installation

    [TARGETS]
    
    installer_ip =
    
    #IMPORTANT: Please make sure to keep "ha_mode = true", even with standalone deployment as we are using load_balancer just for one of the micro services. 
    ha_mode = true
    
    # The ntp server to sync all machines to. If you are within a firewall, provide ntp_servers specific to your network
    
    ntp_servers = ntp.juniper.net
    
    # List of server present in topology. Each of them should be configured further in their own section
    # Only the servers which are included in this list will be provisioned
    # with the corresponding roles.
    # Each server must have hostname (fqdn) set correctly as specified in this config file. 'hostname -f' must return the correct fqdn.
    
    servers = controller1-host, controller2-host, controller3-host, csp-ms-vm, csp-infra1-vm, csp-infra2-vm, csp-ui-vm, csp-sim-vm, csp-simcontroller-vm, csp-elk-vm
    
    # The existing contrail installation details
    [controller1-host]
    # the address configured or to be configured on the primary interface
    management_address = 192.168.10.1/19
    
    # Host name of the machine
    hostname = controller1.example.net
    
    # the configured or to be configured username and password
    username = root
    password = passw0rd
    
    # The list of roles realized by this server.
    roles = contrail_openstack
    
    [controller2-host]
    management_address = 192.168.10.2/19
    hostname = controller2.example.net
    username = root
    password = passw0rd
    roles = contrail_openstack
    
    [controller3-host]
    management_address = 192.168.10.3/19
    hostname = controller3.example.net
    username = root
    password = passw0rd
    roles = contrail_openstack
    
    [csp-ms-vm]
    management_address = 192.168.1.3/24
    hostname = ms-vm.example.net
    username = root
    password = passw0rd
    roles = nso, vnfm, ne, sse, tssm, iam, sim_client, elk_filebeat
    
    [csp-infra1-vm]
    management_address = 192.168.1.4/24
    hostname = infra1-vm.example.net
    username = root
    password = passw0rd
    roles = cassandra, elasticsearch, elk_index, load_balancer
    
    [csp-infra2-vm]
    management_address = 192.168.1.5/24
    hostname = infra2-vm.example.net
    username = root
    password = passw0rd
    roles = zookeeper, rabbitmq, redis
    
    [csp-ui-vm]
    management_address = 192.168.1.6/24
    hostname = ui-vm.example.net
    username = root
    password = passw0rd
    roles = nsd, ne, sim_client, nsd_import
    
    
    [csp-sim-vm]
    management_address = 192.168.1.7/24
    hostname = sim-vm.example.net
    username = root
    password = passw0rd
    roles = sim_cluster
    
    [csp-simcontroller-vm]
    management_address = 192.168.1.8/24
    hostname = simcontroller-vm.example.net
    username = root
    password = passw0rd
    roles = sim, sim_client
    
    [csp-elk-vm]
    management_address = 192.168.1.9/24
    hostname = elk-vm.example.net
    username = root
    password = passw0rd
    roles = elk_kibana, elk_logstash
    

    Sample Configuration File for a Redundant Contrail Service Orchestration Installation

    [TARGETS]
    
    installer_ip =
    
    # The ntp server to sync all machines to. If you are within a firewall, provide ntp_servers specific to your network
    
    ntp_servers = ntp.juniper.net
    
    
    # List of server present in topology. Each of them should be configured further in their own section
    # Only the servers which are included in this list will be provisioned
    # with the corresponding roles.
    # Each server must have hostname (fqdn) set correctly as specified in this config file. 'hostname -f' must return the correct fqdn.
    
    
    servers = controller1-host, csp-ui-vm1, csp-ui-vm2, csp-ms-vm1, csp-ms-vm2, csp-infra-vm1, csp-infra-vm2, csp-infra-vm3, csp-infra-vm4, csp-infra-vm5, csp-infra-vm6, csp-sim-vm1, csp-ha-vm, csp-elk-vm1, csp-elk-vm2, csp-simcontroller-vm1, csp-simcontroller-vm2
    
    [controller1-host]
    management_address = 192.168.10.1/19
    hostname = controller1.example.net
    username = root
    password = passw0rd
    roles = contrail_openstack
    
    [csp-ui-vm1]
    management_address = 192.168.1.4/24
    hostname = ui1-vm.example.net
    username = root
    password = passw0rd
    roles = nsd, sim_client, nsd_import
    
    [csp-ui-vm2]
    management_address = 192.168.1.5/24
    hostname = ui2-vm.example.net
    username = root
    password = passw0rd
    roles = nsd, sim_client
    
    
    [csp-ms-vm1]
    management_address = 192.168.1.6/24
    hostname = ms1-vm.example.net
    username = root
    password = passw0rd
    roles = nso, vnfm, ne, sse, tssm, iam, sim_client, elk_filebeat
    
    
    [csp-ms-vm2]
    management_address = 192.168.1.7/24
    hostname = ms2-vm.example.net
    username = root
    password = passw0rd
    roles = nso, vnfm, ne, sse, tssm, iam, sim_client, elk_filebeat
    
    
    [csp-infra-vm1]
    management_address = 192.168.1.8/24
    hostname = infra1-vm.example.net
    username = root
    password = passw0rd
    roles = cassandra, elasticsearch, elk_index, redis
    
    [csp-infra-vm2]
    management_address = 192.168.1.9/24
    hostname = infra2-vm.example.net
    username = root
    password = passw0rd
    roles = cassandra, elasticsearch
    
    
    [csp-infra-vm3]
    management_address = 192.168.1.10/24
    hostname = infra3-vm.example.net
    username = root
    password = passw0rd
    roles = cassandra, elasticsearch
    
    
    [csp-infra-vm4]
    management_address = 192.168.1.11/24
    hostname = infra4-vm.example.net
    username = root
    password = passw0rd
    roles = zookeeper
    
    [csp-infra-vm5]
    management_address = 192.168.1.12/24
    hostname = infra5-vm.example.net
    username = root
    password = passw0rd
    roles = zookeeper, rabbitmq
    
    
    [csp-infra-vm6]
    management_address = 192.168.1.13/24
    hostname = infra6-vm.example.net
    username = root
    password = passw0rd
    roles = zookeeper
    
    
    [csp-sim-vm1]
    management_address = 192.168.1.14/24
    hostname = sim1-vm.example.net
    username = root
    password = passw0rd
    roles = sim_cluster
    
    [csp-ha-vm]
    management_address = 192.168.1.16/24
    hostname = ha-vm.example.net
    username = root
    password = passw0rd
    roles = load_balancer
    
    [csp-elk-vm1]
    management_address = 192.168.1.17/24
    hostname = elk1-vm.example.net
    username = root
    password = passw0rd
    roles = elk_kibana, elk_logstash
    
    
    [csp-elk-vm2]
    management_address = 192.168.1.18/24
    hostname = elk2-vm.example.net
    username = root
    password = passw0rd
    roles = elk_kibana, elk_logstash
    
    
    [csp-simcontroller-vm1]
    management_address = 192.168.1.19/24
    hostname = simcontroller1-vm.example.net
    username = root
    password = passw0rd
    roles = sim, sim_client
    
    
    
    [csp-simcontroller-vm2]
    management_address = 192.168.1.20/24
    hostname = simcontroller2-vm.example.net
    username = root
    password = passw0rd
    roles = sim, sim_client
    

    Deploying the Cloud CPE Centralized Deployment Model

    After you have completed all previous installation tasks, you can run the installer from the installer host.

    To deploy the Cloud CPE Centralized Deployment Model:

    1. Log in to the installer host as root.
    2. Access the directory for the installer, which has a name specific to the release. For example, if the name of the installer directory is cspVersion:
      root@host:~/# cd cspVersion
    3. Run the installer.
      root@host:~/cspVersion# ./run_deployment.sh

      The installation begins.

    4. During installation, observe detailed messages in the log files about the installation of the components.
      • deploy.log—Contains details about the installation process
      • deploy_error.log—Contains details about errors that occur during installation
      • deploy_console.log—Contains details about the installation of the Contrail Service Orchestration components

      For example:

      root@host:~/cspVersion# cd logs
      root@host:~/cspVersion# tailf deploy.log

    Modified: 2016-06-02