3. INSERT DESIGNATOR, IF NEEDED3
The container images Kubernetes Resource Definitions
TroubleshootingRun the deployment
WHAT SHALL WE LOOK AT?
The pieces involved in deploying the VNF-Asterisk applications themselves.
5. INSERT DESIGNATOR, IF NEEDED5
dougbtv/docker-asterisk
DOCKER-ASTERISK
sipcapture/homer-docker
HOMER-DOCKER
WHERE ARE THE DOCKERFILES?
The Dockerfiles are on Github, of course! And the images on Dockerhub.
VNF-ASTERISK-CONTROLLER
dougbtv/vnf-asterisk-controller
*
6. INSERT DESIGNATOR, IF NEEDED6
DISSECTING A DOCKERFILE
Each instruction results in an image layer
FROM: A base image
RUN: Commands
ENV: Environment vars
7. INSERT DESIGNATOR, IF NEEDED7
THE OPEN CONTAINER INITIATIVE
Docker isnât the only way.
9. 9
In Kubernetes pods live together with the
namespaces of an âinfra-containerâ which
shares their network & volume mounts,
and more.
WHATâS A POD?
Pods are logically grouped containers and scale together in deployments.
Pod
Asterisk (VoIP)
Capture Agent
(packet sniffer)
Network Volumes ...
container container
10. 10
INSIDE A POD SPEC...
Itâs really just YAML that specifies how to run a pod.
kind: The type of specification
image: Which image to run
volumeMounts: storage to mount
configMap: configurations to mount
11. 11
DEPLOYMENTS AND REPLICAS
Deployment controllers provide updates to ReplicaSets and Pods
Pod-1
Asterisk
(VoIP)
Capture
Agent
container container
Replica Set
Replicas: 2
Pod-2
Asterisk
(VoIP)
Capture
Agent
container container
2 instances of
Asterisk, please.
Deployment: Asterisk
12. 12
INSIDE A DEPLOYMENT DEFINITION
It abstracts a replication controller & pod specs so you can scale it.
kind: Itâs a deployment
replicas: Number of instances
template: What to replicate
spec: The whole pod spec (as before)
13. 13
CONFIGMAPS
How to pack (primarily) static configuration files (or environment vars, and more) into pods.
kind: A config map.
data: A dictionary of configs
These are config files packed into
the yaml file! Hereâs some friendly
ones you know and love (like
pjsip.conf and cdr.conf)
17. 17
DO YOU LIKE THE EASY WAY OUT?
You can also run VNF-Asterisk solely with Docker-Compose!
$ dnf install -y docker-compose
$ git clone https://github.com/dougbtv/docker-asterisk.git
$ docker-compose build
$ docker-compose up
20. 20
VNF-Asterisk is a VNF utilizing Asterisk (an
Open Source telephony framework) and
intended to be used for validating environments,
and exploring topics such as:
â VNFs in COEs (Kubernetes / Openshift)
â Container Networking
â Scale
â High Availability
â And more.
SO, WHAT IS VNF-ASTERISK?
A demo VNF in Kubernetes that YOU can try out!
redhat-nfvpe/vnf-asterisk