... | @@ -2,11 +2,11 @@ |
... | @@ -2,11 +2,11 @@ |
|
|
|
|
|
**Introduction**
|
|
**Introduction**
|
|
|
|
|
|
Swisscom Innovations is looking for a simple solution to deploy OpenAir-CN (the core network part) on an arbitrary OpenStack public cloud and having that procedure automated as much as possible. Therefore we created a Heat orchestration template, which can be used for this task. The goal is to compile install and configure openair-cn as vEPC in the cloud. Swisscom thinks it might be useful for the community, thats why it is shared here. Feel free to ask questions to the openair-cn mailinglist or directly to @dbalsige.
|
|
Swisscom Innovations was looking for a simple solution to deploy OpenAir-CN (the core network part) on an arbitrary OpenStack public cloud and having that procedure automated as much as possible. Therefore we created a Heat Orchestration Template which can be used for this task. The template does everything automatically from building the software directly from git and install and configure openair-cn as vEPC in the cloud. We thinks it might be useful for the community, thats why Swisscom shares it here. Feel free to ask questions to the openair-cn mailinglist or directly to @dbalsige.
|
|
|
|
|
|
**Deployed Architecture**
|
|
**Deployed Architecture**
|
|
|
|
|
|
Since generic OpenStack clouds do not support transporting SCTP packets over Floating IPs yet, we use a simple VPN setup for carrying the S1 traffic between eNBs and MME/SPGW instances. Have a look at the following picture to understand which networks and instance interfaces are used for which traffic:
|
|
Since generic OpenStack clouds do not support transporting SCTP packets over Floating IPs yet, we use a simple VPN setup for carrying the S1 traffic between eNBs and MME/SPGW instances. Have a look at the following picture to understand which networks and instance interfaces are used for which traffic:
|
|
|
|
|
|
![tutorial-arch](/uploads/195c7b8d3cff6258f9590efb5b9c4380/tutorial-arch.png)
|
|
![tutorial-arch](/uploads/195c7b8d3cff6258f9590efb5b9c4380/tutorial-arch.png)
|
|
|
|
|
... | @@ -15,17 +15,20 @@ Since generic OpenStack clouds do not support transporting SCTP packets over Flo |
... | @@ -15,17 +15,20 @@ Since generic OpenStack clouds do not support transporting SCTP packets over Flo |
|
* Access to an OpenStack tenant
|
|
* Access to an OpenStack tenant
|
|
|
|
|
|
The template creates a router, a floating IP, a network, volumes, security groups, ports and instances on OpenStack. Keep in mind that your tenant has sufficient quotas to create those ressources. OpenStack version should be at least Kilo, the template needs neutron, nova, glance, cinder and heat OpenStack services.
|
|
The template creates a router, a floating IP, a network, volumes, security groups, ports and instances on OpenStack. Keep in mind that your tenant has sufficient quotas to create those ressources. OpenStack version should be at least Kilo, the template needs neutron, nova, glance, cinder and heat OpenStack services.
|
|
|
|
|
|
* The HOT (Heat Orchestration Template)
|
|
* The HOT (Heat Orchestration Template)
|
|
|
|
|
|
The heat template is in openair-cn git located here and can be uploaded to heat by command-line client or directly in horizon.
|
|
The heat template is in openair-cn git located here and can be uploaded to heat by command-line client or directly in horizon.
|
|
|
|
|
|
* Ubuntu images with os-*config tools installed
|
|
* Ubuntu images with os-*config tools installed
|
|
|
|
|
|
Since the heat template uses OS::Heat::SoftwareDeployment, the base image for the instances needs to have os-collect-config/heat-config/os-apply-config tools installed. Such images can be created manually and uploaded to your cloud easily.
|
|
Since the heat template uses OS::Heat::SoftwareDeployment, the base image for the instances needs to have os-collect-config/heat-config/os-apply-config tools installed. Such images can be created manually and uploaded to your cloud easily.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
**1. Create custom Ubuntu images**
|
|
**1. Create custom Ubuntu images**
|
|
|
|
|
|
To create os-*config ready Ubuntu images just use the following commands:
|
|
To create an os-*-config ready Ubuntu image you could use the following commands:
|
|
|
|
|
|
```
|
|
```
|
|
mkdir custom-image
|
|
mkdir custom-image
|
... | @@ -42,7 +45,10 @@ diskimage-builder/bin/disk-image-create vm ubuntu os-collect-config os-refresh-c |
... | @@ -42,7 +45,10 @@ diskimage-builder/bin/disk-image-create vm ubuntu os-collect-config os-refresh-c |
|
|
|
|
|
**2. Upload your created image to OpenStack**
|
|
**2. Upload your created image to OpenStack**
|
|
|
|
|
|
Use the horizon GUI or the glance command-line client to upload the image you just created to your OpenStack cloud.
|
|
Use the horizon GUI to upload the image you just created to your OpenStack cloud. Or have a look at the following example how to achieve that with the glance command-line client:
|
|
|
|
´´´
|
|
|
|
glance image-create --disk-format qcow2 --file ubuntu-$DIB_RELEASE-os-config.qcow2 ubuntu-$DIB_RELEASE-os-config
|
|
|
|
´´´
|
|
|
|
|
|
**3. Create or upload an SSH keypair for logging into instances**
|
|
**3. Create or upload an SSH keypair for logging into instances**
|
|
|
|
|
... | | ... | |