These are rough notes being developed as the Joid install environment for Copper is developed.
Basic install guidelines: https://wiki.opnfv.org/joid/get_started and https://wiki.opnfv.org/joid/get_started?&#run_the_deployment_using_joid
sudo apt-get update sudo apt-get upgrade -y sudo apt-get install bridge-utils vlan git openssh-server -y mkdir ~/.ssh chmod 744 ~/.ssh
(leave lo section as-is) iface eth0 inet manual auto brAdm iface brAdm inet static address 192.168.10.2 netmask 255.255.255.0 network 192.168.10.1 broadcast 192.168.10.255 gateway 192.168.10.1 dns-nameservers 8.8.8.8 127.0.0.1 bridge_ports eth0
sudo stop network-manager echo "manual" | sudo tee /etc/init/network-manager.override
mkdir ~/git cd git git clone http://gerrit.opnfv.org/gerrit/joid.git
vi ~/git/joid/ci/maas/att/virpod1/deployment.yaml
cd ~/git/joid/ci ./02-maasdeploy.sh attvirpod1
You are now logged in to the MAAS server at http://192.168.10.3/MAAS/api/1.0/ with the profile name 'maas'.
cd ~/git/joid/ci ./deploy.sh -o liberty -s odl -t nonha -l attvirpod1
./clean.sh # use the following commands if clean.sh hangs rm -rf ~/.juju/environments rm -rf ~/.juju/ssh
2015-12-04 11:21:02 [INFO] deployer.cli: Deployment complete in 1709.63 seconds + echo '... Deployment finished ....' ... Deployment finished .... + echo 'deploying finished' deploying finished
watch juju status --format=tabular
juju status --format=short - ceilometer/0: 192.168.10.103 (started) 8777/tcp - ceph/0: compute1.maas (started) - cinder/0: 192.168.10.104 (started) - cinder-ceph/0: 192.168.10.104 (started) - glance/0: 192.168.10.105 (started) 9292/tcp - heat/0: 192.168.10.110 (started) 8000/tcp, 8004/tcp - juju-gui/0: bootstrap.maas (started) 80/tcp, 443/tcp - keystone/0: 192.168.10.106 (started) - mongodb/0: 192.168.10.111 (started) 27017/tcp, 27019/tcp, 27021/tcp, 28017/tcp - mysql/0: 192.168.10.107 (started) - neutron-api/0: 192.168.10.112 (started) 9696/tcp - neutron-api-odl/0: 192.168.10.112 (started) - neutron-gateway/0: controller1.maas (started) - nodes-api/0: controller1.maas (started) - ntp/0: controller1.maas (started) - nodes-compute/0: compute1.maas (started) - ntp/1: compute1.maas (started) - nova-cloud-controller/0: 192.168.10.108 (started) 3333/tcp, 8773/tcp, 8774/tcp, 9696/tcp - nova-compute/0: compute1.maas (started) - ceilometer-agent/0: compute1.maas (started) - openvswitch-odl/0: compute1.maas (started) - odl-controller/0: 192.168.10.113 (started) - openstack-dashboard/0: 192.168.10.114 (started) 80/tcp, 443/tcp - rabbitmq-server/0: 192.168.10.109 (started) 5672/tcp
curl https://bootstrap.pypa.io/get-pip.py -O ~/get-pip.py sudo -H python ~/get-pip.py sudo -H apt-get install -y python-dev sudo -H pip install python-openstackclient sudo -H pip install python-glanceclient sudo -H pip install python-neutronclient sudo -H pip install python-novaclient
source ~/admin-openrc.sh
1) On the jumphost browse to, and verify that these services are active (e.g. per the example above):
sudo juju status --format=short | grep openstack-dashboard
sudo juju status --format=short | grep odl-controller
The following procedure will verify that the basic OPNFV services are operational.
mkdir ~/git cd ~/git git clone https://gerrit.opnfv.org/gerrit/copper
cd ~/git/copper/tests/adhoc source smoke01.sh
cd ~/git/copper/tests/adhoc source smoke01-clean.sh
This was the part-manual procedure developed before the smoke tests. This section will be maintained so that a Horizon procedure is also documented.
1) Create image cirros-0.3.3-x86_64
glance --os-image-api-version 1 image-create --name cirros-0.3.3-x86_64 --disk-format qcow2 --location http://download.cirros-cloud.net/0.3.3/cirros-0.3.3-x86_64-disk.img --container-format bare +------------------+--------------------------------------+ | Property | Value | +------------------+--------------------------------------+ | checksum | None | | container_format | bare | | created_at | 2015-12-06T18:38:07.000000 | | deleted | False | | deleted_at | None | | disk_format | qcow2 | | id | 56432206-6038-48ef-a274-8cdb72b7604d | | is_public | False | | min_disk | 0 | | min_ram | 0 | | name | cirros-0.3.3-x86_64 | | owner | 259ac920516144e0b0dbc3d96a49227d | | protected | False | | size | 13200896 | | status | active | | updated_at | 2015-12-06T18:38:08.000000 | | virtual_size | None | +------------------+--------------------------------------+
2) On jumphost, create external network and subnet using Neutron CLI
neutron net-create public --router:external=true --provider:network_type=flat --provider:physical_network=physnet1 Created a new network: +---------------------------+--------------------------------------+ | Field | Value | +---------------------------+--------------------------------------+ | admin_state_up | True | | id | b3913813-7a0e-4e20-b102-522f9f21914b | | mtu | 0 | | name | public | | provider:network_type | flat | | provider:physical_network | physnet1 | | provider:segmentation_id | | | router:external | True | | shared | False | | status | ACTIVE | | subnets | | | tenant_id | 66fa32b77cfe4558a2b8502f66db435e | +---------------------------+--------------------------------------+ neutron subnet-create --disable-dhcp public 192.168.10.0/24 Created a new subnet: +-------------------+----------------------------------------------------+ | Field | Value | +-------------------+----------------------------------------------------+ | allocation_pools | {"start": "192.168.10.2", "end": "192.168.10.254"} | | cidr | 192.168.10.0/24 | | dns_nameservers | | | enable_dhcp | False | | gateway_ip | 192.168.10.1 | | host_routes | | | id | 3384e0b4-563c-4736-8296-58d5a2c72075 | | ip_version | 4 | | ipv6_address_mode | | | ipv6_ra_mode | | | name | | | network_id | b3913813-7a0e-4e20-b102-522f9f21914b | | subnetpool_id | | | tenant_id | 66fa32b77cfe4558a2b8502f66db435e | +-------------------+----------------------------------------------------+
3) Create internal network.
neutron net-create internal Created a new network: +---------------------------+--------------------------------------+ | Field | Value | +---------------------------+--------------------------------------+ | admin_state_up | True | | id | 2bd18ff3-bbbe-4710-b67f-624b2ede2aea | | mtu | 0 | | name | internal | | provider:network_type | vxlan | | provider:physical_network | | | provider:segmentation_id | 1097 | | router:external | False | | shared | False | | status | ACTIVE | | subnets | | | tenant_id | 259ac920516144e0b0dbc3d96a49227d | +---------------------------+--------------------------------------+ neutron subnet-create internal 10.0.0.0/24 --name internal --gateway 10.0.0.1 --enable-dhcp --allocation-pool start=10.0.0.2,end=10.0.0.254 --dns-nameserver 8.8.8.8 Created a new subnet: +-------------------+--------------------------------------------+ | Field | Value | +-------------------+--------------------------------------------+ | allocation_pools | {"start": "10.0.0.2", "end": "10.0.0.254"} | | cidr | 10.0.0.0/24 | | dns_nameservers | 8.8.8.8 | | enable_dhcp | True | | gateway_ip | 10.0.0.1 | | host_routes | | | id | 58cb1cb5-b829-4816-b554-215bc48dfbfe | | ip_version | 4 | | ipv6_address_mode | | | ipv6_ra_mode | | | name | | | network_id | 2bd18ff3-bbbe-4710-b67f-624b2ede2aea | | subnetpool_id | | | tenant_id | 259ac920516144e0b0dbc3d96a49227d | +-------------------+--------------------------------------------+
4) Create router and external port
neutron router-create external Created a new router: +-----------------------+--------------------------------------+ | Field | Value | +-----------------------+--------------------------------------+ | admin_state_up | True | | distributed | False | | external_gateway_info | | | ha | False | | id | eb753d22-00f6-446c-b1e9-d8596b420d76 | | name | external | | routes | | | status | ACTIVE | | tenant_id | 259ac920516144e0b0dbc3d96a49227d | +-----------------------+--------------------------------------+ Created a new router: +-----------------------+--------------------------------------+ | Field | Value | +-----------------------+--------------------------------------+ | admin_state_up | True | | distributed | False | | external_gateway_info | | | ha | False | | id | eb753d22-00f6-446c-b1e9-d8596b420d76 | | name | external | | routes | | | status | ACTIVE | | tenant_id | 259ac920516144e0b0dbc3d96a49227d | +-----------------------+--------------------------------------+ neutron router-gateway-set external public Set gateway for router external
5) Add internal network interface to the router.
neutron router-interface-add external subnet=internal
6) Launch images
neutron net-list # copy id of network "internal" and use in the following command nova boot --flavor m1.tiny --image cirros-0.3.3-x86_64 --nic net-id=2bd18ff3-bbbe-4710-b67f-624b2ede2aea cirros1 +--------------------------------------+------------------------------------------------------------+ | Property | Value | +--------------------------------------+------------------------------------------------------------+ | OS-DCF:diskConfig | MANUAL | | OS-EXT-AZ:availability_zone | | | OS-EXT-SRV-ATTR:host | - | | OS-EXT-SRV-ATTR:hypervisor_hostname | - | | OS-EXT-SRV-ATTR:instance_name | instance-00000001 | | OS-EXT-STS:power_state | 0 | | OS-EXT-STS:task_state | scheduling | | OS-EXT-STS:vm_state | building | | OS-SRV-USG:launched_at | - | | OS-SRV-USG:terminated_at | - | | accessIPv4 | | | accessIPv6 | | | adminPass | jhUuRSoTc2ZR | | config_drive | | | created | 2015-12-06T21:31:25Z | | flavor | m1.tiny (1) | | hostId | | | id | 35738bb6-b7ee-4fd8-8260-85ad01ba2786 | | image | cirros-0.3.3-x86_64 (56432206-6038-48ef-a274-8cdb72b7604d) | | key_name | - | | metadata | {} | | name | cirros1 | | os-extended-volumes:volumes_attached | [] | | progress | 0 | | security_groups | default | | status | BUILD | | tenant_id | 259ac920516144e0b0dbc3d96a49227d | | updated | 2015-12-06T21:31:26Z | | user_id | aa4afba50cba429489e44848bafa6248 | +--------------------------------------+------------------------------------------------------------+ nova boot --flavor m1.tiny --image cirros-0.3.3-x86_64 --nic net-id=2bd18ff3-bbbe-4710-b67f-624b2ede2aea cirros2 +--------------------------------------+------------------------------------------------------------+ | Property | Value | +--------------------------------------+------------------------------------------------------------+ | OS-DCF:diskConfig | MANUAL | | OS-EXT-AZ:availability_zone | | | OS-EXT-SRV-ATTR:host | - | | OS-EXT-SRV-ATTR:hypervisor_hostname | - | | OS-EXT-SRV-ATTR:instance_name | instance-00000002 | | OS-EXT-STS:power_state | 0 | | OS-EXT-STS:task_state | scheduling | | OS-EXT-STS:vm_state | building | | OS-SRV-USG:launched_at | - | | OS-SRV-USG:terminated_at | - | | accessIPv4 | | | accessIPv6 | | | adminPass | VPQL7bzRKyXr | | config_drive | | | created | 2015-12-06T21:32:15Z | | flavor | m1.tiny (1) | | hostId | | | id | 1304cc75-098f-4101-9f8e-425954c5d25f | | image | cirros-0.3.3-x86_64 (56432206-6038-48ef-a274-8cdb72b7604d) | | key_name | - | | metadata | {} | | name | cirros2 | | os-extended-volumes:volumes_attached | [] | | progress | 0 | | security_groups | default | | status | BUILD | | tenant_id | 259ac920516144e0b0dbc3d96a49227d | | updated | 2015-12-06T21:32:16Z | | user_id | aa4afba50cba429489e44848bafa6248 | +--------------------------------------+------------------------------------------------------------+
7) Verify connectivity from VMs.