前日は KNOPP さんでした。
Deploying Scalable Oracle RAC on Amazon EC2 の考察
今年も、Oracle OpenStack についてです。
最近、Oracle OpenStack for Oracle Linux Release 2 がリリースされました。
Oracle OpenStack for Oracle Linux Release 2 のマニュアル。
http://docs.oracle.com/cd/E64747_01/index.html
OpenStack for Oracle Linux R1 → R2。
とくに派手な変更は、以下だと思います。
- OpenStack が、Icehouse から、Kilo ベースに変更。
- デプロイ方法が、これまでの packstack から、kolla に変更。
- Oracle VM Server がサポート対象に含まれていない?
今回の Oracle OpenStack は、
Oracle VM Server が、サポート対象ハイパーバイザに含まれていないようです。
Oracle OpenStack for Oracle Linux
Release Notes for 2.0.1
3.3 Hypervisors Supported
http://docs.oracle.com/cd/E64747_01/E64748/html/osrns-support-hypervisors.html
ということで、 どう変わっているのかデプロイしてみました。
Kolla でのデプロイとは。
Oracle OpenStack for Oracle Linux
Release Notes for 2.0.1
3.3 Hypervisors Supported
http://docs.oracle.com/cd/E64747_01/E64748/html/osrns-support-hypervisors.html
This release of Oracle OpenStack for Oracle Linux is supported on the Kernel-based Virtual Machine (KVM) hypervisor on Oracle Linux Release 7 Update 1 or later.
The use of Linux Containers (LXC) and Microsoft Hyper-V hypervisors is available as a technology preview. Support for these hypervisors is still under development, and is made available for testing and evaluation purposes only. Do not use these hypervisors in production systems.
ということで、 どう変わっているのかデプロイしてみました。
Kolla でのデプロイとは。
Kolla では、Ansible と Docker で、OpenStack コンポーネントをコンテナとしてデプロイします。
役割として、マスターノードと、ターゲットノードが存在します。
マスターサーバは、Kolla の CLI(kollacli)を実行するサーバです。OpenStack の Control Node に同居させることも、独立したサーバとして構築することも可能なようです。
ターゲットサーバが Docker イメージを 取得する Docker Registry には、 Oracle Software Delivery Cloud から ダウンロードしたコンテナイメージ(リポジトリ)を配置しておきます。
Kolla で使用する kollacli コマンドは、 Oracle Public Yum サーバからダウンロード(yum install)できます。Oracle OpenStack では「Oracle OpenStack for Oracle Linux Toolkit CLI」と呼んでいるようです。
イメージは、下記のようになると思います。
マスターサーバは、Kolla の CLI(kollacli)を実行するサーバです。OpenStack の Control Node に同居させることも、独立したサーバとして構築することも可能なようです。
ターゲットサーバが Docker イメージを 取得する Docker Registry には、 Oracle Software Delivery Cloud から ダウンロードしたコンテナイメージ(リポジトリ)を配置しておきます。
Kolla で使用する kollacli コマンドは、 Oracle Public Yum サーバからダウンロード(yum install)できます。Oracle OpenStack では「Oracle OpenStack for Oracle Linux Toolkit CLI」と呼んでいるようです。
イメージは、下記のようになると思います。
見ての通り、OpenStack 環境を構成するサーバ全体に
Docker Engine がインストールされることになります。
Docker Engine がインストールされることになります。
また、あえて分散配置して記載してみましたが、All in one 構成も可能です。
ためしにデプロイした様子。
正直、分散配置の構成だとまだ私はちゃんと動作させられてませんが、見た目が印象的だったのでコンテナの様子を記載しておこうと思います。
今回は、2台構成(上記のイメージとは異なり)です。
Control Node に Network / Storage サービスをすべてまとめて配置して、Compute Node(ハイパーバイザ)だけ別サーバにしています。
kollacli では、このように見えたりします。
そして、Control Node に R2 がデプロイされた状態です。
30個以上コンテナがあります。一番下のコンテナは Docker Registry のコンテナです。
「osctlr01.gowatana.lab:5443」は、ローカル Docker Registry です。
そして、Compute Node(ハイパーバイザ)で起動したコンテナです。
今回のハイパーバイザは、Oracle Linux KVM (というか QEMU)でした。
R1 でも結構追加で RPM を入れてましたが、
R2 をデプロイするには Docker と OpenStack 両方のスキルが必要で、
正直、分散配置の構成だとまだ私はちゃんと動作させられてませんが、見た目が印象的だったのでコンテナの様子を記載しておこうと思います。
今回は、2台構成(上記のイメージとは異なり)です。
Control Node に Network / Storage サービスをすべてまとめて配置して、Compute Node(ハイパーバイザ)だけ別サーバにしています。
kollacli では、このように見えたりします。
[root@osctlr01 ~]# kollacli host list
+-----------------------+-----------------------------------------------+
| Host | Groups |
+-----------------------+-----------------------------------------------+
| osctlr01.gowatana.lab | ['control', 'storage', 'network', 'database'] |
| oshost11.gowatana.lab | ['compute'] |
+-----------------------+-----------------------------------------------+
そして、Control Node に R2 がデプロイされた状態です。
30個以上コンテナがあります。一番下のコンテナは Docker Registry のコンテナです。
「osctlr01.gowatana.lab:5443」は、ローカル Docker Registry です。
[root@osctlr01 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
c171ae5bd371 osctlr01.gowatana.lab:5443/oracle/ol-openstack-horizon:2.0.1 "/start.sh" 55 seconds ago Up 53 seconds horizon
f963958ec5d9 osctlr01.gowatana.lab:5443/oracle/ol-openstack-heat-engine:2.0.1 "/start.sh" About a minute ago Up About a minute heat_engine
d30f5d53d646 osctlr01.gowatana.lab:5443/oracle/ol-openstack-heat-api-cfn:2.0.1 "/start.sh" About a minute ago Up About a minute heat_api_cfn
3598391f25f6 osctlr01.gowatana.lab:5443/oracle/ol-openstack-heat-api:2.0.1 "/start.sh" About a minute ago Up About a minute heat_api
241fddd303af osctlr01.gowatana.lab:5443/oracle/ol-openstack-cinder-volume:2.0.1 "/start.sh" 2 minutes ago Up 2 minutes cinder_volume
c8b32f90ae72 osctlr01.gowatana.lab:5443/oracle/ol-openstack-cinder-scheduler:2.0.1 "/start.sh" 2 minutes ago Up 2 minutes cinder_scheduler
0cd8a8d856a6 osctlr01.gowatana.lab:5443/oracle/ol-openstack-cinder-backup:2.0.1 "/start.sh" 2 minutes ago Up 2 minutes cinder_backup
08a123a2c37e osctlr01.gowatana.lab:5443/oracle/ol-openstack-cinder-api:2.0.1 "/start.sh" 2 minutes ago Up 2 minutes cinder_api
4645fd2c4823 osctlr01.gowatana.lab:5443/oracle/ol-openstack-data:2.0.1 "/bin/sh -c '/bin/sle" 3 minutes ago Up 3 minutes cinder_data
bd0f6c207d23 osctlr01.gowatana.lab:5443/oracle/ol-openstack-neutron-agents:2.0.1 "/usr/bin/supervisord" 3 minutes ago Up 3 minutes neutron_agents
46226e81cf87 osctlr01.gowatana.lab:5443/oracle/ol-openstack-neutron-openvswitch-agent:2.0.1 "/start.sh" 3 minutes ago Up 3 minutes neutron_openvswitch_agent
c07c74d5fca7 osctlr01.gowatana.lab:5443/oracle/ol-openstack-neutron-server:2.0.1 "/start.sh" 4 minutes ago Up 3 minutes neutron_server
b5c92ea1e0b9 osctlr01.gowatana.lab:5443/oracle/ol-openstack-ovs-vswitchd:2.0.1 "/start.sh" 4 minutes ago Up 4 minutes openvswitch_vswitchd
7bd52ff8fb74 osctlr01.gowatana.lab:5443/oracle/ol-openstack-ovs-db-server:2.0.1 "/start.sh" 4 minutes ago Up 4 minutes openvswitch_db
30c5ecfe9347 osctlr01.gowatana.lab:5443/oracle/ol-openstack-nova-scheduler:2.0.1 "/start.sh" 6 minutes ago Up 6 minutes nova_scheduler
e997c2289773 osctlr01.gowatana.lab:5443/oracle/ol-openstack-nova-novncproxy:2.0.1 "/start.sh" 6 minutes ago Up 6 minutes nova_novncproxy
7a0110abe2e5 osctlr01.gowatana.lab:5443/oracle/ol-openstack-nova-consoleauth:2.0.1 "/start.sh" 6 minutes ago Up 6 minutes nova_consoleauth
ddc480f32be6 osctlr01.gowatana.lab:5443/oracle/ol-openstack-nova-conductor:2.0.1 "/start.sh" 6 minutes ago Up 6 minutes nova_conductor
89e4789184ff osctlr01.gowatana.lab:5443/oracle/ol-openstack-nova-api:2.0.1 "/start.sh" 6 minutes ago Up 6 minutes nova_api
cecf5ff74d13 osctlr01.gowatana.lab:5443/oracle/ol-openstack-data:2.0.1 "/bin/sh -c '/bin/sle" 7 minutes ago Up 7 minutes nova_data
af0d90751e3b osctlr01.gowatana.lab:5443/oracle/ol-openstack-glance-api:2.0.1 "/start.sh" 9 minutes ago Up 9 minutes glance_api
9682b3abfcb1 osctlr01.gowatana.lab:5443/oracle/ol-openstack-glance-registry:2.0.1 "/start.sh" 9 minutes ago Up 9 minutes glance_registry
1852cdef73ec osctlr01.gowatana.lab:5443/oracle/ol-openstack-data:2.0.1 "/bin/sh -c '/bin/sle" 9 minutes ago Up 9 minutes glance_data
b622c4cf5878 osctlr01.gowatana.lab:5443/oracle/ol-openstack-keystone:2.0.1 "/start.sh" 10 minutes ago Up 10 minutes keystone
79ddd599396e osctlr01.gowatana.lab:5443/oracle/ol-openstack-rabbitmq:2.0.1 "/start.sh" 10 minutes ago Up 10 minutes rabbitmq
5c8ff277fa79 osctlr01.gowatana.lab:5443/oracle/ol-openstack-data:2.0.1 "/bin/sh -c '/bin/sle" 10 minutes ago Up 10 minutes rabbitmq_data
35cee084e06a osctlr01.gowatana.lab:5443/oracle/ol-openstack-mysqlcluster-api:2.0.1 "/start.sh" 11 minutes ago Up 11 minutes mysqlcluster_api
7672b4493192 osctlr01.gowatana.lab:5443/oracle/ol-openstack-mysqlcluster-ndb:2.0.1 "/start.sh" 11 minutes ago Up 11 minutes mysqlcluster_ndb
0309c96b1d1a osctlr01.gowatana.lab:5443/oracle/ol-openstack-data:2.0.1 "/bin/sh -c '/bin/sle" 11 minutes ago Up 11 minutes mysqlcluster_data
baea8eed4e31 osctlr01.gowatana.lab:5443/oracle/ol-openstack-mysqlcluster-mgmt:2.0.1 "/start.sh" 11 minutes ago Up 11 minutes mysqlcluster_mgmt
f41728e74937 osctlr01.gowatana.lab:5443/oracle/ol-openstack-kolla-ansible:2.0.1 "/bin/sleep infinity" 11 minutes ago Up 11 minutes kolla_ansible
e3d4fbdc84f5 registry:2 "/bin/registry /etc/d" 9 hours ago Up 11 minutes 0.0.0.0:5443->5000/tcp reg01
[root@osctlr01 ~]#
そして、Compute Node(ハイパーバイザ)で起動したコンテナです。
今回のハイパーバイザは、Oracle Linux KVM (というか QEMU)でした。
R1 でも結構追加で RPM を入れてましたが、
さすがに Oracle VM Server に Docker エンジンを入れることはないと思うので、
やっぱりサポート外か・・・と思いました。
[root@oshost11 ~]# docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
330d9d1a3e6f osctlr01.gowatana.lab:5443/oracle/ol-openstack-neutron-openvswitch-agent:2.0.1 "/start.sh" 4 minutes ago Up 4 minutes neutron_openvswitch_agent
98c2dd850607 osctlr01.gowatana.lab:5443/oracle/ol-openstack-ovs-vswitchd:2.0.1 "/start.sh" 5 minutes ago Up 5 minutes openvswitch_vswitchd
27b53b424563 osctlr01.gowatana.lab:5443/oracle/ol-openstack-ovs-db-server:2.0.1 "/start.sh" 5 minutes ago Up 5 minutes openvswitch_db
3e95d6de08db osctlr01.gowatana.lab:5443/oracle/ol-openstack-nova-compute:2.0.1 "/start.sh" 6 minutes ago Up 6 minutes nova_compute
12d74bfd0cfc osctlr01.gowatana.lab:5443/oracle/ol-openstack-nova-libvirt:2.0.1 "/start.sh" 7 minutes ago Restarting (1) 56 seconds ago nova_libvirt
49395260e07c osctlr01.gowatana.lab:5443/oracle/ol-openstack-data:2.0.1 "/bin/sh -c '/bin/sle" 9 minutes ago Up 9 minutes nova_data
2ca7beae9105 osctlr01.gowatana.lab:5443/oracle/ol-openstack-kolla-ansible:2.0.1 "/bin/sleep infinity" 9 minutes ago Up 9 minutes kolla_ansible
[root@oshost11 ~]#
R2 をデプロイするには Docker と OpenStack 両方のスキルが必要で、
結構難易度が高い気がします。一応、ログ収集スクリプトが用意されていますが
インスタンスが起動しない、みたいな時のトラブルシュートも
コンテナン内のログを見たりしないとだめそうです。
ちなみに、さっそく困った時の様子です。
OpenStack のクライアントコマンドは、docker-ostk コマンドを使用するようです。
ちなみに Horizon は R2 になっても相変わらず意外と自己主張がない感じでした。
ちなみに、さっそく困った時の様子です。
OpenStack のクライアントコマンドは、docker-ostk コマンドを使用するようです。
[root@osctlr01 ~]# docker-ostk nova list
+--------------------------------------+------+--------+------------+-------------+----------+
| ID | Name | Status | Task State | Power State | Networks |
+--------------------------------------+------+--------+------------+-------------+----------+
| b9f7b015-6f62-4426-b09a-f91a3d48970a | vm01 | ERROR | spawning | NOSTATE | |
+--------------------------------------+------+--------+------------+-------------+----------+
ちなみに Horizon は R2 になっても相変わらず意外と自己主張がない感じでした。
以上、Oracle OpenStack R2 の様子についてでした。
明日の JPOUG アドベントカレンダーは charade_oo4o さんです。
明日の JPOUG アドベントカレンダーは charade_oo4o さんです。
0 件のコメント:
コメントを投稿