SlideShare uma empresa Scribd logo
1 de 20
Copyright©2014 NTT corp. All Rights Reserved.
Neutron CI Run on Docker
Hirofumi Ichihara
NTT
2Copyright©2014 NTT corp. All Rights Reserved.
• Neutron has many vendor plugins
• 38 vendor plugins and drivers in Neutron(include
proposing)
• Impossible to test all vendor plugins
Neutron plugins
http://stackalytics.com/report/driverlog?project_id=openstack%2Fneutron
A10 Networks LBaaS Driver
Arista Neutron ML2 Driver
Big Switch Neutron ML2 Driver
Big Switch Controller Plugin
Brocade Neutron plugin
Brocade Neutron ML2 Mechanism driver for VDX/VCS
Switches
Brocade Vyatta
CSR1kv router service plugin
Neutron ML2 Driver For Cisco Nexus Devices
Cisco APIC ML2 Driver
Cisco APIC L3 Service
Cisco VPNaaS
NetScaler LBaas driver
Cloudbase Hyper-V Plugin
Embrane Neutron Plugin
Embrane LBaaS Driver
Extreme Networks Plugin
Freescale SDN ML2 Mechanism Driver
IBM SDN-VE Plugin
Juniper Networks plug-in for OpenStack Neutron
Juniper Opencontrail plugin for Neutron resources
Mellanox Neutron Plugin
Mellanox Neutron ML2 Driver
Mellanox Neutron ML2 SR-IOV Driver
MidoNet Plugin
NEC OpenFlow Plugin
Nuage Networks Neutron Plugin
Nuage Networks ML2 driver
One Convergence NVSD Controller
OpenDaylight ML2 MechanismDriver
Meta Plugin
Ryu OpenFlow Controller Plugin
OpenFlow Agent
PLUMgrid OpenStack Networking Suite Neutron
Plugin
Radware LBaaS Driver for Alteon.
Tail-f NCS ML2 Mechanism Driver
VMware NSX Network Virtualization Platform
Plugin
vArmour-Firewall
3Copyright©2014 NTT corp. All Rights Reserved.
• Establish third party CI rules for Neutron
• https://wiki.openstack.org/wiki/NeutronThirdPartyTesting
Neutron Third Party CI System
https://review.openstack.org/#/c/131905/
4Copyright©2014 NTT corp. All Rights Reserved.
• Metaplugin
• provided since Folsom version
• allows you to use multiple plugins at the same time
• Metaplugin CI System
Neutron CI System for Metaplugin
1000 tests/month
Max 3 parallels
5Copyright©2014 NTT corp. All Rights Reserved.
• Test must be run in clean environment
Neutron CI System Requirement
Test Node
start
openstack
OVS setting
Package
ENV setting
install openstack
run tests
finish tests
stop openstack
Clean Node
Clean
Clean
Clean
OVS setting
Package
ENV setting
start
openstack
install openstack
fail to install or test
Jenkins: http://jenkins-ci.org/
6Copyright©2014 NTT corp. All Rights Reserved.
• Metaplugin CI System uses VM
Neutron CI System with VM
create VM
start test
VM
install openstack
OpenStack
VM
OpenStack
VM
OpenStack
finish tests
delete VM
certain Public Cloud Service
VM VM VM
Jenkins: http://jenkins-ci.org/
7Copyright©2014 NTT corp. All Rights Reserved.
• VM startup is very slow
• VM performance is not good
VM Problems
But a VM is very cheap:)
8Copyright©2014 NTT corp. All Rights Reserved.
• VM startup is very slow
• VM performance is not good
VM Problems
But a VM is very cheap:)
Really......?
9Copyright©2014 NTT corp. All Rights Reserved.
Not cheap!
10Copyright©2014 NTT corp. All Rights Reserved.
Let’s use container
11Copyright©2014 NTT corp. All Rights Reserved.
Docker
docker: https://www.docker.com
12Copyright©2014 NTT corp. All Rights Reserved.
• Dockenstack
• Run OpenStack on Docker
• Use nova-docker project to run nova instances
• Written by Paul Czarkowski, Eric Windisch
• Provide to https://github.com/ewindisch/dockenstack
OpenStack on Docker
Container
OpenStack
instance instance
13Copyright©2014 NTT corp. All Rights Reserved.
OpenStack on Docker Problems
• Well known
• Not support OpenvSwitch
• Not support Cinder Volume
• Devstack failed to
• Reserve keystone port
• install nova-docker
• Restart docker
• Nova-docker didn’t support Neutron ML2
Linuxbridge driver
• Neutron failed to ip6tables
14Copyright©2014 NTT corp. All Rights Reserved.
• OpenvSwitch
• Select ML2 Linuxbridge as Neutron plugin
• Cinder Volume
• Don’t use volume
• Reserve Keystone port ⇒ Bugfix #125740
• Install nova-docker ⇒ Bugfix #128746
• Restart docker
• Replace command (Workaround)
• start-stop-daemon --stop --pidfile "/var/run/docker.pid”
• ML2 Linuxbridge driver ⇒ Bugfix #130520
• Don’t use ip6tables
• Disable ipv6 in container(Workaround)
• echo 1 > /proc/sys/net/ipv6/conf/default/disable_ipv6
OpenStack on Docker Run
15Copyright©2014 NTT corp. All Rights Reserved.
• Jenkins runs shell script
Jenkins Run
#!/usr/bin/env bash
set -e
mkdir -p $BUILD_NUMBER/logs
docker run -v
$WORKSPACE/$BUILD_NUMBER/logs:/opt/stack/logs --
privileged $DOCKER_IMAGE $GERRIT_REFSPEC
• Docker can bind mount a
volume from the host
• Storing log became very
easy
16Copyright©2014 NTT corp. All Rights Reserved.
• Jenkins detects test success inside container
Jenkins Success
17Copyright©2014 NTT corp. All Rights Reserved.
• Tempest Neutron API test is successful
Neutron Test Result
18Copyright©2014 NTT corp. All Rights Reserved.
• Jenkins detects test failure inside container
Jenkins Failure
19Copyright©2014 NTT corp. All Rights Reserved.
$ git clone -b neutron-ci
https://github.com/hichihara/dockenstack.git
$ cd dockenstack/dockenstack
$ docker build .
TRY
20Copyright©2014 NTT corp. All Rights Reserved.
Contact
ichihara.hirofumi@lab.ntt.co.jp

Mais conteúdo relacionado

Mais procurados

Role of sdn controllers in open stack
Role of sdn controllers in open stackRole of sdn controllers in open stack
Role of sdn controllers in open stack
openstackindia
 
2014-4Q-OpenStack-Fall-presentation-public-20150310a
2014-4Q-OpenStack-Fall-presentation-public-20150310a2014-4Q-OpenStack-Fall-presentation-public-20150310a
2014-4Q-OpenStack-Fall-presentation-public-20150310a
Ken Igarashi
 
20141111_SOS3_Gallo
20141111_SOS3_Gallo20141111_SOS3_Gallo
20141111_SOS3_Gallo
Andrea Gallo
 

Mais procurados (20)

OpenStackユーザ会資料 - Masakari
OpenStackユーザ会資料 - MasakariOpenStackユーザ会資料 - Masakari
OpenStackユーザ会資料 - Masakari
 
OpenDaylight Integration with OpenStack Neutron: A Tutorial
OpenDaylight Integration with OpenStack Neutron: A TutorialOpenDaylight Integration with OpenStack Neutron: A Tutorial
OpenDaylight Integration with OpenStack Neutron: A Tutorial
 
OPNFV Doctor - OpenStack最新情報セミナー 2017年7月
OPNFV Doctor - OpenStack最新情報セミナー 2017年7月OPNFV Doctor - OpenStack最新情報セミナー 2017年7月
OPNFV Doctor - OpenStack最新情報セミナー 2017年7月
 
NTTドコモ様 導入事例 OpenStack Summit 2015 Tokyo 講演「After One year of OpenStack Cloud...
NTTドコモ様 導入事例 OpenStack Summit 2015 Tokyo 講演「After One year of OpenStack Cloud...NTTドコモ様 導入事例 OpenStack Summit 2015 Tokyo 講演「After One year of OpenStack Cloud...
NTTドコモ様 導入事例 OpenStack Summit 2015 Tokyo 講演「After One year of OpenStack Cloud...
 
Role of sdn controllers in open stack
Role of sdn controllers in open stackRole of sdn controllers in open stack
Role of sdn controllers in open stack
 
See what happened with real time kvm when building real time cloud pezhang@re...
See what happened with real time kvm when building real time cloud pezhang@re...See what happened with real time kvm when building real time cloud pezhang@re...
See what happened with real time kvm when building real time cloud pezhang@re...
 
2014-4Q-OpenStack-Fall-presentation-public-20150310a
2014-4Q-OpenStack-Fall-presentation-public-20150310a2014-4Q-OpenStack-Fall-presentation-public-20150310a
2014-4Q-OpenStack-Fall-presentation-public-20150310a
 
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
[2015-11월 정기 세미나] Cloud Native Platform - Pivotal
 
[OpenStack 하반기 스터디] DPDK & OpenStack why?
[OpenStack 하반기 스터디] DPDK & OpenStack why?[OpenStack 하반기 스터디] DPDK & OpenStack why?
[OpenStack 하반기 스터디] DPDK & OpenStack why?
 
SecurityPI - Hardening your IoT endpoints in Home.
SecurityPI - Hardening your IoT endpoints in Home. SecurityPI - Hardening your IoT endpoints in Home.
SecurityPI - Hardening your IoT endpoints in Home.
 
NTTドコモ様 導入事例 OpenStack Summit 2016 Barcelona 講演「Expanding and Deepening NTT D...
NTTドコモ様 導入事例 OpenStack Summit 2016 Barcelona 講演「Expanding and Deepening NTT D...NTTドコモ様 導入事例 OpenStack Summit 2016 Barcelona 講演「Expanding and Deepening NTT D...
NTTドコモ様 導入事例 OpenStack Summit 2016 Barcelona 講演「Expanding and Deepening NTT D...
 
20141111_SOS3_Gallo
20141111_SOS3_Gallo20141111_SOS3_Gallo
20141111_SOS3_Gallo
 
KubeCon EU 2016: What is OpenStack's role in a Kubernetes world?
KubeCon EU 2016: What is OpenStack's role in a Kubernetes world?KubeCon EU 2016: What is OpenStack's role in a Kubernetes world?
KubeCon EU 2016: What is OpenStack's role in a Kubernetes world?
 
[OpenStack Day in Korea 2015] Track 3-4 - Software Defined Storage (SDS) and ...
[OpenStack Day in Korea 2015] Track 3-4 - Software Defined Storage (SDS) and ...[OpenStack Day in Korea 2015] Track 3-4 - Software Defined Storage (SDS) and ...
[OpenStack Day in Korea 2015] Track 3-4 - Software Defined Storage (SDS) and ...
 
Unlock Your Cloud Potential with Mirantis OpenStack & Cumulus Linux
Unlock Your Cloud Potential with Mirantis OpenStack & Cumulus LinuxUnlock Your Cloud Potential with Mirantis OpenStack & Cumulus Linux
Unlock Your Cloud Potential with Mirantis OpenStack & Cumulus Linux
 
KubeCon EU 2016: Secure, Cloud-Native Networking with Project Calico
KubeCon EU 2016: Secure, Cloud-Native Networking with Project CalicoKubeCon EU 2016: Secure, Cloud-Native Networking with Project Calico
KubeCon EU 2016: Secure, Cloud-Native Networking with Project Calico
 
Openstack Quantum Security Groups Session
Openstack Quantum Security Groups SessionOpenstack Quantum Security Groups Session
Openstack Quantum Security Groups Session
 
[2015-11월 정기 세미나]K8s on openstack
[2015-11월 정기 세미나]K8s on openstack[2015-11월 정기 세미나]K8s on openstack
[2015-11월 정기 세미나]K8s on openstack
 
How logging makes a private cloud a better cloud - OpenStack最新情報セミナー(2016年12月)
How logging makes a private cloud a better cloud - OpenStack最新情報セミナー(2016年12月)How logging makes a private cloud a better cloud - OpenStack最新情報セミナー(2016年12月)
How logging makes a private cloud a better cloud - OpenStack最新情報セミナー(2016年12月)
 
OpenStack KOREA 정기 세미나_OpenStack meet iNaaS SDN Controller
OpenStack KOREA 정기 세미나_OpenStack meet iNaaS SDN ControllerOpenStack KOREA 정기 세미나_OpenStack meet iNaaS SDN Controller
OpenStack KOREA 정기 세미나_OpenStack meet iNaaS SDN Controller
 

Destaque (6)

Summit前にやることTODO
Summit前にやることTODOSummit前にやることTODO
Summit前にやることTODO
 
NTT Tech Conference #1 Closing Keynote
NTT Tech Conference #1 Closing KeynoteNTT Tech Conference #1 Closing Keynote
NTT Tech Conference #1 Closing Keynote
 
OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向
OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向
OpenStack Neutron プロジェクトから見たソフトウェアスイッチ動向
 
OSSコミッタの生活とその必要性
OSSコミッタの生活とその必要性OSSコミッタの生活とその必要性
OSSコミッタの生活とその必要性
 
NTT Tech Conference #1 Opening Keynote
NTT Tech Conference #1 Opening KeynoteNTT Tech Conference #1 Opening Keynote
NTT Tech Conference #1 Opening Keynote
 
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
10+ Deploys Per Day: Dev and Ops Cooperation at Flickr
 

Semelhante a Neutron CI Run on Docker

Tempest scenariotests 20140512
Tempest scenariotests 20140512Tempest scenariotests 20140512
Tempest scenariotests 20140512
Masayuki Igawa
 

Semelhante a Neutron CI Run on Docker (20)

Dockerizing the Hard Services: Neutron and Nova
Dockerizing the Hard Services: Neutron and NovaDockerizing the Hard Services: Neutron and Nova
Dockerizing the Hard Services: Neutron and Nova
 
Docker Networking in OpenStack: What you need to know now
Docker Networking in OpenStack: What you need to know nowDocker Networking in OpenStack: What you need to know now
Docker Networking in OpenStack: What you need to know now
 
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack NetworkingONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
ONUG Tutorial: Bridges and Tunnels Drive Through OpenStack Networking
 
OpenStack Integration with OpenContrail and OpenDaylight
OpenStack Integration with OpenContrail and OpenDaylightOpenStack Integration with OpenContrail and OpenDaylight
OpenStack Integration with OpenContrail and OpenDaylight
 
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
Meetup 23 - 01 - The things I wish I would have known before doing OpenStack ...
 
Quantum - Virtual networks for Openstack
Quantum - Virtual networks for OpenstackQuantum - Virtual networks for Openstack
Quantum - Virtual networks for Openstack
 
Build and Deploy Cloud Native Camel Quarkus routes with Tekton and Knative
Build and Deploy Cloud Native Camel Quarkus routes with Tekton and KnativeBuild and Deploy Cloud Native Camel Quarkus routes with Tekton and Knative
Build and Deploy Cloud Native Camel Quarkus routes with Tekton and Knative
 
The Future of Security and Productivity in Our Newly Remote World
The Future of Security and Productivity in Our Newly Remote WorldThe Future of Security and Productivity in Our Newly Remote World
The Future of Security and Productivity in Our Newly Remote World
 
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStack
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStackAutomated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStack
Automated Deployment & Benchmarking with Chef, Cobbler and Rally for OpenStack
 
On-Demand Image Resizing Extended - External Meet-up
On-Demand Image Resizing Extended - External Meet-upOn-Demand Image Resizing Extended - External Meet-up
On-Demand Image Resizing Extended - External Meet-up
 
Tempest scenariotests 20140512
Tempest scenariotests 20140512Tempest scenariotests 20140512
Tempest scenariotests 20140512
 
OpenStack Neutron Tutorial
OpenStack Neutron TutorialOpenStack Neutron Tutorial
OpenStack Neutron Tutorial
 
Open stack networking_101_update_2014
Open stack networking_101_update_2014Open stack networking_101_update_2014
Open stack networking_101_update_2014
 
To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…To Build My Own Cloud with Blackjack…
To Build My Own Cloud with Blackjack…
 
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...
Kubernetes vs dockers swarm supporting onap oom on multi-cloud multi-stack en...
 
OpenStack London Meetup, 18 Nov 2015
OpenStack London Meetup, 18 Nov 2015OpenStack London Meetup, 18 Nov 2015
OpenStack London Meetup, 18 Nov 2015
 
PaaSTA: Running applications at Yelp
PaaSTA: Running applications at YelpPaaSTA: Running applications at Yelp
PaaSTA: Running applications at Yelp
 
[Rakuten TechConf2014] [F-4] At Rakuten, The Rakuten OpenStack Platform and B...
[Rakuten TechConf2014] [F-4] At Rakuten, The Rakuten OpenStack Platform and B...[Rakuten TechConf2014] [F-4] At Rakuten, The Rakuten OpenStack Platform and B...
[Rakuten TechConf2014] [F-4] At Rakuten, The Rakuten OpenStack Platform and B...
 
OpenStack with OpenDaylight
OpenStack with OpenDaylightOpenStack with OpenDaylight
OpenStack with OpenDaylight
 
Composing services with Kubernetes
Composing services with KubernetesComposing services with Kubernetes
Composing services with Kubernetes
 

Mais de Hirofumi Ichihara (6)

OSS光と闇
OSS光と闇OSS光と闇
OSS光と闇
 
[RECAP] Blackholes and Wormholes: Understand and Troubleshoot the “Magic” of ...
[RECAP] Blackholes and Wormholes: Understand and Troubleshoot the “Magic” of ...[RECAP] Blackholes and Wormholes: Understand and Troubleshoot the “Magic” of ...
[RECAP] Blackholes and Wormholes: Understand and Troubleshoot the “Magic” of ...
 
Container Networking Deep Dive
Container Networking Deep DiveContainer Networking Deep Dive
Container Networking Deep Dive
 
Openconfigを用いたネットワーク機器操作
Openconfigを用いたネットワーク機器操作Openconfigを用いたネットワーク機器操作
Openconfigを用いたネットワーク機器操作
 
OpenStack Project Update Neutron Update
OpenStack Project Update Neutron UpdateOpenStack Project Update Neutron Update
OpenStack Project Update Neutron Update
 
Report of OpenStack Ops Meetup Palo Alto (in Japanese)
Report of OpenStack Ops Meetup Palo Alto (in Japanese)Report of OpenStack Ops Meetup Palo Alto (in Japanese)
Report of OpenStack Ops Meetup Palo Alto (in Japanese)
 

Último

Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Victor Rentea
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Victor Rentea
 

Último (20)

JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)Introduction to Multilingual Retrieval Augmented Generation (RAG)
Introduction to Multilingual Retrieval Augmented Generation (RAG)
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
AI+A11Y 11MAY2024 HYDERBAD GAAD 2024 - HelloA11Y (11 May 2024)
 

Neutron CI Run on Docker

  • 1. Copyright©2014 NTT corp. All Rights Reserved. Neutron CI Run on Docker Hirofumi Ichihara NTT
  • 2. 2Copyright©2014 NTT corp. All Rights Reserved. • Neutron has many vendor plugins • 38 vendor plugins and drivers in Neutron(include proposing) • Impossible to test all vendor plugins Neutron plugins http://stackalytics.com/report/driverlog?project_id=openstack%2Fneutron A10 Networks LBaaS Driver Arista Neutron ML2 Driver Big Switch Neutron ML2 Driver Big Switch Controller Plugin Brocade Neutron plugin Brocade Neutron ML2 Mechanism driver for VDX/VCS Switches Brocade Vyatta CSR1kv router service plugin Neutron ML2 Driver For Cisco Nexus Devices Cisco APIC ML2 Driver Cisco APIC L3 Service Cisco VPNaaS NetScaler LBaas driver Cloudbase Hyper-V Plugin Embrane Neutron Plugin Embrane LBaaS Driver Extreme Networks Plugin Freescale SDN ML2 Mechanism Driver IBM SDN-VE Plugin Juniper Networks plug-in for OpenStack Neutron Juniper Opencontrail plugin for Neutron resources Mellanox Neutron Plugin Mellanox Neutron ML2 Driver Mellanox Neutron ML2 SR-IOV Driver MidoNet Plugin NEC OpenFlow Plugin Nuage Networks Neutron Plugin Nuage Networks ML2 driver One Convergence NVSD Controller OpenDaylight ML2 MechanismDriver Meta Plugin Ryu OpenFlow Controller Plugin OpenFlow Agent PLUMgrid OpenStack Networking Suite Neutron Plugin Radware LBaaS Driver for Alteon. Tail-f NCS ML2 Mechanism Driver VMware NSX Network Virtualization Platform Plugin vArmour-Firewall
  • 3. 3Copyright©2014 NTT corp. All Rights Reserved. • Establish third party CI rules for Neutron • https://wiki.openstack.org/wiki/NeutronThirdPartyTesting Neutron Third Party CI System https://review.openstack.org/#/c/131905/
  • 4. 4Copyright©2014 NTT corp. All Rights Reserved. • Metaplugin • provided since Folsom version • allows you to use multiple plugins at the same time • Metaplugin CI System Neutron CI System for Metaplugin 1000 tests/month Max 3 parallels
  • 5. 5Copyright©2014 NTT corp. All Rights Reserved. • Test must be run in clean environment Neutron CI System Requirement Test Node start openstack OVS setting Package ENV setting install openstack run tests finish tests stop openstack Clean Node Clean Clean Clean OVS setting Package ENV setting start openstack install openstack fail to install or test Jenkins: http://jenkins-ci.org/
  • 6. 6Copyright©2014 NTT corp. All Rights Reserved. • Metaplugin CI System uses VM Neutron CI System with VM create VM start test VM install openstack OpenStack VM OpenStack VM OpenStack finish tests delete VM certain Public Cloud Service VM VM VM Jenkins: http://jenkins-ci.org/
  • 7. 7Copyright©2014 NTT corp. All Rights Reserved. • VM startup is very slow • VM performance is not good VM Problems But a VM is very cheap:)
  • 8. 8Copyright©2014 NTT corp. All Rights Reserved. • VM startup is very slow • VM performance is not good VM Problems But a VM is very cheap:) Really......?
  • 9. 9Copyright©2014 NTT corp. All Rights Reserved. Not cheap!
  • 10. 10Copyright©2014 NTT corp. All Rights Reserved. Let’s use container
  • 11. 11Copyright©2014 NTT corp. All Rights Reserved. Docker docker: https://www.docker.com
  • 12. 12Copyright©2014 NTT corp. All Rights Reserved. • Dockenstack • Run OpenStack on Docker • Use nova-docker project to run nova instances • Written by Paul Czarkowski, Eric Windisch • Provide to https://github.com/ewindisch/dockenstack OpenStack on Docker Container OpenStack instance instance
  • 13. 13Copyright©2014 NTT corp. All Rights Reserved. OpenStack on Docker Problems • Well known • Not support OpenvSwitch • Not support Cinder Volume • Devstack failed to • Reserve keystone port • install nova-docker • Restart docker • Nova-docker didn’t support Neutron ML2 Linuxbridge driver • Neutron failed to ip6tables
  • 14. 14Copyright©2014 NTT corp. All Rights Reserved. • OpenvSwitch • Select ML2 Linuxbridge as Neutron plugin • Cinder Volume • Don’t use volume • Reserve Keystone port ⇒ Bugfix #125740 • Install nova-docker ⇒ Bugfix #128746 • Restart docker • Replace command (Workaround) • start-stop-daemon --stop --pidfile "/var/run/docker.pid” • ML2 Linuxbridge driver ⇒ Bugfix #130520 • Don’t use ip6tables • Disable ipv6 in container(Workaround) • echo 1 > /proc/sys/net/ipv6/conf/default/disable_ipv6 OpenStack on Docker Run
  • 15. 15Copyright©2014 NTT corp. All Rights Reserved. • Jenkins runs shell script Jenkins Run #!/usr/bin/env bash set -e mkdir -p $BUILD_NUMBER/logs docker run -v $WORKSPACE/$BUILD_NUMBER/logs:/opt/stack/logs -- privileged $DOCKER_IMAGE $GERRIT_REFSPEC • Docker can bind mount a volume from the host • Storing log became very easy
  • 16. 16Copyright©2014 NTT corp. All Rights Reserved. • Jenkins detects test success inside container Jenkins Success
  • 17. 17Copyright©2014 NTT corp. All Rights Reserved. • Tempest Neutron API test is successful Neutron Test Result
  • 18. 18Copyright©2014 NTT corp. All Rights Reserved. • Jenkins detects test failure inside container Jenkins Failure
  • 19. 19Copyright©2014 NTT corp. All Rights Reserved. $ git clone -b neutron-ci https://github.com/hichihara/dockenstack.git $ cd dockenstack/dockenstack $ docker build . TRY
  • 20. 20Copyright©2014 NTT corp. All Rights Reserved. Contact ichihara.hirofumi@lab.ntt.co.jp