SlideShare a Scribd company logo
1 of 17
Download to read offline
OpenStack Community Goals
~これまでの状況と今後~
Akihiro Motoki
Jan 18, 2019
Japan OpenStack Users Group 41st meetup
Who am I ?
 Akihiro Motoki / 元木 顕弘
– IRC: amotoki, Twitter: @ritchey98
– 以前は IPルータ、広域Ethernet装置、迷惑メールフィルタ、
OpenFlow 関連技術などの研究開発をしていました。
 OpenStack Upstream Developer
– Neutron: Core reviewer + drivers team
– Core reviewer of Horizon, OpenStack Client (OSC), I18n
– API-SIG, OpenStack SDK ...
 OpenStack Operator
– (でした、ちょっと前まで)
 日本OpenStackユーザー会
– 勉強会企画チーム、ボードメンバー
Agenda
 What’s “Community Goals” ?
 Community Goals in Past Releases
 Community Goals in Stein
 How are they identified and defined ?
 Candidates for “Train” release
What is “Community Goals”?
 OpenStack プロジェクト全体としてリリースごとに取り組むテーマ
 OpenStack 全体として一定レベルの一貫性や User Experience を
提供していく取り組み
– ユーザーやオペレーターは OpenStack を一つのプラットフォームと見ている
 当初は、プロジェクト毎の実装の差異を吸収する側面が強かったが、
最近は運用者視点でのゴール設定が行われてきている。
Community Goals in Past Releases
https://governance.openstack.org/tc/goals/index.html#release-cycles
 Ocata
– Remove Copies of Incubated Oslo Code
 Pike
– Control Plane API endpoints deployment via WSGI
– Support Python 3.5
 Queens
– Register and Document Policy in Code
– Split Tempest Plugins into Separate Repos/Projects
 Rocky
– Enable mutable configuration
– Remove use of mox/mox3 testing
API endpoints with WSGI
 WSGI = Web Server Gateway Interface
– Python で Web Server とアプリケーションを接続するための標準的なインターフェース
 WSGI 対応とすることで、通常のウェブサーバー側の機能を活用し
て、API サーバーを提供できる。
– これまでは eventlet を使った実装のみだった
– 様々な Web Server を使って API エンドポイントを提供できる
– Apache だと mod-wsgi モジュールを使う
 コア機能ではほとんどが対応
– Nova, Cinder, Keystone, Glance, Placement
– Neutron は Rocky で対応 (experimental)
$ ¥ls -1 /etc/apache2/sites-enabled/
cinder-wsgi.conf
glance-wsgi-api.conf
horizon.conf
keystone-wsgi-admin.conf
keystone-wsgi-public.conf
nova-api-wsgi.conf
placement-api.conf
static.conf
$ less /etc/apache2/sites-enabled/nova-api-wsgi.conf
ProxyPass "/compute" "unix:/var/run/uwsgi/nova-api-wsgi.socket|uwsgi://uwsgi-uds-nova-api-wsgi/"
retry=0
$ ps auxw | grep nova-api
tipica 5730 0.0 0.1 100384 14048 ? Ss Jan17 0:04 nova-api-metauWSGI master
tipica 5732 0.0 1.3 304788 108120 ? S Jan17 0:02 nova-api-metauWSGI worker 1
tipica 5733 0.0 1.3 305772 109076 ? S Jan17 0:02 nova-api-metauWSGI worker 2
tipica 5734 0.0 0.0 100384 4900 ? S Jan17 0:00 nova-api-metauWSGI http 1
tipica 22563 0.0 0.0 16576 2052 pts/0 S+ 13:46 0:00 grep --color=auto nova-api
tipica 26485 0.0 0.1 100384 14044 ? Ss Jan17 0:04 nova-apiuWSGI master
tipica 26487 0.0 1.6 337656 134944 ? S Jan17 0:08 nova-apiuWSGI worker 1
tipica 26488 0.0 1.6 335480 133016 ? S Jan17 0:08 nova-apiuWSGI worker 2
Policy in Code
Policy: API の RBAC (Role based Access Control) の仕組み
これまではデフォルトの policy.json で定義 (manual maintenace)
Configuration と同様に Policy もコードの中で定義
– オペレーターは差分のみを policy.json (or policy.yaml) に定義
それをベースに Policy Reference も自動生成
これに伴い ”default” ルール (fallback rule) の Cleanup が行われ、
Policy 定義がわかりやすくなった
(直接関係ないが) YAML でのポリシー定義も可能に。
Policy-in-Code (Cont.)
Nova Examples
– https://docs.openstack.org/nova/latest/configuration/policy.html
– https://docs.openstack.org/nova/latest/configuration/sample-policy.html
差分のみの定義の例
$ less /etc/neutron/policy.json
{
"context_is_admin": "role:admin or user_name:neutron"
}
Community Goals for Stein
Run under Python3 by default
Support pre-upgrade checks
Stein: Python3 by default
Python2 は Jan 1, 2020 で Python Upstream で
のサポートが終了する。
OpenStack としてもそれまでに Python3 で完全に
動作するようにしていく方針
Stein サイクルでは integration tests, functional
tests, unit tests を python3 で動かすようにする
– Python2 のテストも必要なものについては残る
– DevStack も USE_PYTHON3 のオプションが追加。
– 多くのプロジェクトが DevStack で Python3 で動作中
Stein: pre-upgrade check
アップグレード時の注意点をチェックするツール
これまでは Release Notes の Upgrade や Deprecation
をオペレーターがチェックするしかなかった。
機械的にチェックする仕組みがほしい
例: nova-status
– https://github.com/openstack/nova/blob/master/nova/c
md/status.py
$ nova-status upgrade check
+-------------------------------------------------------------------+
| Upgrade Check Results |
+-------------------------------------------------------------------+
| Check: Cells v2 |
| Result: Success |
| Details: None |
+-------------------------------------------------------------------+
| Check: Placement API |
| Result: Success |
| Details: None |
+-------------------------------------------------------------------+
| Check: Resource Providers |
| Result: Warning |
| Details: There are no compute resource providers in the Placement |
| service but there are 1 compute nodes in the deployment. |
| This means no compute nodes are reporting into the |
| Placement service and need to be upgraded and/or fixed. |
| See |
| https://docs.openstack.org/nova/latest/user/placement.html |
| for more details. |
+------------------------------------------------------------+
….
How are they identified and defined?
 Summit の Forum で議論
– 項目の頭出し
– Developer & Operator からのフィードバック
 次の開発サイクル開始までの間で具体化
 前の開発サイクルの終盤に Technical Committee 主導で、次のサ
イクルのテーマを決定
 当初は Developer 主導のテーマが多かった
 Forum での議論の中で Operator に見えるテーマをもっと設定して
ほしいという要望があり、Operator にメリットのあるテーマが設定
されるようになって来ている。
Candidates for “Train” release
Berlin Smmit での議論
– https://etherpad.openstack.org/p/BER-t-series-goals
人気があったもの
– Project Resource Deletion
– Finish moving legacy python-*client to python-
openstackclient
– Ensure all projects pass project-id
 + Ensure all projects use “service-token” when calling one
another API with incoming token
“Train” release
 https://docs.openstack.org/install-guide/common/glossary.html#term-train
Train
The code name for the twentieth release of OpenStack. The OpenStack Infrastructure Summit will take place in
Denver, Colorado, US.
Two Project Team Gathering meetings in Denver were held at a hotel next to the train line from downtown to the
airport. The crossing signals there had some sort of malfunction in the past causing them to not stop the cars when
a train was coming properly. As a result the trains were required to blow their horns when passing through that area.
Obviously staying in a hotel, by trains that are blowing their horns 24/7 was less than ideal. As a result, many jokes
popped up about Denver and trains - and thus the release is called train.
OpenStack の 20 番目のリリースのコード名。 OpenStack Infrastructure サミットは、アメリカのコロラド州デ
ンバーで開催予定である。
デンバーでの 2 回の Project Team Gathering (PTG) は、ダウンタウンと空港を結ぶ電車の路線のすぐ横の
ホテルで開催された。そこの踏切の信号機は以前はイカれていて、電車が来たときでも車が適切に停止しな
い状態だった。そのため、電車はそこを通過する際に汽笛をけたたましく鳴らす必要性に迫られた。想像に難
くないが、24時間年中無休で汽笛を鳴らし続ける電車のおかげで、ホテルでの滞在は理想的とは言い難いも
のだった。その結果、デンバーと電車に関するジョークがたくさん生まれ、このリリースは Train と呼ばれること
になった。
Thank you !!

More Related Content

Similar to 20190118-josug-open stack-community-goals

Reactive Workflow Argo Eventsの紹介
Reactive Workflow Argo Eventsの紹介Reactive Workflow Argo Eventsの紹介
Reactive Workflow Argo Eventsの紹介Daisuke Taniwaki
 
What's new in open shift container platform 4.7 japan_20210318
What's new in open shift container platform 4.7 japan_20210318What's new in open shift container platform 4.7 japan_20210318
What's new in open shift container platform 4.7 japan_20210318Yuhki Hanada
 
OpenStackをさらに”使う”技術 概要と基礎操作
OpenStackをさらに”使う”技術 概要と基礎操作OpenStackをさらに”使う”技術 概要と基礎操作
OpenStackをさらに”使う”技術 概要と基礎操作irix_jp
 
Quick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αQuick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αTakeshi Yamamuro
 
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話Yuki Takahashi
 
Cisco ACI and OpenStack - Group-based Policy (GBP) & OpFlex
Cisco ACI and OpenStack - Group-based Policy (GBP) & OpFlexCisco ACI and OpenStack - Group-based Policy (GBP) & OpFlex
Cisco ACI and OpenStack - Group-based Policy (GBP) & OpFlexTakao Setaka
 
デバイスパッケージを開発してみた @沖縄オープンラボ
デバイスパッケージを開発してみた @沖縄オープンラボデバイスパッケージを開発してみた @沖縄オープンラボ
デバイスパッケージを開発してみた @沖縄オープンラボTakao Setaka
 
Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Kazushi Kamegawa
 
Neutron Icehouse Update (Japanese)
Neutron Icehouse Update (Japanese)Neutron Icehouse Update (Japanese)
Neutron Icehouse Update (Japanese)Akihiro Motoki
 
OpenStackアップストリーム活動実践 中級
OpenStackアップストリーム活動実践 中級OpenStackアップストリーム活動実践 中級
OpenStackアップストリーム活動実践 中級Takashi Natsume
 
Pivotal Application Service とProject riff
Pivotal Application Service とProject riffPivotal Application Service とProject riff
Pivotal Application Service とProject riffTakayuki Kabu
 
ネットワークプログラマビリティ勉強会 これまでのおさらい
ネットワークプログラマビリティ勉強会 これまでのおさらいネットワークプログラマビリティ勉強会 これまでのおさらい
ネットワークプログラマビリティ勉強会 これまでのおさらいnpsg
 
AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介ssuser39314d
 
Rally Updates Mitaka and Next step for Newton
Rally Updates Mitaka and Next step for NewtonRally Updates Mitaka and Next step for Newton
Rally Updates Mitaka and Next step for NewtonYuki Nishiwaki
 
【de:code 2020】 AI on IA 最新情報 ~ CPU で AI を上手に動かすための 5 つのヒント ~
【de:code 2020】 AI on IA 最新情報 ~ CPU で AI を上手に動かすための 5 つのヒント ~【de:code 2020】 AI on IA 最新情報 ~ CPU で AI を上手に動かすための 5 つのヒント ~
【de:code 2020】 AI on IA 最新情報 ~ CPU で AI を上手に動かすための 5 つのヒント ~日本マイクロソフト株式会社
 
Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)Yutaka Kawai
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」Nobuyuki Tamaoki
 

Similar to 20190118-josug-open stack-community-goals (20)

OpenStack Now!
OpenStack Now!OpenStack Now!
OpenStack Now!
 
Reactive Workflow Argo Eventsの紹介
Reactive Workflow Argo Eventsの紹介Reactive Workflow Argo Eventsの紹介
Reactive Workflow Argo Eventsの紹介
 
What's new in open shift container platform 4.7 japan_20210318
What's new in open shift container platform 4.7 japan_20210318What's new in open shift container platform 4.7 japan_20210318
What's new in open shift container platform 4.7 japan_20210318
 
OpenStackをさらに”使う”技術 概要と基礎操作
OpenStackをさらに”使う”技術 概要と基礎操作OpenStackをさらに”使う”技術 概要と基礎操作
OpenStackをさらに”使う”技術 概要と基礎操作
 
Quick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + αQuick Overview of Upcoming Spark 3.0 + α
Quick Overview of Upcoming Spark 3.0 + α
 
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
IoT/GPSトラッキング プラットフォームがサーバレス だからこそ2ヶ月で構築できた話
 
Cisco ACI and OpenStack - Group-based Policy (GBP) & OpFlex
Cisco ACI and OpenStack - Group-based Policy (GBP) & OpFlexCisco ACI and OpenStack - Group-based Policy (GBP) & OpFlex
Cisco ACI and OpenStack - Group-based Policy (GBP) & OpFlex
 
デバイスパッケージを開発してみた @沖縄オープンラボ
デバイスパッケージを開発してみた @沖縄オープンラボデバイスパッケージを開発してみた @沖縄オープンラボ
デバイスパッケージを開発してみた @沖縄オープンラボ
 
Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介Ignite 2021秋 recap - 開発者向け新機能紹介
Ignite 2021秋 recap - 開発者向け新機能紹介
 
Neutron Icehouse Update (Japanese)
Neutron Icehouse Update (Japanese)Neutron Icehouse Update (Japanese)
Neutron Icehouse Update (Japanese)
 
OpenStackアップストリーム活動実践 中級
OpenStackアップストリーム活動実践 中級OpenStackアップストリーム活動実践 中級
OpenStackアップストリーム活動実践 中級
 
Pivotal Application Service とProject riff
Pivotal Application Service とProject riffPivotal Application Service とProject riff
Pivotal Application Service とProject riff
 
Reactor Netty & Apache Kafka Stack #jsug
Reactor Netty & Apache Kafka Stack #jsugReactor Netty & Apache Kafka Stack #jsug
Reactor Netty & Apache Kafka Stack #jsug
 
ネットワークプログラマビリティ勉強会 これまでのおさらい
ネットワークプログラマビリティ勉強会 これまでのおさらいネットワークプログラマビリティ勉強会 これまでのおさらい
ネットワークプログラマビリティ勉強会 これまでのおさらい
 
AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介AI-first Code Editor 「Cursor」の機能紹介
AI-first Code Editor 「Cursor」の機能紹介
 
Rally Updates Mitaka and Next step for Newton
Rally Updates Mitaka and Next step for NewtonRally Updates Mitaka and Next step for Newton
Rally Updates Mitaka and Next step for Newton
 
【de:code 2020】 AI on IA 最新情報 ~ CPU で AI を上手に動かすための 5 つのヒント ~
【de:code 2020】 AI on IA 最新情報 ~ CPU で AI を上手に動かすための 5 つのヒント ~【de:code 2020】 AI on IA 最新情報 ~ CPU で AI を上手に動かすための 5 つのヒント ~
【de:code 2020】 AI on IA 最新情報 ~ CPU で AI を上手に動かすための 5 つのヒント ~
 
Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)Open capi meetup20180409 (revised)
Open capi meetup20180409 (revised)
 
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
OpenStack最新動向と構築のポイント - EMC様セミナー 「あなたのビジネスを高速化! OpenStackが実現する戦略的なクラウドインフラ」
 
OpenStack Summit Vancouver YVR Ops
OpenStack Summit Vancouver YVR OpsOpenStack Summit Vancouver YVR Ops
OpenStack Summit Vancouver YVR Ops
 

More from Akihiro Motoki

20190722 Building handy CI with zuul and OpenStack
20190722 Building handy CI with zuul and OpenStack20190722 Building handy CI with zuul and OpenStack
20190722 Building handy CI with zuul and OpenStackAkihiro Motoki
 
OpenStack Neutron IPv6 Lessons
OpenStack Neutron IPv6 LessonsOpenStack Neutron IPv6 Lessons
OpenStack Neutron IPv6 LessonsAkihiro Motoki
 
Neutron: br-ex is now deprecated! what is modern way?
Neutron: br-ex is now deprecated! what is modern way?Neutron: br-ex is now deprecated! what is modern way?
Neutron: br-ex is now deprecated! what is modern way?Akihiro Motoki
 
20161129 neutron recent topic
20161129 neutron recent topic20161129 neutron recent topic
20161129 neutron recent topicAkihiro Motoki
 
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
20150713-OpenStack-5thbirthday-kilo-liberty-and-towardsAkihiro Motoki
 
20150713 OpenStack Translation in Japan
20150713 OpenStack Translation in Japan20150713 OpenStack Translation in Japan
20150713 OpenStack Translation in JapanAkihiro Motoki
 
neutron_icehouse_update
neutron_icehouse_updateneutron_icehouse_update
neutron_icehouse_updateAkihiro Motoki
 
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessionsOpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessionsAkihiro Motoki
 
20131211 Neutron Havana
20131211 Neutron Havana20131211 Neutron Havana
20131211 Neutron HavanaAkihiro Motoki
 
20131212 Okinawa OpenDays OpenStack
20131212 Okinawa OpenDays OpenStack20131212 Okinawa OpenDays OpenStack
20131212 Okinawa OpenDays OpenStackAkihiro Motoki
 
20131011_openstack-neutron-vyattameeting
20131011_openstack-neutron-vyattameeting20131011_openstack-neutron-vyattameeting
20131011_openstack-neutron-vyattameetingAkihiro Motoki
 
20130724 openstack-3rd-anniversary-amotoki
20130724 openstack-3rd-anniversary-amotoki20130724 openstack-3rd-anniversary-amotoki
20130724 openstack-3rd-anniversary-amotokiAkihiro Motoki
 
OpenStack Contribution Howto
OpenStack Contribution HowtoOpenStack Contribution Howto
OpenStack Contribution HowtoAkihiro Motoki
 
20121216 OSC Cloud OpenStack Quantum
20121216 OSC Cloud OpenStack Quantum20121216 OSC Cloud OpenStack Quantum
20121216 OSC Cloud OpenStack QuantumAkihiro Motoki
 
Horizon Quantum Integration grizzly
Horizon Quantum Integration grizzlyHorizon Quantum Integration grizzly
Horizon Quantum Integration grizzlyAkihiro Motoki
 
Horizon quantum-integration-grizzly
Horizon quantum-integration-grizzlyHorizon quantum-integration-grizzly
Horizon quantum-integration-grizzlyAkihiro Motoki
 
Quantum-grizzly-packet-filtering
Quantum-grizzly-packet-filteringQuantum-grizzly-packet-filtering
Quantum-grizzly-packet-filteringAkihiro Motoki
 

More from Akihiro Motoki (17)

20190722 Building handy CI with zuul and OpenStack
20190722 Building handy CI with zuul and OpenStack20190722 Building handy CI with zuul and OpenStack
20190722 Building handy CI with zuul and OpenStack
 
OpenStack Neutron IPv6 Lessons
OpenStack Neutron IPv6 LessonsOpenStack Neutron IPv6 Lessons
OpenStack Neutron IPv6 Lessons
 
Neutron: br-ex is now deprecated! what is modern way?
Neutron: br-ex is now deprecated! what is modern way?Neutron: br-ex is now deprecated! what is modern way?
Neutron: br-ex is now deprecated! what is modern way?
 
20161129 neutron recent topic
20161129 neutron recent topic20161129 neutron recent topic
20161129 neutron recent topic
 
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
20150713-OpenStack-5thbirthday-kilo-liberty-and-towards
 
20150713 OpenStack Translation in Japan
20150713 OpenStack Translation in Japan20150713 OpenStack Translation in Japan
20150713 OpenStack Translation in Japan
 
neutron_icehouse_update
neutron_icehouse_updateneutron_icehouse_update
neutron_icehouse_update
 
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessionsOpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
OpenStack Atlanta Summit Report: Neutron, Nova and design summit sessions
 
20131211 Neutron Havana
20131211 Neutron Havana20131211 Neutron Havana
20131211 Neutron Havana
 
20131212 Okinawa OpenDays OpenStack
20131212 Okinawa OpenDays OpenStack20131212 Okinawa OpenDays OpenStack
20131212 Okinawa OpenDays OpenStack
 
20131011_openstack-neutron-vyattameeting
20131011_openstack-neutron-vyattameeting20131011_openstack-neutron-vyattameeting
20131011_openstack-neutron-vyattameeting
 
20130724 openstack-3rd-anniversary-amotoki
20130724 openstack-3rd-anniversary-amotoki20130724 openstack-3rd-anniversary-amotoki
20130724 openstack-3rd-anniversary-amotoki
 
OpenStack Contribution Howto
OpenStack Contribution HowtoOpenStack Contribution Howto
OpenStack Contribution Howto
 
20121216 OSC Cloud OpenStack Quantum
20121216 OSC Cloud OpenStack Quantum20121216 OSC Cloud OpenStack Quantum
20121216 OSC Cloud OpenStack Quantum
 
Horizon Quantum Integration grizzly
Horizon Quantum Integration grizzlyHorizon Quantum Integration grizzly
Horizon Quantum Integration grizzly
 
Horizon quantum-integration-grizzly
Horizon quantum-integration-grizzlyHorizon quantum-integration-grizzly
Horizon quantum-integration-grizzly
 
Quantum-grizzly-packet-filtering
Quantum-grizzly-packet-filteringQuantum-grizzly-packet-filtering
Quantum-grizzly-packet-filtering
 

20190118-josug-open stack-community-goals

  • 1. OpenStack Community Goals ~これまでの状況と今後~ Akihiro Motoki Jan 18, 2019 Japan OpenStack Users Group 41st meetup
  • 2. Who am I ?  Akihiro Motoki / 元木 顕弘 – IRC: amotoki, Twitter: @ritchey98 – 以前は IPルータ、広域Ethernet装置、迷惑メールフィルタ、 OpenFlow 関連技術などの研究開発をしていました。  OpenStack Upstream Developer – Neutron: Core reviewer + drivers team – Core reviewer of Horizon, OpenStack Client (OSC), I18n – API-SIG, OpenStack SDK ...  OpenStack Operator – (でした、ちょっと前まで)  日本OpenStackユーザー会 – 勉強会企画チーム、ボードメンバー
  • 3. Agenda  What’s “Community Goals” ?  Community Goals in Past Releases  Community Goals in Stein  How are they identified and defined ?  Candidates for “Train” release
  • 4. What is “Community Goals”?  OpenStack プロジェクト全体としてリリースごとに取り組むテーマ  OpenStack 全体として一定レベルの一貫性や User Experience を 提供していく取り組み – ユーザーやオペレーターは OpenStack を一つのプラットフォームと見ている  当初は、プロジェクト毎の実装の差異を吸収する側面が強かったが、 最近は運用者視点でのゴール設定が行われてきている。
  • 5. Community Goals in Past Releases https://governance.openstack.org/tc/goals/index.html#release-cycles  Ocata – Remove Copies of Incubated Oslo Code  Pike – Control Plane API endpoints deployment via WSGI – Support Python 3.5  Queens – Register and Document Policy in Code – Split Tempest Plugins into Separate Repos/Projects  Rocky – Enable mutable configuration – Remove use of mox/mox3 testing
  • 6. API endpoints with WSGI  WSGI = Web Server Gateway Interface – Python で Web Server とアプリケーションを接続するための標準的なインターフェース  WSGI 対応とすることで、通常のウェブサーバー側の機能を活用し て、API サーバーを提供できる。 – これまでは eventlet を使った実装のみだった – 様々な Web Server を使って API エンドポイントを提供できる – Apache だと mod-wsgi モジュールを使う  コア機能ではほとんどが対応 – Nova, Cinder, Keystone, Glance, Placement – Neutron は Rocky で対応 (experimental)
  • 7. $ ¥ls -1 /etc/apache2/sites-enabled/ cinder-wsgi.conf glance-wsgi-api.conf horizon.conf keystone-wsgi-admin.conf keystone-wsgi-public.conf nova-api-wsgi.conf placement-api.conf static.conf $ less /etc/apache2/sites-enabled/nova-api-wsgi.conf ProxyPass "/compute" "unix:/var/run/uwsgi/nova-api-wsgi.socket|uwsgi://uwsgi-uds-nova-api-wsgi/" retry=0 $ ps auxw | grep nova-api tipica 5730 0.0 0.1 100384 14048 ? Ss Jan17 0:04 nova-api-metauWSGI master tipica 5732 0.0 1.3 304788 108120 ? S Jan17 0:02 nova-api-metauWSGI worker 1 tipica 5733 0.0 1.3 305772 109076 ? S Jan17 0:02 nova-api-metauWSGI worker 2 tipica 5734 0.0 0.0 100384 4900 ? S Jan17 0:00 nova-api-metauWSGI http 1 tipica 22563 0.0 0.0 16576 2052 pts/0 S+ 13:46 0:00 grep --color=auto nova-api tipica 26485 0.0 0.1 100384 14044 ? Ss Jan17 0:04 nova-apiuWSGI master tipica 26487 0.0 1.6 337656 134944 ? S Jan17 0:08 nova-apiuWSGI worker 1 tipica 26488 0.0 1.6 335480 133016 ? S Jan17 0:08 nova-apiuWSGI worker 2
  • 8. Policy in Code Policy: API の RBAC (Role based Access Control) の仕組み これまではデフォルトの policy.json で定義 (manual maintenace) Configuration と同様に Policy もコードの中で定義 – オペレーターは差分のみを policy.json (or policy.yaml) に定義 それをベースに Policy Reference も自動生成 これに伴い ”default” ルール (fallback rule) の Cleanup が行われ、 Policy 定義がわかりやすくなった (直接関係ないが) YAML でのポリシー定義も可能に。
  • 9. Policy-in-Code (Cont.) Nova Examples – https://docs.openstack.org/nova/latest/configuration/policy.html – https://docs.openstack.org/nova/latest/configuration/sample-policy.html 差分のみの定義の例 $ less /etc/neutron/policy.json { "context_is_admin": "role:admin or user_name:neutron" }
  • 10. Community Goals for Stein Run under Python3 by default Support pre-upgrade checks
  • 11. Stein: Python3 by default Python2 は Jan 1, 2020 で Python Upstream で のサポートが終了する。 OpenStack としてもそれまでに Python3 で完全に 動作するようにしていく方針 Stein サイクルでは integration tests, functional tests, unit tests を python3 で動かすようにする – Python2 のテストも必要なものについては残る – DevStack も USE_PYTHON3 のオプションが追加。 – 多くのプロジェクトが DevStack で Python3 で動作中
  • 12. Stein: pre-upgrade check アップグレード時の注意点をチェックするツール これまでは Release Notes の Upgrade や Deprecation をオペレーターがチェックするしかなかった。 機械的にチェックする仕組みがほしい 例: nova-status – https://github.com/openstack/nova/blob/master/nova/c md/status.py
  • 13. $ nova-status upgrade check +-------------------------------------------------------------------+ | Upgrade Check Results | +-------------------------------------------------------------------+ | Check: Cells v2 | | Result: Success | | Details: None | +-------------------------------------------------------------------+ | Check: Placement API | | Result: Success | | Details: None | +-------------------------------------------------------------------+ | Check: Resource Providers | | Result: Warning | | Details: There are no compute resource providers in the Placement | | service but there are 1 compute nodes in the deployment. | | This means no compute nodes are reporting into the | | Placement service and need to be upgraded and/or fixed. | | See | | https://docs.openstack.org/nova/latest/user/placement.html | | for more details. | +------------------------------------------------------------+ ….
  • 14. How are they identified and defined?  Summit の Forum で議論 – 項目の頭出し – Developer & Operator からのフィードバック  次の開発サイクル開始までの間で具体化  前の開発サイクルの終盤に Technical Committee 主導で、次のサ イクルのテーマを決定  当初は Developer 主導のテーマが多かった  Forum での議論の中で Operator に見えるテーマをもっと設定して ほしいという要望があり、Operator にメリットのあるテーマが設定 されるようになって来ている。
  • 15. Candidates for “Train” release Berlin Smmit での議論 – https://etherpad.openstack.org/p/BER-t-series-goals 人気があったもの – Project Resource Deletion – Finish moving legacy python-*client to python- openstackclient – Ensure all projects pass project-id  + Ensure all projects use “service-token” when calling one another API with incoming token
  • 16. “Train” release  https://docs.openstack.org/install-guide/common/glossary.html#term-train Train The code name for the twentieth release of OpenStack. The OpenStack Infrastructure Summit will take place in Denver, Colorado, US. Two Project Team Gathering meetings in Denver were held at a hotel next to the train line from downtown to the airport. The crossing signals there had some sort of malfunction in the past causing them to not stop the cars when a train was coming properly. As a result the trains were required to blow their horns when passing through that area. Obviously staying in a hotel, by trains that are blowing their horns 24/7 was less than ideal. As a result, many jokes popped up about Denver and trains - and thus the release is called train. OpenStack の 20 番目のリリースのコード名。 OpenStack Infrastructure サミットは、アメリカのコロラド州デ ンバーで開催予定である。 デンバーでの 2 回の Project Team Gathering (PTG) は、ダウンタウンと空港を結ぶ電車の路線のすぐ横の ホテルで開催された。そこの踏切の信号機は以前はイカれていて、電車が来たときでも車が適切に停止しな い状態だった。そのため、電車はそこを通過する際に汽笛をけたたましく鳴らす必要性に迫られた。想像に難 くないが、24時間年中無休で汽笛を鳴らし続ける電車のおかげで、ホテルでの滞在は理想的とは言い難いも のだった。その結果、デンバーと電車に関するジョークがたくさん生まれ、このリリースは Train と呼ばれること になった。