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.