【追記あり】今すぐ試せる、ブルーグリーンデプロイメント環境の構築手順(構築の仕上げと動作検証方法):OpenStack上に構築する、ブルーグリーンデプロイメント実践入門(5)(4/4 ページ)
本連載では、「OpenStackを基盤としたブルーグリーンデプロイメント」を実現する“現場目線”のノウハウを解説していきます。今回は、「ブルーグリーンデプロイメント環境の構築手順(後編)」をお届けします。
ステップ6:BGDの動きを検証する
最後に、BGD環境が正しく切り替わるかを検証しましょう。
「switchover」ボタンで、ブルー系/グリーン系が切り替わる
Horozinから「Blue Green Deployment」→「BGD」をたどり、「BGD panel」メニューを表示します。画面の「switchover」ボタンを押すと、ブルー系とグリーン系が切り替わります(図22)(図23)。
図23のように、グリーン系であることを示すグリーン背景の「Serviced by Green」文字列と、本番系フローティングIPアドレスである10.0.0.10が、グリーン系ネットワークであることを示す「www-green」に切り替わったことを視認できます。
Webサーバ画面も同様です。本番系フローティングIPアドレスが割り振られているWebサーバ(今回の例では、http://10.0.0.1/cgi-bin/index.cgi)にアクセスすると、グリーン系のWebサーバが動作していることを確認できます(図24)。
一方の、開発系に切り替わったブルー系は、開発系フローティングIPアドレスが振られているWebサーバ(今回の例では、http://10.0.0.20/cgi-bin/index.cgi)にアクセスします。同様にブルー系のWebサーバが動作していることを確認できます(図25)。
以上でOpenStack上へのブルーグリーンデプロイメント環境を構築できました。
参考:HTTP KeepAliveを無効にする
OpenStack Newton環境でLBaaS v2を使う場合、ロードバランサーは標準の「HAProxy」が用いられます。しかし、多くの場合は通信にHTTP/1.1を用いていると想定されます。HTTP/1.1では、TCP接続を一定期間使い回すことで効率を高める「KeepAlive」が有効となっています。
今回のBDG環境では、フローティングIPの付け替えをiptablesのNATテーブルを書き換えることで実現しています。NATテーブルの評価は確立済みTCP接続に対しては行われないために、このKeepAliveが有効だと「ブルー系/グリーン系がうまく切り替わらない」という問題が起こってしまいます。
この問題は、HAProxy側でHTTP KeepAliveを無効化することで解消できます。
具体的には、「/usr/lib/python2.7/site-packages/neutron_lbaas/drivers/haproxy/templates/」にある「haproxy_base.j2」へ「option httpclose」という文字列を追記することにより、HAProxyの動作を変更します。
defaults log global retries 3 option redispach timeout connect 5000 timeout client 50000 timeout server 50000 option httpclose (←こちらを追記)
修正後、LBaaS v2を再起動して設定を反映させます。
#systemctl restart neutron-lbaasv2-agent
終わりに
今、インフラ部門に求められる役割が大きく変わってきています。スピード感と柔軟性といった昨今のビジネス要求を、いかに確実かつスピーディに解決し、絶え間なく短期間での改善/改良を繰り返していける。そんな姿勢や体制が強く求められています。
これを実現していくための手段の1つとして提案したいのが「ブルーグリーンデプロイメント」です。実際に環境を構築し、内部構造を理解していただいたことで、今後の技術者に求められる変化の一端も感じていただけたのではないかと思います。
筆者紹介
石川智章
ユニアデックス株式会社 どう売ればいいかと考えるOpenStack担当。週末のテニスが楽しみ。
五十嵐祐太
ユニアデックス株式会社 入社以来Linuxの導入/保守を担当。近年は縁あってOpenStackに携わる。
共著:佐々木智一
ユニアデックス株式会社 自社IP電話関連プロダクトなど、ソフトウェア開発を経験した後、近年はSDNやOpenStack、IoTなどに関するR&Dを担当。IKEAでDIYが休日の楽しみ。
共著:田中克弥
ユニアデックス株式会社 パワポと戯れるOpenStack商品企画担当。バックパック片手に世界をぶらり旅。次の旅先を妄想中。
著者より
2017年3月29日に「OpenStack最新情報セミナー(2017年3月)」が開催されます。本セミナーは、日本仮想化技術社が主催するOpenStackを取り巻く企業やパートナー、エンドユーザーをつなぐイベントで、国内企業の最新的な取り組みを紹介しています。この度、ユニアデックスも本セミナーに登壇し、OpenStackによるBlue Green Deploymentの講演を行います。OpenStackに興味のある方はぜひお申し込みください。
→参加受付および詳細は、こちらから(申込開始は2017年3月8日予定)。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
- OpenStackが今求められる理由とは何か? エンジニアにとってなぜ重要なのか?
スピーディなビジネス展開が収益向上の鍵となっている今、システム整備にも一層のスピードと柔軟性が求められている。こうした中、なぜOpenStackが企業の注目を集めているのか? 今あらためてOpenStackのエキスパートに聞く。 - いまさら聞けないOpenStack〜よく知られた「常識」と知っておくべき「常識」
日本OpenStackユーザ会の全面協力を得て、OpenStackを徹底的に深掘りする本特集。第2回はレッドハット クラウドエバンジェリストの中井悦司氏が「OpenStackでできること」「OpenStackを使う上で必要なこと」を分かりやすく解説する。 - いまさら聞けない「DevOps」
最近さまざまなイベントやブログエントリで見かける「DevOps」。この言葉をひもとき、なぜ「Dev」と「Ops」が衝突するのか、その解決に必要な要素とは何かを分かりやすく解説します。 - 継続的デリバリ/デプロイを実現する手法・ツールまとめ
バージョン管理や継続的インテグレーションとも密接に関わる継続的デリバリ/デプロイメントの概要や主なツール、経緯、実践事例を紹介。実践手法として「ブルーグリーン・デプロイメント」「Immutable Infrastructure」が注目だ。 - 現代のソフトウェア/サービス開発で構成管理が重要になった5つの理由
「DevOps」という言葉にもあるように、ソフトウェア構成管理は、インフラ運用に取り入れられるなど、変わりつつある時代だ。本連載では、そのトレンドにフォーカスして、現在のソフトウェア開発に有効な構成管理のノウハウをお伝えする