SlideShare ist ein Scribd-Unternehmen logo
1 von 20
Downloaden Sie, um offline zu lesen
For Astricon 2017
Leif Madsen & Doug Smith
Red Hat, Inc.
VNF-Asterisk, Deploying The Applications
2
10:45 - Intro to NFV & VNF-Asterisk
11:30 - A VNF-Asterisk Demo
1:45 - Infrastructure Deployment
2:30 - Application Deployment
TODAY’S AGENDA
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.
THE DOCKER IMAGES
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
*
INSERT DESIGNATOR, IF NEEDED6
DISSECTING A DOCKERFILE
Each instruction results in an image layer
FROM: A base image
RUN: Commands
ENV: Environment vars
INSERT DESIGNATOR, IF NEEDED7
THE OPEN CONTAINER INITIATIVE
Docker isn’t the only way.
THE KUBERNETES RESOURCE
DEFINITIONS
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
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
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
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
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)
DEMO TIME!
TROUBLESHOOTING
BONUS! TAKE THE HIGH ROAD
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
18
{intentionally blank}
19
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

Weitere Àhnliche Inhalte

Was ist angesagt?

Docker Summit 2016 - Kubernetes: Sweets and Bitters
Docker Summit 2016 - Kubernetes: Sweets and BittersDocker Summit 2016 - Kubernetes: Sweets and Bitters
Docker Summit 2016 - Kubernetes: Sweets and Bitterssmalltown
 
OpenStack Swiftăźæœ€æ–°æ©ŸèƒœăšStorlets
OpenStack Swiftăźæœ€æ–°æ©ŸèƒœăšStorletsOpenStack Swiftăźæœ€æ–°æ©ŸèƒœăšStorlets
OpenStack Swiftăźæœ€æ–°æ©ŸèƒœăšStorletsKota Tsuyuzaki
 
Using Storlets/Docker For Large Scale Image Processing
Using Storlets/Docker For Large Scale Image ProcessingUsing Storlets/Docker For Large Scale Image Processing
Using Storlets/Docker For Large Scale Image ProcessingKota Tsuyuzaki
 
Kubernetes Security Best Practices for DevOps
Kubernetes Security Best Practices for DevOpsKubernetes Security Best Practices for DevOps
Kubernetes Security Best Practices for DevOpsDevOps.com
 
Cloudformation vs terraform_vs_ansible
Cloudformation vs terraform_vs_ansibleCloudformation vs terraform_vs_ansible
Cloudformation vs terraform_vs_ansibleGeert Theys
 
Cloud Native Okteto Cloud
Cloud Native Okteto Cloud Cloud Native Okteto Cloud
Cloud Native Okteto Cloud sangam biradar
 
JupyterHub + kubernetes
JupyterHub + kubernetesJupyterHub + kubernetes
JupyterHub + kubernetesCarol Willing
 
CI, CD, CT, Deploy, IaaS, DevOps, Stage
CI, CD, CT, Deploy, IaaS, DevOps, StageCI, CD, CT, Deploy, IaaS, DevOps, Stage
CI, CD, CT, Deploy, IaaS, DevOps, StageArtur Basak
 
Dive into orchestration with Kubernetes
Dive into orchestration with KubernetesDive into orchestration with Kubernetes
Dive into orchestration with KubernetesAyman Awartani
 
Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...
Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...
Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...sangam biradar
 
Rally: OpenStack Benchmarking
Rally: OpenStack BenchmarkingRally: OpenStack Benchmarking
Rally: OpenStack BenchmarkingVishal Yadav
 
Lopug docker end_of_distro
Lopug docker end_of_distroLopug docker end_of_distro
Lopug docker end_of_distroChris Swan
 
Importance of having a vulnerability management | Vfeed
Importance of having a vulnerability management | Vfeed Importance of having a vulnerability management | Vfeed
Importance of having a vulnerability management | Vfeed DNIF
 
Simplifying and Securing your OpenShift Network with Project Calico
Simplifying and Securing your OpenShift Network with Project CalicoSimplifying and Securing your OpenShift Network with Project Calico
Simplifying and Securing your OpenShift Network with Project CalicoAndrew Randall
 
Make stateful apps in Kubernetes a no brainer with Pure Storage and GitOps
Make stateful apps in Kubernetes a no brainer with Pure Storage and GitOpsMake stateful apps in Kubernetes a no brainer with Pure Storage and GitOps
Make stateful apps in Kubernetes a no brainer with Pure Storage and GitOpsWeaveworks
 
05.10.2017 AWS User Group Meetup - FALLACIES OF DISTRIBUTED COMPUTING WITH KU...
05.10.2017 AWS User Group Meetup - FALLACIES OF DISTRIBUTED COMPUTING WITH KU...05.10.2017 AWS User Group Meetup - FALLACIES OF DISTRIBUTED COMPUTING WITH KU...
05.10.2017 AWS User Group Meetup - FALLACIES OF DISTRIBUTED COMPUTING WITH KU...Zalando adtech lab
 
Bcn open stack meet up - july 2014
Bcn open stack meet up - july 2014Bcn open stack meet up - july 2014
Bcn open stack meet up - july 2014Jaume Devesa Gomez
 
Cross Cloud CI Intro
Cross Cloud CI IntroCross Cloud CI Intro
Cross Cloud CI IntroW Watson
 

Was ist angesagt? (20)

Docker Summit 2016 - Kubernetes: Sweets and Bitters
Docker Summit 2016 - Kubernetes: Sweets and BittersDocker Summit 2016 - Kubernetes: Sweets and Bitters
Docker Summit 2016 - Kubernetes: Sweets and Bitters
 
OpenStack Swiftăźæœ€æ–°æ©ŸèƒœăšStorlets
OpenStack Swiftăźæœ€æ–°æ©ŸèƒœăšStorletsOpenStack Swiftăźæœ€æ–°æ©ŸèƒœăšStorlets
OpenStack Swiftăźæœ€æ–°æ©ŸèƒœăšStorlets
 
Using Storlets/Docker For Large Scale Image Processing
Using Storlets/Docker For Large Scale Image ProcessingUsing Storlets/Docker For Large Scale Image Processing
Using Storlets/Docker For Large Scale Image Processing
 
HPC on OpenStack
HPC on OpenStackHPC on OpenStack
HPC on OpenStack
 
Canister
Canister Canister
Canister
 
Kubernetes Security Best Practices for DevOps
Kubernetes Security Best Practices for DevOpsKubernetes Security Best Practices for DevOps
Kubernetes Security Best Practices for DevOps
 
Cloudformation vs terraform_vs_ansible
Cloudformation vs terraform_vs_ansibleCloudformation vs terraform_vs_ansible
Cloudformation vs terraform_vs_ansible
 
Cloud Native Okteto Cloud
Cloud Native Okteto Cloud Cloud Native Okteto Cloud
Cloud Native Okteto Cloud
 
JupyterHub + kubernetes
JupyterHub + kubernetesJupyterHub + kubernetes
JupyterHub + kubernetes
 
CI, CD, CT, Deploy, IaaS, DevOps, Stage
CI, CD, CT, Deploy, IaaS, DevOps, StageCI, CD, CT, Deploy, IaaS, DevOps, Stage
CI, CD, CT, Deploy, IaaS, DevOps, Stage
 
Dive into orchestration with Kubernetes
Dive into orchestration with KubernetesDive into orchestration with Kubernetes
Dive into orchestration with Kubernetes
 
Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...
Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...
Google ko: fast Kubernetes microservice development in Go - Sangam Biradar, E...
 
Rally: OpenStack Benchmarking
Rally: OpenStack BenchmarkingRally: OpenStack Benchmarking
Rally: OpenStack Benchmarking
 
Lopug docker end_of_distro
Lopug docker end_of_distroLopug docker end_of_distro
Lopug docker end_of_distro
 
Importance of having a vulnerability management | Vfeed
Importance of having a vulnerability management | Vfeed Importance of having a vulnerability management | Vfeed
Importance of having a vulnerability management | Vfeed
 
Simplifying and Securing your OpenShift Network with Project Calico
Simplifying and Securing your OpenShift Network with Project CalicoSimplifying and Securing your OpenShift Network with Project Calico
Simplifying and Securing your OpenShift Network with Project Calico
 
Make stateful apps in Kubernetes a no brainer with Pure Storage and GitOps
Make stateful apps in Kubernetes a no brainer with Pure Storage and GitOpsMake stateful apps in Kubernetes a no brainer with Pure Storage and GitOps
Make stateful apps in Kubernetes a no brainer with Pure Storage and GitOps
 
05.10.2017 AWS User Group Meetup - FALLACIES OF DISTRIBUTED COMPUTING WITH KU...
05.10.2017 AWS User Group Meetup - FALLACIES OF DISTRIBUTED COMPUTING WITH KU...05.10.2017 AWS User Group Meetup - FALLACIES OF DISTRIBUTED COMPUTING WITH KU...
05.10.2017 AWS User Group Meetup - FALLACIES OF DISTRIBUTED COMPUTING WITH KU...
 
Bcn open stack meet up - july 2014
Bcn open stack meet up - july 2014Bcn open stack meet up - july 2014
Bcn open stack meet up - july 2014
 
Cross Cloud CI Intro
Cross Cloud CI IntroCross Cloud CI Intro
Cross Cloud CI Intro
 

Ähnlich wie Asterisk as a Virtual Network Function Part 4

Introduction to Docker
Introduction  to DockerIntroduction  to Docker
Introduction to DockerJian Wu
 
What is this "docker"
What is this  "docker" What is this  "docker"
What is this "docker" Jean-Marc Meessen
 
Docker Ecosystem on Azure
Docker Ecosystem on AzureDocker Ecosystem on Azure
Docker Ecosystem on AzurePatrick Chanezon
 
JUDCon 2010 Boston : BoxGrinder
JUDCon 2010 Boston : BoxGrinderJUDCon 2010 Boston : BoxGrinder
JUDCon 2010 Boston : BoxGrindermarekgoldmann
 
Running Docker in Development & Production (DevSum 2015)
Running Docker in Development & Production (DevSum 2015)Running Docker in Development & Production (DevSum 2015)
Running Docker in Development & Production (DevSum 2015)Ben Hall
 
Docker intro
Docker introDocker intro
Docker introFrei Zhang
 
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth RushgroveThe Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth RushgroveDocker, Inc.
 
Agile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Partner S.A.
 
Docker and the Container Ecosystem
Docker and the Container EcosystemDocker and the Container Ecosystem
Docker and the Container Ecosystempsconnolly
 
Docker Multi-arch All The Things
Docker Multi-arch All The ThingsDocker Multi-arch All The Things
Docker Multi-arch All The ThingsDocker, Inc.
 
SPFx Team based Development using Docker
SPFx Team based Development using DockerSPFx Team based Development using Docker
SPFx Team based Development using DockerJenkins NS
 
App container rkt
App container rktApp container rkt
App container rktXiaofeng Guo
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetesDongwon Kim
 
Docker - Lightweight Virtualization
Docker - Lightweight VirtualizationDocker - Lightweight Virtualization
Docker - Lightweight VirtualizationMehdi Hasan
 
Dockerizing a Symfony2 application
Dockerizing a Symfony2 applicationDockerizing a Symfony2 application
Dockerizing a Symfony2 applicationRoman Rodomansky
 
Linux containers & Devops
Linux containers & DevopsLinux containers & Devops
Linux containers & DevopsMaciej Lasyk
 
Delivering Docker & K3s worloads to IoT Edge devices
Delivering Docker & K3s worloads to IoT Edge devicesDelivering Docker & K3s worloads to IoT Edge devices
Delivering Docker & K3s worloads to IoT Edge devicesAjeet Singh Raina
 
Dev opsec dockerimage_patch_n_lifecyclemanagement_2019
Dev opsec dockerimage_patch_n_lifecyclemanagement_2019Dev opsec dockerimage_patch_n_lifecyclemanagement_2019
Dev opsec dockerimage_patch_n_lifecyclemanagement_2019kanedafromparis
 

Ähnlich wie Asterisk as a Virtual Network Function Part 4 (20)

Introduction to Docker
Introduction  to DockerIntroduction  to Docker
Introduction to Docker
 
What is this "docker"
What is this  "docker" What is this  "docker"
What is this "docker"
 
Docker Ecosystem on Azure
Docker Ecosystem on AzureDocker Ecosystem on Azure
Docker Ecosystem on Azure
 
JUDCon 2010 Boston : BoxGrinder
JUDCon 2010 Boston : BoxGrinderJUDCon 2010 Boston : BoxGrinder
JUDCon 2010 Boston : BoxGrinder
 
Running Docker in Development & Production (DevSum 2015)
Running Docker in Development & Production (DevSum 2015)Running Docker in Development & Production (DevSum 2015)
Running Docker in Development & Production (DevSum 2015)
 
Docker intro
Docker introDocker intro
Docker intro
 
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth RushgroveThe Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
The Dockerfile Explosion and the Need for Higher Level Tools by Gareth Rushgrove
 
Agile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: IntroductionAgile Brown Bag - Vagrant & Docker: Introduction
Agile Brown Bag - Vagrant & Docker: Introduction
 
Docker and the Container Ecosystem
Docker and the Container EcosystemDocker and the Container Ecosystem
Docker and the Container Ecosystem
 
Docker Multi-arch All The Things
Docker Multi-arch All The ThingsDocker Multi-arch All The Things
Docker Multi-arch All The Things
 
SPFx Team based Development using Docker
SPFx Team based Development using DockerSPFx Team based Development using Docker
SPFx Team based Development using Docker
 
Introducing Docker
Introducing DockerIntroducing Docker
Introducing Docker
 
App container rkt
App container rktApp container rkt
App container rkt
 
Docker and kubernetes
Docker and kubernetesDocker and kubernetes
Docker and kubernetes
 
Docker - Lightweight Virtualization
Docker - Lightweight VirtualizationDocker - Lightweight Virtualization
Docker - Lightweight Virtualization
 
Dockerizing a Symfony2 application
Dockerizing a Symfony2 applicationDockerizing a Symfony2 application
Dockerizing a Symfony2 application
 
Linux containers & Devops
Linux containers & DevopsLinux containers & Devops
Linux containers & Devops
 
Delivering Docker & K3s worloads to IoT Edge devices
Delivering Docker & K3s worloads to IoT Edge devicesDelivering Docker & K3s worloads to IoT Edge devices
Delivering Docker & K3s worloads to IoT Edge devices
 
Dev opsec dockerimage_patch_n_lifecyclemanagement_2019
Dev opsec dockerimage_patch_n_lifecyclemanagement_2019Dev opsec dockerimage_patch_n_lifecyclemanagement_2019
Dev opsec dockerimage_patch_n_lifecyclemanagement_2019
 
Belvedere
BelvedereBelvedere
Belvedere
 

KĂŒrzlich hochgeladen

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...gurkirankumar98700
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGSujit Pal
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesSinan KOZAK
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 

KĂŒrzlich hochgeladen (20)

From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍾 8923113531 🎰 Avail...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Google AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAGGoogle AI Hackathon: LLM based Evaluator for RAG
Google AI Hackathon: LLM based Evaluator for RAG
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
Unblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen FramesUnblocking The Main Thread Solving ANRs and Frozen Frames
Unblocking The Main Thread Solving ANRs and Frozen Frames
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 

Asterisk as a Virtual Network Function Part 4

  • 1. For Astricon 2017 Leif Madsen & Doug Smith Red Hat, Inc. VNF-Asterisk, Deploying The Applications
  • 2. 2 10:45 - Intro to NFV & VNF-Asterisk 11:30 - A VNF-Asterisk Demo 1:45 - Infrastructure Deployment 2:30 - Application Deployment TODAY’S AGENDA
  • 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)
  • 16. BONUS! TAKE THE HIGH ROAD
  • 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
  • 19. 19
  • 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