SlideShare a Scribd company logo
Onboarding session
Goutham Pacha Ravi
(gouthamr)
Rodrigo Barbieri
(ganso)
Victoria Martinez de la Cruz
(vkmc)
What is manila?
Our docs
● OpenStack Contributor Portal: https://www.openstack.org/community/
● OpenStack Contributor Guide: https://docs.openstack.org/contributors/
● Project Wiki pages → https://en.wikipedia.org/wiki/Manila
● Docs (general) → https://docs.openstack.org/manila/
● Docs (for devs) → https://docs.openstack.org/manila/latest/contributor/index.html
Get into the conversation
● General discussions for manila
○ IRC channel #openstack-manila
○ Don’t know how to use IRC? Ask now!
● Weekly meetings
○ Meeting agenda and details: https://wiki.openstack.org/wiki/Manila/Meetings
■ Want to discuss something? Add it to the agenda (don’t forget to add your name)
○ Thursdays 3pm UTC at #openstack-meeting-alt
Release schedule - Queens
● Complete schedule → https://releases.openstack.org/queens/schedule.html
● Blueprints: https://blueprints.launchpad.net/manila
● Specs: http://specs.openstack.org/openstack/manila-specs/
● Bugs: https://bugs.launchpad.net/manila
● Important dates
○ Milestones
○ Specs, what needs a spec?
○ Drivers
○ Feature proposal
○ Feature freeze
Related projects
● python-manilaclient → https://github.com/openstack/python-manilaclient
● manila-ui → https://github.com/openstack/manila-ui
● manila-image-elements → https://github.com/openstack/manila-image-elements
Development environment: accounts
● Contributor accounts → https://docs.openstack.org/infra/manual/developers.html
○ Launchpad ID
○ OpenStack Foundation profile/Gerrit ID
Things to remember
● Reviewing
○ All code/documentation contributions go through gerrit: review.openstack.org
○ Zuul (OpenStack CI) must approve the code/doc patch with a +1
○ 2 Core Reviewers must +2 the patch, and one of them will +W (Workflow) the patch when it is ready
to merge
● Conventions:
○ Commit message tags:
https://docs.openstack.org/manila/latest/contributor/commit_message_tags.html
○ Release notes (aka renos)
https://docs.openstack.org/manila/ocata/devref/adding_release_notes.html
How manila is consumed
- All major distributions include Manila
https://www.openstack.org/marketplace/distros/
- Backports
- All bugfixes are eligible to be backported to the last stable release, as long as they do not
affect the database (DB migrations) or the Manila API
- Manila adheres to the OpenStack stable branch policy
- “driverfixes” branches exist to allow backporting driver changes to unsupported branches, for
the benefit of distributions.
Development environment: Devstack
● Devstack
○ https://docs.openstack.org/devstack/latest/
○ https://docs.openstack.org/manila/latest/contributor/development-environment-devstack.html
○ Default config → Manila with the generic driver
○ Recommended setup → VM (8gb RAM, 50gb HD, 4 cores) with Ubuntu Xenial/Centos 7/OpenSUSE
DevStack configuration - “Generic” Driver
(DHSS=True)
[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
LIBS_FROM_GIT=python-manilaclient
enable_plugin manila git://git.openstack.org/openstack/manila
enable_plugin manila-ui https://git.openstack.org/openstack/manila-ui
DevStack configuration - CEPHFS Native Driver
(DHSS=False)
[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
LIBS_FROM_GIT=python-manilaclient
enable_plugin manila git://git.openstack.org/openstack/manila
enable_plugin manila-ui https://git.openstack.org/openstack/manila-ui
enable_plugin devstack-plugin-ceph git://git.openstack.org/openstack/devstack-plugin-ceph
ENABLE_CEPH_CINDER=True # ceph backend for cinder
ENABLE_CEPH_GLANCE=True # store images in ceph
ENABLE_CEPH_C_BAK=True # backup volumes to ceph
ENABLE_CEPH_NOVA=True # allow nova to use ceph resources
ENABLE_CEPH_MANILA=True # configure manila to use ceph native
# NFS Ganesha GW
MANILA_CEPH_DRIVER=cephfsnfs
Demo
DevStack / Manila / LVM Driver
DevStack configuration - LVM Driver (DHSS=False)
mkdir /opt/stack/data
truncate -s 100g /opt/stack/data/lvm-shares1-backing-file
truncate -s 100g /opt/stack/data/lvm-shares2-backing-file
sudo vgcreate lvm-shares1 $(sudo losetup -f --show /opt/stack/data/lvm-shares1-backing-file)
sudo vgcreate lvm-shares2 $(sudo losetup -f --show /opt/stack/data/lvm-shares2-backing-file)
DevStack configuration - LVM Driver (DHSS=False)
[[local|localrc]]
ADMIN_PASSWORD=secret
DATABASE_PASSWORD=$ADMIN_PASSWORD
RABBIT_PASSWORD=$ADMIN_PASSWORD
SERVICE_PASSWORD=$ADMIN_PASSWORD
LIBS_FROM_GIT=python-manilaclient
enable_plugin manila git://git.openstack.org/openstack/manila
enable_plugin manila-ui https://git.openstack.org/openstack/manila-ui
MANILA_MULTI_BACKEND=True
MANILA_BACKEND1_CONFIG_GROUP_NAME=vienna
MANILA_BACKEND2_CONFIG_GROUP_NAME=prague
MANILA_SHARE_BACKEND1_NAME=Vienna
MANILA_SHARE_BACKEND2_NAME=Prague
SHARE_DRIVER=manila.share.drivers.lvm.LVMShareDriver
MANILA_OPTGROUP_vienna_driver_handles_share_servers=False
MANILA_OPTGROUP_prague_driver_handles_share_servers=False
MANILA_OPTGROUP_vienna_lvm_share_volume_group=lvm-shares1
MANILA_OPTGROUP_prague_lvm_share_volume_group=lvm-shares2
# If you're running minimal
ENABLED_SERVICES=key,mysql,rabbit,tempest,manila,m-api,m-sch,m-shr,m-dat
Database and Message Queue
Updating your database:
$ manila-manage db sync
https://docs.openstack.org/manila/latest/cli/manila-manage.html
Inter-process RPC (Rabbit MQ)
The Manila API
● In a DevStack environment, by default, you’ll see the manila-api service run
under Apache, you can run the built-in mod-wsgi app instead, by using the
MANILA_USE_MOD_WSGI option in your devstack’s local.conf
The Manila API
● All APIs are core APIs
● The API is micro-versioned
○ Backwards Compatibility
○ https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.html
● SDK Support:
○ Supported by the Manila community:
■ Python-manilaclient
○ Supported by other communities
■ Gophercloud - https://github.com/rackspace/gophercloud
■ Openstack4j - http://www.openstack4j.com
■ ...
Unit tests
● Run them always before submitting any change!
● Python 2.7 → $ tox -e py27
● Python 3.5 → $ tox -e py35
● PEP8 → $ tox -e pep8
● Coverage → tox -e cover
Tempest (integration) tests
● Need to be run whenever there are changes to API behavior
● $ tox -eall-plugin <path-to-test>
CI
● Every in-tree driver needs a CI
● If the CI does not exist, a new driver is not
merged
● If the CI is not maintained (i.e fails on all
runs) the driver is marked as
“unsupported”
Where we need help
● New features/bug fixes always welcome
● Code Reviewers
● Driver Maintainers
○ HDFS
○ GlusterFS
○ Container driver
● Documentation
Need help?
● Join us in #openstack-manila
● Weekly meeting: Thursdays 3pm UTC in #openstack-meeting-alt
● Contact:
○ Ben Swartzlander, PTL (bswartz)
○ Core Reviewers → https://review.openstack.org/#/admin/groups/213,members
Q&A

More Related Content

What's hot

Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Samsung Open Source Group
 
CfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
CfgMgmtCamp 2015 - Managing the Content Lifecycle with KatelloCfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
CfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
Stephen Benjamin
 
了解 Qt
了解 Qt了解 Qt
了解 Qt
Chi Zhang
 
Docker off the grid
Docker off the gridDocker off the grid
Docker off the grid
Mirantis IT Russia
 
Red Hat Container Development Kit
Red Hat Container Development KitRed Hat Container Development Kit
Red Hat Container Development Kit
Lalatendu Mohanty
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Samsung Open Source Group
 
blueMarine Sailing with NetBeans Platform
blueMarine Sailing with NetBeans PlatformblueMarine Sailing with NetBeans Platform
blueMarine Sailing with NetBeans Platform
Fabrizio Giudici
 
OpenStack Cinder On-Boarding Room - Vancouver Summit 2018
OpenStack Cinder On-Boarding Room - Vancouver Summit 2018OpenStack Cinder On-Boarding Room - Vancouver Summit 2018
OpenStack Cinder On-Boarding Room - Vancouver Summit 2018
Jay Bryant
 
Delivering a bleeding edge community-led openstack distribution: RDO
Delivering a bleeding edge community-led openstack distribution: RDO Delivering a bleeding edge community-led openstack distribution: RDO
Delivering a bleeding edge community-led openstack distribution: RDO
Chandan Kumar
 
What's new in MySQL 5.6
What's new in MySQL 5.6What's new in MySQL 5.6
What's new in MySQL 5.6
Shlomi Noach
 
Kvm forum 2013 - future integration points for oVirt storage
Kvm forum 2013 - future integration points for oVirt storageKvm forum 2013 - future integration points for oVirt storage
Kvm forum 2013 - future integration points for oVirt storage
Sean Cohen
 
Development Boards for Tizen IoT
Development Boards for Tizen IoTDevelopment Boards for Tizen IoT
Development Boards for Tizen IoT
Samsung Open Source Group
 
Docker. General overview
Docker. General overviewDocker. General overview
Docker. General overview
Mirantis IT Russia
 
OpenNebulaConf 2013 - OpenNebula in a Multi-Customer-Environment by Bernd Erk
OpenNebulaConf 2013 - OpenNebula in a Multi-Customer-Environment by Bernd ErkOpenNebulaConf 2013 - OpenNebula in a Multi-Customer-Environment by Bernd Erk
OpenNebulaConf 2013 - OpenNebula in a Multi-Customer-Environment by Bernd Erk
OpenNebula Project
 
Framework for IoT Interoperability
Framework for IoT InteroperabilityFramework for IoT Interoperability
Framework for IoT Interoperability
Samsung Open Source Group
 
qt-project.org and Qt 5
qt-project.org and Qt 5qt-project.org and Qt 5
qt-project.org and Qt 5
thiagomacieira
 
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebula Project
 
webthing-floss-iot-20180607rzr
webthing-floss-iot-20180607rzrwebthing-floss-iot-20180607rzr
webthing-floss-iot-20180607rzr
Phil www.rzr.online.fr
 
Introduction to oVirt
Introduction to oVirtIntroduction to oVirt
Introduction to oVirt
All Things Open
 
May 2013 HUG: Building common denominator of Hadoop distributions with Bigtop
May 2013 HUG: Building common denominator of Hadoop distributions with BigtopMay 2013 HUG: Building common denominator of Hadoop distributions with Bigtop
May 2013 HUG: Building common denominator of Hadoop distributions with Bigtop
Yahoo Developer Network
 

What's hot (20)

Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT DevicesTizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
Tizen RT: A Lightweight RTOS Platform for Low-End IoT Devices
 
CfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
CfgMgmtCamp 2015 - Managing the Content Lifecycle with KatelloCfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
CfgMgmtCamp 2015 - Managing the Content Lifecycle with Katello
 
了解 Qt
了解 Qt了解 Qt
了解 Qt
 
Docker off the grid
Docker off the gridDocker off the grid
Docker off the grid
 
Red Hat Container Development Kit
Red Hat Container Development KitRed Hat Container Development Kit
Red Hat Container Development Kit
 
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under LinuxPractical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
Practical Guide to Run an IEEE 802.15.4 Network with 6LoWPAN Under Linux
 
blueMarine Sailing with NetBeans Platform
blueMarine Sailing with NetBeans PlatformblueMarine Sailing with NetBeans Platform
blueMarine Sailing with NetBeans Platform
 
OpenStack Cinder On-Boarding Room - Vancouver Summit 2018
OpenStack Cinder On-Boarding Room - Vancouver Summit 2018OpenStack Cinder On-Boarding Room - Vancouver Summit 2018
OpenStack Cinder On-Boarding Room - Vancouver Summit 2018
 
Delivering a bleeding edge community-led openstack distribution: RDO
Delivering a bleeding edge community-led openstack distribution: RDO Delivering a bleeding edge community-led openstack distribution: RDO
Delivering a bleeding edge community-led openstack distribution: RDO
 
What's new in MySQL 5.6
What's new in MySQL 5.6What's new in MySQL 5.6
What's new in MySQL 5.6
 
Kvm forum 2013 - future integration points for oVirt storage
Kvm forum 2013 - future integration points for oVirt storageKvm forum 2013 - future integration points for oVirt storage
Kvm forum 2013 - future integration points for oVirt storage
 
Development Boards for Tizen IoT
Development Boards for Tizen IoTDevelopment Boards for Tizen IoT
Development Boards for Tizen IoT
 
Docker. General overview
Docker. General overviewDocker. General overview
Docker. General overview
 
OpenNebulaConf 2013 - OpenNebula in a Multi-Customer-Environment by Bernd Erk
OpenNebulaConf 2013 - OpenNebula in a Multi-Customer-Environment by Bernd ErkOpenNebulaConf 2013 - OpenNebula in a Multi-Customer-Environment by Bernd Erk
OpenNebulaConf 2013 - OpenNebula in a Multi-Customer-Environment by Bernd Erk
 
Framework for IoT Interoperability
Framework for IoT InteroperabilityFramework for IoT Interoperability
Framework for IoT Interoperability
 
qt-project.org and Qt 5
qt-project.org and Qt 5qt-project.org and Qt 5
qt-project.org and Qt 5
 
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
OpenNebulaConf 2016 - OpenNebula 5.0 Highlights and Beyond by Ruben S. Monter...
 
webthing-floss-iot-20180607rzr
webthing-floss-iot-20180607rzrwebthing-floss-iot-20180607rzr
webthing-floss-iot-20180607rzr
 
Introduction to oVirt
Introduction to oVirtIntroduction to oVirt
Introduction to oVirt
 
May 2013 HUG: Building common denominator of Hadoop distributions with Bigtop
May 2013 HUG: Building common denominator of Hadoop distributions with BigtopMay 2013 HUG: Building common denominator of Hadoop distributions with Bigtop
May 2013 HUG: Building common denominator of Hadoop distributions with Bigtop
 

Similar to Manila project onboarding - OpenStack Summit/Forum Sydney 2017

Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
TomBarron
 
Manila Project Onboarding openstack-berlin-summit-2018
Manila Project Onboarding openstack-berlin-summit-2018Manila Project Onboarding openstack-berlin-summit-2018
Manila Project Onboarding openstack-berlin-summit-2018
TomBarron
 
Manila Project Onboarding - openstack-berlin-summit-2018
Manila Project Onboarding - openstack-berlin-summit-2018Manila Project Onboarding - openstack-berlin-summit-2018
Manila Project Onboarding - openstack-berlin-summit-2018
TomBarron
 
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
OpenShift Origin
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
Marcelo Ochoa
 
Manila, an update from Liberty, OpenStack Summit - Tokyo
Manila, an update from Liberty, OpenStack Summit - TokyoManila, an update from Liberty, OpenStack Summit - Tokyo
Manila, an update from Liberty, OpenStack Summit - Tokyo
Sean Cohen
 
Hawkular overview
Hawkular overviewHawkular overview
Hawkular overview
jbugkorea
 
Manila project update openstack-berlin-summit-2018
Manila project update openstack-berlin-summit-2018Manila project update openstack-berlin-summit-2018
Manila project update openstack-berlin-summit-2018
TomBarron
 
Learn OpenStack from trystack.cn
Learn OpenStack from trystack.cnLearn OpenStack from trystack.cn
Learn OpenStack from trystack.cn
OpenCity Community
 
Manila-An Update from Liberty
Manila-An Update from LibertyManila-An Update from Liberty
Manila-An Update from Liberty
akshai_sarathy
 
Mule soft meetup_chandigarh_#7_25_sept_2021
Mule soft meetup_chandigarh_#7_25_sept_2021Mule soft meetup_chandigarh_#7_25_sept_2021
Mule soft meetup_chandigarh_#7_25_sept_2021
Lalit Panwar
 
Django deployment with PaaS
Django deployment with PaaSDjango deployment with PaaS
Django deployment with PaaS
Appsembler
 
The elastic stack on docker
The elastic stack on dockerThe elastic stack on docker
The elastic stack on docker
SmartWave
 
Use open source software to develop ideas at work
Use open source software to develop ideas at workUse open source software to develop ideas at work
Use open source software to develop ideas at work
Sammy Fung
 
Distro Recipes 2013 : Introduction to Arch Linux: a simple, rolling-release d...
Distro Recipes 2013 : Introduction to Arch Linux: a simple, rolling-release d...Distro Recipes 2013 : Introduction to Arch Linux: a simple, rolling-release d...
Distro Recipes 2013 : Introduction to Arch Linux: a simple, rolling-release d...
Anne Nicolas
 
3-2-1 Action! Running OpenStack Shared File System Service in Production
3-2-1 Action! Running OpenStack Shared File System Service in Production3-2-1 Action! Running OpenStack Shared File System Service in Production
3-2-1 Action! Running OpenStack Shared File System Service in Production
Sean Cohen
 
Docker and-containers-for-development-and-deployment-scale12x
Docker and-containers-for-development-and-deployment-scale12xDocker and-containers-for-development-and-deployment-scale12x
Docker and-containers-for-development-and-deployment-scale12x
rkr10
 
OSMC 2013 | Current State of Icinga by Icinga Team
OSMC 2013 | Current State of Icinga by Icinga TeamOSMC 2013 | Current State of Icinga by Icinga Team
OSMC 2013 | Current State of Icinga by Icinga Team
NETWAYS
 
Using Docker Platform to Provide Services
Using Docker Platform to Provide ServicesUsing Docker Platform to Provide Services
Using Docker Platform to Provide Services
GLC Networks
 
Introduction to containers
Introduction to containersIntroduction to containers
Introduction to containers
Nitish Jadia
 

Similar to Manila project onboarding - OpenStack Summit/Forum Sydney 2017 (20)

Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
Manila Project Onboarding - Denver Open Infrastructure Summit - May 2019
 
Manila Project Onboarding openstack-berlin-summit-2018
Manila Project Onboarding openstack-berlin-summit-2018Manila Project Onboarding openstack-berlin-summit-2018
Manila Project Onboarding openstack-berlin-summit-2018
 
Manila Project Onboarding - openstack-berlin-summit-2018
Manila Project Onboarding - openstack-berlin-summit-2018Manila Project Onboarding - openstack-berlin-summit-2018
Manila Project Onboarding - openstack-berlin-summit-2018
 
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
Extending OpenShift Origin: Build Your Own Cartridge with Bill DeCoste of Red...
 
Docker introduction
Docker introductionDocker introduction
Docker introduction
 
Manila, an update from Liberty, OpenStack Summit - Tokyo
Manila, an update from Liberty, OpenStack Summit - TokyoManila, an update from Liberty, OpenStack Summit - Tokyo
Manila, an update from Liberty, OpenStack Summit - Tokyo
 
Hawkular overview
Hawkular overviewHawkular overview
Hawkular overview
 
Manila project update openstack-berlin-summit-2018
Manila project update openstack-berlin-summit-2018Manila project update openstack-berlin-summit-2018
Manila project update openstack-berlin-summit-2018
 
Learn OpenStack from trystack.cn
Learn OpenStack from trystack.cnLearn OpenStack from trystack.cn
Learn OpenStack from trystack.cn
 
Manila-An Update from Liberty
Manila-An Update from LibertyManila-An Update from Liberty
Manila-An Update from Liberty
 
Mule soft meetup_chandigarh_#7_25_sept_2021
Mule soft meetup_chandigarh_#7_25_sept_2021Mule soft meetup_chandigarh_#7_25_sept_2021
Mule soft meetup_chandigarh_#7_25_sept_2021
 
Django deployment with PaaS
Django deployment with PaaSDjango deployment with PaaS
Django deployment with PaaS
 
The elastic stack on docker
The elastic stack on dockerThe elastic stack on docker
The elastic stack on docker
 
Use open source software to develop ideas at work
Use open source software to develop ideas at workUse open source software to develop ideas at work
Use open source software to develop ideas at work
 
Distro Recipes 2013 : Introduction to Arch Linux: a simple, rolling-release d...
Distro Recipes 2013 : Introduction to Arch Linux: a simple, rolling-release d...Distro Recipes 2013 : Introduction to Arch Linux: a simple, rolling-release d...
Distro Recipes 2013 : Introduction to Arch Linux: a simple, rolling-release d...
 
3-2-1 Action! Running OpenStack Shared File System Service in Production
3-2-1 Action! Running OpenStack Shared File System Service in Production3-2-1 Action! Running OpenStack Shared File System Service in Production
3-2-1 Action! Running OpenStack Shared File System Service in Production
 
Docker and-containers-for-development-and-deployment-scale12x
Docker and-containers-for-development-and-deployment-scale12xDocker and-containers-for-development-and-deployment-scale12x
Docker and-containers-for-development-and-deployment-scale12x
 
OSMC 2013 | Current State of Icinga by Icinga Team
OSMC 2013 | Current State of Icinga by Icinga TeamOSMC 2013 | Current State of Icinga by Icinga Team
OSMC 2013 | Current State of Icinga by Icinga Team
 
Using Docker Platform to Provide Services
Using Docker Platform to Provide ServicesUsing Docker Platform to Provide Services
Using Docker Platform to Provide Services
 
Introduction to containers
Introduction to containersIntroduction to containers
Introduction to containers
 

Recently uploaded

Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
shyamraj55
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
Brandon Minnick, MBA
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
Kari Kakkonen
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
tolgahangng
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
Zilliz
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
Ivanti
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
Wouter Lemaire
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
Zilliz
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
Daiki Mogmet Ito
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
kumardaparthi1024
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
Edge AI and Vision Alliance
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
FODUU
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
panagenda
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
IndexBug
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 

Recently uploaded (20)

Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with SlackLet's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
Let's Integrate MuleSoft RPA, COMPOSER, APM with AWS IDP along with Slack
 
Choosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptxChoosing The Best AWS Service For Your Website + API.pptx
Choosing The Best AWS Service For Your Website + API.pptx
 
Climate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing DaysClimate Impact of Software Testing at Nordic Testing Days
Climate Impact of Software Testing at Nordic Testing Days
 
Serial Arm Control in Real Time Presentation
Serial Arm Control in Real Time PresentationSerial Arm Control in Real Time Presentation
Serial Arm Control in Real Time Presentation
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
Infrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI modelsInfrastructure Challenges in Scaling RAG with Custom AI models
Infrastructure Challenges in Scaling RAG with Custom AI models
 
June Patch Tuesday
June Patch TuesdayJune Patch Tuesday
June Patch Tuesday
 
UI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentationUI5 Controls simplified - UI5con2024 presentation
UI5 Controls simplified - UI5con2024 presentation
 
Full-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalizationFull-RAG: A modern architecture for hyper-personalization
Full-RAG: A modern architecture for hyper-personalization
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
How to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For FlutterHow to use Firebase Data Connect For Flutter
How to use Firebase Data Connect For Flutter
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
GenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizationsGenAI Pilot Implementation in the organizations
GenAI Pilot Implementation in the organizations
 
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
“Building and Scaling AI Applications with the Nx AI Manager,” a Presentation...
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Things to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUUThings to Consider When Choosing a Website Developer for your Website | FODUU
Things to Consider When Choosing a Website Developer for your Website | FODUU
 
HCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAUHCL Notes and Domino License Cost Reduction in the World of DLAU
HCL Notes and Domino License Cost Reduction in the World of DLAU
 
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial IntelligenceAI 101: An Introduction to the Basics and Impact of Artificial Intelligence
AI 101: An Introduction to the Basics and Impact of Artificial Intelligence
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 

Manila project onboarding - OpenStack Summit/Forum Sydney 2017

  • 1. Onboarding session Goutham Pacha Ravi (gouthamr) Rodrigo Barbieri (ganso) Victoria Martinez de la Cruz (vkmc)
  • 3. Our docs ● OpenStack Contributor Portal: https://www.openstack.org/community/ ● OpenStack Contributor Guide: https://docs.openstack.org/contributors/ ● Project Wiki pages → https://en.wikipedia.org/wiki/Manila ● Docs (general) → https://docs.openstack.org/manila/ ● Docs (for devs) → https://docs.openstack.org/manila/latest/contributor/index.html
  • 4. Get into the conversation ● General discussions for manila ○ IRC channel #openstack-manila ○ Don’t know how to use IRC? Ask now! ● Weekly meetings ○ Meeting agenda and details: https://wiki.openstack.org/wiki/Manila/Meetings ■ Want to discuss something? Add it to the agenda (don’t forget to add your name) ○ Thursdays 3pm UTC at #openstack-meeting-alt
  • 5. Release schedule - Queens ● Complete schedule → https://releases.openstack.org/queens/schedule.html ● Blueprints: https://blueprints.launchpad.net/manila ● Specs: http://specs.openstack.org/openstack/manila-specs/ ● Bugs: https://bugs.launchpad.net/manila ● Important dates ○ Milestones ○ Specs, what needs a spec? ○ Drivers ○ Feature proposal ○ Feature freeze
  • 6. Related projects ● python-manilaclient → https://github.com/openstack/python-manilaclient ● manila-ui → https://github.com/openstack/manila-ui ● manila-image-elements → https://github.com/openstack/manila-image-elements
  • 7. Development environment: accounts ● Contributor accounts → https://docs.openstack.org/infra/manual/developers.html ○ Launchpad ID ○ OpenStack Foundation profile/Gerrit ID
  • 8. Things to remember ● Reviewing ○ All code/documentation contributions go through gerrit: review.openstack.org ○ Zuul (OpenStack CI) must approve the code/doc patch with a +1 ○ 2 Core Reviewers must +2 the patch, and one of them will +W (Workflow) the patch when it is ready to merge ● Conventions: ○ Commit message tags: https://docs.openstack.org/manila/latest/contributor/commit_message_tags.html ○ Release notes (aka renos) https://docs.openstack.org/manila/ocata/devref/adding_release_notes.html
  • 9. How manila is consumed - All major distributions include Manila https://www.openstack.org/marketplace/distros/ - Backports - All bugfixes are eligible to be backported to the last stable release, as long as they do not affect the database (DB migrations) or the Manila API - Manila adheres to the OpenStack stable branch policy - “driverfixes” branches exist to allow backporting driver changes to unsupported branches, for the benefit of distributions.
  • 10. Development environment: Devstack ● Devstack ○ https://docs.openstack.org/devstack/latest/ ○ https://docs.openstack.org/manila/latest/contributor/development-environment-devstack.html ○ Default config → Manila with the generic driver ○ Recommended setup → VM (8gb RAM, 50gb HD, 4 cores) with Ubuntu Xenial/Centos 7/OpenSUSE
  • 11. DevStack configuration - “Generic” Driver (DHSS=True) [local|localrc]] ADMIN_PASSWORD=secret DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD LIBS_FROM_GIT=python-manilaclient enable_plugin manila git://git.openstack.org/openstack/manila enable_plugin manila-ui https://git.openstack.org/openstack/manila-ui
  • 12. DevStack configuration - CEPHFS Native Driver (DHSS=False) [local|localrc]] ADMIN_PASSWORD=secret DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD LIBS_FROM_GIT=python-manilaclient enable_plugin manila git://git.openstack.org/openstack/manila enable_plugin manila-ui https://git.openstack.org/openstack/manila-ui enable_plugin devstack-plugin-ceph git://git.openstack.org/openstack/devstack-plugin-ceph ENABLE_CEPH_CINDER=True # ceph backend for cinder ENABLE_CEPH_GLANCE=True # store images in ceph ENABLE_CEPH_C_BAK=True # backup volumes to ceph ENABLE_CEPH_NOVA=True # allow nova to use ceph resources ENABLE_CEPH_MANILA=True # configure manila to use ceph native # NFS Ganesha GW MANILA_CEPH_DRIVER=cephfsnfs
  • 13. Demo DevStack / Manila / LVM Driver
  • 14. DevStack configuration - LVM Driver (DHSS=False) mkdir /opt/stack/data truncate -s 100g /opt/stack/data/lvm-shares1-backing-file truncate -s 100g /opt/stack/data/lvm-shares2-backing-file sudo vgcreate lvm-shares1 $(sudo losetup -f --show /opt/stack/data/lvm-shares1-backing-file) sudo vgcreate lvm-shares2 $(sudo losetup -f --show /opt/stack/data/lvm-shares2-backing-file)
  • 15. DevStack configuration - LVM Driver (DHSS=False) [[local|localrc]] ADMIN_PASSWORD=secret DATABASE_PASSWORD=$ADMIN_PASSWORD RABBIT_PASSWORD=$ADMIN_PASSWORD SERVICE_PASSWORD=$ADMIN_PASSWORD LIBS_FROM_GIT=python-manilaclient enable_plugin manila git://git.openstack.org/openstack/manila enable_plugin manila-ui https://git.openstack.org/openstack/manila-ui MANILA_MULTI_BACKEND=True MANILA_BACKEND1_CONFIG_GROUP_NAME=vienna MANILA_BACKEND2_CONFIG_GROUP_NAME=prague MANILA_SHARE_BACKEND1_NAME=Vienna MANILA_SHARE_BACKEND2_NAME=Prague SHARE_DRIVER=manila.share.drivers.lvm.LVMShareDriver MANILA_OPTGROUP_vienna_driver_handles_share_servers=False MANILA_OPTGROUP_prague_driver_handles_share_servers=False MANILA_OPTGROUP_vienna_lvm_share_volume_group=lvm-shares1 MANILA_OPTGROUP_prague_lvm_share_volume_group=lvm-shares2 # If you're running minimal ENABLED_SERVICES=key,mysql,rabbit,tempest,manila,m-api,m-sch,m-shr,m-dat
  • 16. Database and Message Queue Updating your database: $ manila-manage db sync https://docs.openstack.org/manila/latest/cli/manila-manage.html Inter-process RPC (Rabbit MQ)
  • 17. The Manila API ● In a DevStack environment, by default, you’ll see the manila-api service run under Apache, you can run the built-in mod-wsgi app instead, by using the MANILA_USE_MOD_WSGI option in your devstack’s local.conf
  • 18. The Manila API ● All APIs are core APIs ● The API is micro-versioned ○ Backwards Compatibility ○ https://docs.openstack.org/manila/latest/contributor/api_microversion_dev.html ● SDK Support: ○ Supported by the Manila community: ■ Python-manilaclient ○ Supported by other communities ■ Gophercloud - https://github.com/rackspace/gophercloud ■ Openstack4j - http://www.openstack4j.com ■ ...
  • 19. Unit tests ● Run them always before submitting any change! ● Python 2.7 → $ tox -e py27 ● Python 3.5 → $ tox -e py35 ● PEP8 → $ tox -e pep8 ● Coverage → tox -e cover
  • 20. Tempest (integration) tests ● Need to be run whenever there are changes to API behavior ● $ tox -eall-plugin <path-to-test>
  • 21. CI ● Every in-tree driver needs a CI ● If the CI does not exist, a new driver is not merged ● If the CI is not maintained (i.e fails on all runs) the driver is marked as “unsupported”
  • 22. Where we need help ● New features/bug fixes always welcome ● Code Reviewers ● Driver Maintainers ○ HDFS ○ GlusterFS ○ Container driver ● Documentation
  • 23. Need help? ● Join us in #openstack-manila ● Weekly meeting: Thursdays 3pm UTC in #openstack-meeting-alt ● Contact: ○ Ben Swartzlander, PTL (bswartz) ○ Core Reviewers → https://review.openstack.org/#/admin/groups/213,members
  • 24. Q&A