How to deploy & operate OpenStack Production
-
Upload
virtualtech-japan-inc -
Category
Technology
-
view
616 -
download
1
Transcript of How to deploy & operate OpenStack Production
How to deploy & operateOpenStack Production
日本仮想化技術株式会社VitrualTech.jp
2016/7/6
Today’s agenda• OpenStack Collab Lab.• Building OpenStack Production• Next step
2
OpenStack collab lab
3
VTJ was begining 2016/3 with Broadband Tower.
Open Open Open
http://openstack-lab.enterprisecloud.jp 注
https://github.com/openstack-lab
4注: http://openstack-lab.enterprisecloud.jp は現在準備中です
Today’s agenda• OpenStack Collab Lab.• Building OpenStack Production• Next step
5
Building OpenStack Production 1
6
サーバ #1 サーバ #2 サーバ #3 サーバ #4 サーバ #5 サーバ #6 サーバ #7
IA Server × 7
HP BladeSystem c3000BL460c G7CPU: Xeon E5540 2P/8CMemory: 32GBDisk: SSD 256GB or HDD 300GB
Building OpenStack Production 2
7
サーバ #1 サーバ #2 サーバ #3 サーバ #4 サーバ #5 サーバ #6 サーバ #7
Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu
Using OpenStack-ansible (Kilo version)
OpenStack-Ansible で作る OpenStack HA 環境http://enterprisecloud.jp/installguide-openstack-ansible/http://www.slideshare.net/VirtualTech-JP/openstackansibleopenstack-ha-openstack-20163
コントローラノード
コンピュートノード
Building OpenStack Production 3
8
OpenStackManagement NW( VLAN ID:2811 )
VXLAN NW(VLAN ID:2812)
Host NW(VLAN タグなし)
em2
.10 〜12
172.28.1.0/24
br-vlan
VLAN NW
br-vlan
br-vxlan
em1.2811
em2.2812
em1
em1.2811
em2.2812
172.29.236.0/22
172.29.240.0/22
.10
em1.62 〜 64
br-mgmt br-mgmt
br-vxlan
em2×3 台 ×2 台
.65 〜 66
コントローラノード コンピュートノード
.13 〜14
Global IP
Building OpenStack Production 4
9
サーバ #1 サーバ #2 サーバ #3 サーバ #4 サーバ #5 サーバ #6 サーバ #7
Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu
Monitoring: Zabbix 3.0 + Hatohol 16.04
Log management&analyze:Elasticsearch + Fluentd + Kibana
コントローラノード
コンピュートノード 監視 ログ
Ex. Operation flow for alerting
10
サーバ #1 サーバ #2 サーバ #3 サーバ #4 サーバ #5 サーバ #6 サーバ #7
Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu
コントローラノード
コンピュートノード 監視 ログ
Zabbix エージェントZabbix
3.0
Hatohol 16.04
Redmine3.2.0
SlackZabbix では、プロセス監視やポート監視の他にAPI 死活監視や MQ の Queue Depth などを追加Hatohol は、複数の Zabbix 監視サーバを束ねる運用ダッシュボード的な使い方を検討中
Ex. Operation flow for log management
11
サーバ #1 サーバ #2 サーバ #3 サーバ #4 サーバ #5 サーバ #6 サーバ #7
Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu Ubuntu
コントローラノード
コンピュートノード 監視 ログ
fluentdElastic Search
Kibana
OpenStack のコマンド及び Horizon から操作を行うと各コンポーネントのAPI が叩かれ、 API サーバから MessageQue に命令リクエストが送信されるAPI サービスダウン時は、命令リクエストが送信できず、操作不能となる。
API monitoring
12
nova-API
MessageQue
Horizon
コマンド
参考: http://openstack.jp/assets/files/20121216/osc2012cloudjosugamqpv2-121216085708-phpapp02.pdf
API
API
API
nova-scheduler
nova-compute
nova-bootリクエスト
nova-boot実行
API がダウンしているため、nova-boot リクエストがMeesageQue に送信されない
リクエストはないな
新規リクエストはないな
リクエストが来るまで何もしない
nova-bootリクエスト
OpenStackのコンポーネント及びサービス間の通信は全て MessageQue を介して行われるため、キューが溜まりやすい特徴がある。キューが溜まりすぎると命令リクエストが正常に処理されず、 OpenStack全体の動作が不安定となりやすい
MessageQue monitoring
13
nova-API
MessageQue参考: http://openstack.jp/assets/files/20121216/osc2012cloudjosugamqpv2-121216085708-phpapp02.pdf
nova-scheduler
cinder-scheduler
nova-bootリクエスト
nova-boot実行
nova-bootリクエス
トnova-bootリクエス
トnova-bootリクエス
トnova-bootリクエス
ト
cinder-list実行
cinder-API
cinder-listリクエスト
キューが溢れると新規命令リクエストが受け付けられない
nova-bootリクエスト
MessageQue が処理するキューより入る命令リクエストが多いとキューが溢れる
cinder-listリクエスト
cinder-listリクエスト
cinder-listリクエスト
about Fluentd
14
Fluentd とは・・・ Treasure Data 社が開発しているログファイルの収集・転送・集約が行える OSSログに正規表現でタグを付けし Elasticserch に転送することで、 Kibana を使用したログ解析・可視化を行える
生ログデータ
Fluentd
date 2016-05-07 14:06:05.569pid 19670level INFOmessage neutron.agent.linux.daemon - Process runs with uid/gid: 999/999
収集したログの内容にタグ付け
Elasticserchタグ付けしたログを転送
ログを収集
2016-05-07 14:06:05.569 19670 INFO neutron.agent.linux.daemon [-] Process runs with uid/gid: 999/999
OpenStack logs
15
サービス ログファイルNova(7 ファイル )
/var/log/nova/nova-api-metadata.log/var/log/nova/nova-compute.log/var/log/nova/nova-scheduler.log/var/log/nova/nova-api-os-compute.log/var/log/nova/nova-cert.log/var/log/nova/nova-conductor.log/var/log/nova/nova-consoleauth.log
Keystone(3 ファイル )
/var/log/keystone/keystone-apache-error.log/var/log/keystone/keystone.log/var/log/keystone/ssl_access.log
Neutron(9 ファイル )
/var/log/neutron/neutron-dnsmasq.log/var/log/neutron/neutron-ha-tool.log/var/log/neutron/neutron-dhcp-agent.log/var/log/neutron/neutron-l3-agent.log/var/log/neutron/neutron-linuxbridge-agent.log/var/log/neutron/neutron-metadata-agent.log/var/log/neutron/neutron-metering-agent.log/var/log/neutron/neutron-ns-metadata-proxy-*.log/var/log/neutron/neutron-server.log
Glance(2 ファイル )
/var/log/glance/glance-api.log/var/log/glance/glance-registry.log
Horizon(2 ファイル )
/var/log/horizon/horizon-error.log/var/log/horizon/ssl_access.log
サービス ログファイルCinder(3 ファイル )
/var/log/cinder/cinder-volume.log/var/log/cinder/cinder-scheduler.log/var/log/cinder/cinder-api.log
RabbitMQ(6 ファイル )
/var/log/rabbitmq/rabbit*rabbit_mq_*.log/var/log/rabbitmq/rabbit*_rabbit_mq_*sasl.log/var/log/rabbitmq/shutdown_log/var/log/rabbitmq/shutdown_err/var/log/rabbitmq/startup_log/var/log/rabbitmq/startup_err
GaleraCluster(1 ファイル )
/var/log/mysql_logs/galera_server_error.log
Memcached(1 ファイル )
/var/log/memcached.log
計 34 ファイル + syslog(物理サーバ 7 台環境で約 130 万行 / 日のログ出力 )
about Elasticserch/Kibana
16
Elasticserch とは・・・ Elastic 社が開発しているビックデータの蓄積・解析が行える OSSKibana によって解析結果の可視化が可能
Today’s agenda• OpenStack Collab Lab.• Building OpenStack Production• Next step
17
OpenStack
監視 & ログのデータ処理フロー
18
仮想マシン 仮想マシン
サーバ サーバ
L2/L3
今回構築した環境
ログ管理・解析ツール( ElasticSearch, Kibana )
監視・モニタリングツール( Zabbix ) インシデント
管理ツール( Redmine )
ナレッジベース
( Redmine )
運用ダッシュボードツール( Hatohol )
Zabbixエ
ージ
ェン
ト
Fl
ue
nt
d
① 130 万件 / 日
② ダッシュボードに伝えるべきエラーは何か?
19NTT ドコモ様 導入事例 OpenStack Summit 2015 Tokyo 講演「 After One year of OpenStack Cloud Operation (NTT DOCOMO)http://www.slideshare.net/VirtualTech-JP/ntt-openstack-summit-2015-tokyo-after-one-year-of-openstack-cloud-operation-ntt-docomo
OpenStack
監視 & ログにまつわるユーザー処理フロー
20
仮想マシン 仮想マシン
サーバ サーバ
L2/L3
今回構築した環境
ログ管理・解析ツール( ElasticSearch, Kibana )
監視・モニタリングツール( Zabbix ) インシデント
管理ツール( Redmine )
ナレッジベース
( Redmine )
運用ダッシュボードツール( Hatohol )
Zabbixエ
ージ
ェン
ト
Fl
ue
nt
d
③ フィードバックする仕組みをいかに作るか
告知: 7/28( 木 ) 15:20- @ 六本木
OpenStack 最新情報セミナー 2016 年 7 月• YJ America 松谷さん講演• ゼットラボ 講演• サイバーエージェント 講演• OpenStack 共同検証ラボ 講演
7/13( 水 ) 9:00 申込開始http://openstack-update.connpass.com/event/35307/
21