SlideShare a Scribd company logo
1 of 12
Download to read offline
Copyright (c) GMO Internet, Inc. All Rights Reserved.
GSLBをやってみた
~ Designate & PowerDNS ~
JANOG36 in 北九州
2015/7/17
GMOインターネット株式会社
永井祐弥
Copyright (c) GMO Internet, Inc. All Rights Reserved. 1
自己紹介
名前
永井 祐弥(ながい ゆうや)
所属
GMOインターネット株式会社
システム本部 第1サービス開発部
担当
2012年にGMOへ入社。お名前.com、ConoHaの
DNSや、GMOグループ会社でレジストリシステムの
DNSなど、DNS関連の開発、運用を担当
Copyright (c) GMO Internet, Inc. All Rights Reserved. 2
• Global Server Load Balancing(広域負荷分散)
• 複数の拠点に分散するための技術
– DR対策(災害や、障害対策)
– 地域分散化(トラフィックコントロール)
• GSLBとLBの違い
– システムを同一ネットワーク上に構成する必要がない
– GSLBはDNSを使った実装が多く、プロトコルや通信
データによる振り分けが難しい場合がある
– 分散対象のヘルスチェック結果が反映されるまでに若
干のタイムラグが発生する
– GSLB+LBの組み合わせは可能
GSLBとは
Copyright (c) GMO Internet, Inc. All Rights Reserved. 3
• ConoHaとはGMOのVPSサービス
• 2015年5月18日にOpenStack Junoベースで
開発した 基盤にリニューアル
• DNSaaSもあり、OpenStack Junoでリリース
されたDesignateをベースに独自拡張
• DNSはPowerDNSを採用
• GSLBの3大機能
– GeoIP
– WRR
– Health Check
ConoHaで作成するGSLBの機能
Copyright (c) GMO Internet, Inc. All Rights Reserved. 4
• DNSレコードをAPIで操作するためのコンポーネント
• 正引き(A/AAAA)、逆引き(PTR)、メール
(MX/TXT/SPF)用等のDNSレコードが登録可能
• Designateを単体で使用することはもちろん、
KeyStone連携すると各ドメイン名毎の利用者をアク
セスコントロールすることが出来る
• DesignateはDNSレコードのデータ管理のみ行うた
め、実際の権威DNSサーバはバックエンドとして
BIND9/PowerDNS/NSD4等を利用する(選択可)
OpenStack Designateとは
Copyright (c) GMO Internet, Inc. All Rights Reserved. 5
• BIND/NSDやdjbdnsのゾーンファイルはもち
ろんのこと、RDBMS(MySQL/MariaDB、
PostgreSQLなど)をバックエンドとして利用
できるDNSソフトウェア
• 権威DNS(PowerDNS)と、キャッシュDNS
(PowerDNS Recursor)で分かれている
• C++と、Boostライブラリで開発されており
ソースも読みやすい◎
• 公式のGeoIPバックエンドもありますが、機能
不足だったので使っていません
PowerDNSとは
Copyright (c) GMO Internet, Inc. All Rights Reserved. 6
前提
• OSS (Open Source Software) であること
– 足りていない機能を追加開発
OpenStack Designate
• 誰でも登録出来るようにしたい
– REST APIによるパラメータ受け渡し
– DNSリソースデータのバリデーション
PowerDNS
• フレキシブルデータを扱いたい
– ゾーンファイル再読み込みが不要な実装
– パフォーマンスの確保
選択の理由
Copyright (c) GMO Internet, Inc. All Rights Reserved. 7
• クライアント(キャッシュDNSサーバ)のIPア
ドレスを元に、GeoIPリストから地域を判定する
• 独自のマップテーブル(GeoMAP)を参照して
最も近隣のDNSレコードを選択する
• 改造のポイント
– GeoIPのリストをプロセス内部に持たせる
– GeoMAPのリストを作成する
• 各地域間のコスト値を比較し、低コストのものを選択
GeoIP機能
Copyright (c) GMO Internet, Inc. All Rights Reserved. 8
• DNSラウンドロビンとWRRの違い
– DNSラウンドロビン
• DNSサーバはRRsetsを全て返す
• どのレコードを選択するかはクライアント任せ
– WRR
• 応答時にレコードを決定
• クライアントからは選択できない
• 重みデータと計算方法
– 各レコードのプライオリティを合計し、クエリーID
で剰余を求める
WRR(Weighted Round Robin)機能
Copyright (c) GMO Internet, Inc. All Rights Reserved. 9
• A/AAAAレコードのIPアドレスを監視し、対象
がDown/UpしたときにDNSレスポンスを変化
させる
• 監視ソフトウェアからAPIを呼び出す
– Up→登録
– Down→解除(DNSレコードが削除される)
Health Check機能
Copyright (c) GMO Internet, Inc. All Rights Reserved. 10
• 苦労する/した点
– GeoIPリストの精度
– GeoMAPの定義が難しい
– パフォーマンスが落ちる
– OSS毎の異なる開発言語
• 使えます!
– REST APIでGSLBを設定出来ます
– コントロールパネルからも設定出来ます
• 動きます!
– ConoHaの3リージョン(JP/US/SG)で稼働
– DR対策で安心
というわけでGSLBはじめました
Copyright (c) GMO Internet, Inc. All Rights Reserved. 11
ご清聴ありがとうございました!

More Related Content

Viewers also liked

ベアメタルプロビジョニング(Ironic)について
ベアメタルプロビジョニング(Ironic)についてベアメタルプロビジョニング(Ironic)について
ベアメタルプロビジョニング(Ironic)についてMitsuhiro SHIGEMATSU
 
Miracle Linux seminer Hatohol and ConoHa
Miracle Linux seminer Hatohol and ConoHaMiracle Linux seminer Hatohol and ConoHa
Miracle Linux seminer Hatohol and ConoHaNaoto Gohko
 
2016 1214-dev-night-vol1-in-tanita
2016 1214-dev-night-vol1-in-tanita2016 1214-dev-night-vol1-in-tanita
2016 1214-dev-night-vol1-in-tanitaNaoto Gohko
 
Pola Keselarasan Vokal1.
Pola Keselarasan Vokal1.Pola Keselarasan Vokal1.
Pola Keselarasan Vokal1.son goku
 
OpenStack Ironicによるベアメタルプロビジョニング
OpenStack IronicによるベアメタルプロビジョニングOpenStack Ironicによるベアメタルプロビジョニング
OpenStack IronicによるベアメタルプロビジョニングYuuki Mori
 
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...VirtualTech Japan Inc.
 
2017 0306 Apache OpenWhisk starting
2017 0306 Apache OpenWhisk starting2017 0306 Apache OpenWhisk starting
2017 0306 Apache OpenWhisk startingNaoto Gohko
 
OpenStack ComputingはHyper-Convergedの夢を見るのか?
OpenStack ComputingはHyper-Convergedの夢を見るのか?OpenStack ComputingはHyper-Convergedの夢を見るのか?
OpenStack ComputingはHyper-Convergedの夢を見るのか?Naoto Gohko
 

Viewers also liked (8)

ベアメタルプロビジョニング(Ironic)について
ベアメタルプロビジョニング(Ironic)についてベアメタルプロビジョニング(Ironic)について
ベアメタルプロビジョニング(Ironic)について
 
Miracle Linux seminer Hatohol and ConoHa
Miracle Linux seminer Hatohol and ConoHaMiracle Linux seminer Hatohol and ConoHa
Miracle Linux seminer Hatohol and ConoHa
 
2016 1214-dev-night-vol1-in-tanita
2016 1214-dev-night-vol1-in-tanita2016 1214-dev-night-vol1-in-tanita
2016 1214-dev-night-vol1-in-tanita
 
Pola Keselarasan Vokal1.
Pola Keselarasan Vokal1.Pola Keselarasan Vokal1.
Pola Keselarasan Vokal1.
 
OpenStack Ironicによるベアメタルプロビジョニング
OpenStack IronicによるベアメタルプロビジョニングOpenStack Ironicによるベアメタルプロビジョニング
OpenStack Ironicによるベアメタルプロビジョニング
 
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
GMOインターネット様 発表「OpenStackのモデルの最適化とConoHa, Z.comとGMOアプリクラウドへの適用」 - OpenStack最新情...
 
2017 0306 Apache OpenWhisk starting
2017 0306 Apache OpenWhisk starting2017 0306 Apache OpenWhisk starting
2017 0306 Apache OpenWhisk starting
 
OpenStack ComputingはHyper-Convergedの夢を見るのか?
OpenStack ComputingはHyper-Convergedの夢を見るのか?OpenStack ComputingはHyper-Convergedの夢を見るのか?
OpenStack ComputingはHyper-Convergedの夢を見るのか?
 

Similar to Janog36 ConoHa: Making GSLB - OpenStack Designate and PowerDNS

クラウド2.0のもたらす破壊力と大企業内でのイノベーション
クラウド2.0のもたらす破壊力と大企業内でのイノベーションクラウド2.0のもたらす破壊力と大企業内でのイノベーション
クラウド2.0のもたらす破壊力と大企業内でのイノベーションOsaka University
 
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携についてHinemos
 
[db tech showcase Sapporo 2015] C26:Oracle Standard EditionでPhysical Standby ...
[db tech showcase Sapporo 2015] C26:Oracle Standard EditionでPhysical Standby ...[db tech showcase Sapporo 2015] C26:Oracle Standard EditionでPhysical Standby ...
[db tech showcase Sapporo 2015] C26:Oracle Standard EditionでPhysical Standby ...Insight Technology, Inc.
 
ドコモのクラウドとビックデータJpi版
ドコモのクラウドとビックデータJpi版ドコモのクラウドとビックデータJpi版
ドコモのクラウドとビックデータJpi版Osaka University
 
DDD Alliance レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡
DDD Alliance レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡DDD Alliance レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡
DDD Alliance レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡BIGLOBE Inc.
 
Okuyama説明資料 20120119 ss
Okuyama説明資料 20120119 ssOkuyama説明資料 20120119 ss
Okuyama説明資料 20120119 ssTakahiro Iwase
 
CDNのトレンド2017 セキュリティCDNとマルチCDN
CDNのトレンド2017 セキュリティCDNとマルチCDNCDNのトレンド2017 セキュリティCDNとマルチCDN
CDNのトレンド2017 セキュリティCDNとマルチCDNJ-Stream Inc.
 
DDDを実践できるエンジニアを育成するための取り組みについて
DDDを実践できるエンジニアを育成するための取り組みについてDDDを実践できるエンジニアを育成するための取り組みについて
DDDを実践できるエンジニアを育成するための取り組みについてBIGLOBE Inc.
 
「歩留り」で管理するストリーミング配信 2013 3-21
「歩留り」で管理するストリーミング配信 2013 3-21「歩留り」で管理するストリーミング配信 2013 3-21
「歩留り」で管理するストリーミング配信 2013 3-21Yoichiro Takehora
 
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)Osaka University
 
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語Takashi Someda
 
Fluentd Meetup #2 @外道父 Fluentdを優しく見守る監視事例
Fluentd Meetup #2 @外道父 Fluentdを優しく見守る監視事例Fluentd Meetup #2 @外道父 Fluentdを優しく見守る監視事例
Fluentd Meetup #2 @外道父 Fluentdを優しく見守る監視事例外道 父
 
1Uサーバーから始めるスケーラブルな「mCloud Project Server」
1Uサーバーから始めるスケーラブルな「mCloud Project Server」1Uサーバーから始めるスケーラブルな「mCloud Project Server」
1Uサーバーから始めるスケーラブルな「mCloud Project Server」Satoshi Konno
 
ウェブブラウザの時代は終わるのか 〜スマホアプリとHTML5の未来〜
ウェブブラウザの時代は終わるのか 〜スマホアプリとHTML5の未来〜ウェブブラウザの時代は終わるのか 〜スマホアプリとHTML5の未来〜
ウェブブラウザの時代は終わるのか 〜スマホアプリとHTML5の未来〜Kazuho Oku
 
企業組織論としてのオープンイノベーション
企業組織論としてのオープンイノベーション企業組織論としてのオープンイノベーション
企業組織論としてのオープンイノベーションOsaka University
 
クラウドサービスの安全性を考える
クラウドサービスの安全性を考えるクラウドサービスの安全性を考える
クラウドサービスの安全性を考えるDaisuke Nakazawa
 
Application performance gree_20140908
Application performance gree_20140908Application performance gree_20140908
Application performance gree_20140908Osamu Kurokochi
 
次世代の企業ITインフラを支えるエンジニアとは
次世代の企業ITインフラを支えるエンジニアとは次世代の企業ITインフラを支えるエンジニアとは
次世代の企業ITインフラを支えるエンジニアとはTrainocate Japan, Ltd.
 

Similar to Janog36 ConoHa: Making GSLB - OpenStack Designate and PowerDNS (20)

DDoS対処の戦術と戦略
DDoS対処の戦術と戦略DDoS対処の戦術と戦略
DDoS対処の戦術と戦略
 
クラウド2.0のもたらす破壊力と大企業内でのイノベーション
クラウド2.0のもたらす破壊力と大企業内でのイノベーションクラウド2.0のもたらす破壊力と大企業内でのイノベーション
クラウド2.0のもたらす破壊力と大企業内でのイノベーション
 
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
【HinemosWorld2014】A1-3_01_NTT Comのグローバルクラウド戦略とHinemosとの連携について
 
[db tech showcase Sapporo 2015] C26:Oracle Standard EditionでPhysical Standby ...
[db tech showcase Sapporo 2015] C26:Oracle Standard EditionでPhysical Standby ...[db tech showcase Sapporo 2015] C26:Oracle Standard EditionでPhysical Standby ...
[db tech showcase Sapporo 2015] C26:Oracle Standard EditionでPhysical Standby ...
 
ドコモのクラウドとビックデータJpi版
ドコモのクラウドとビックデータJpi版ドコモのクラウドとビックデータJpi版
ドコモのクラウドとビックデータJpi版
 
DDD Alliance レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡
DDD Alliance レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡DDD Alliance レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡
DDD Alliance レガシーなコードにドメイン駆動設計で立ち向かった5年間の軌跡
 
Okuyama説明資料 20120119 ss
Okuyama説明資料 20120119 ssOkuyama説明資料 20120119 ss
Okuyama説明資料 20120119 ss
 
CDNのトレンド2017 セキュリティCDNとマルチCDN
CDNのトレンド2017 セキュリティCDNとマルチCDNCDNのトレンド2017 セキュリティCDNとマルチCDN
CDNのトレンド2017 セキュリティCDNとマルチCDN
 
B2-4 DNS でいま起きていること
B2-4 DNS でいま起きていることB2-4 DNS でいま起きていること
B2-4 DNS でいま起きていること
 
DDDを実践できるエンジニアを育成するための取り組みについて
DDDを実践できるエンジニアを育成するための取り組みについてDDDを実践できるエンジニアを育成するための取り組みについて
DDDを実践できるエンジニアを育成するための取り組みについて
 
「歩留り」で管理するストリーミング配信 2013 3-21
「歩留り」で管理するストリーミング配信 2013 3-21「歩留り」で管理するストリーミング配信 2013 3-21
「歩留り」で管理するストリーミング配信 2013 3-21
 
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
Nttドコモ事例から見るモバイル&クラウド時代のサービス開発についてr4(public)
 
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
Backlog、Cacoo にみるAWS運用の勘所 - JAWS UG 三都物語
 
Fluentd Meetup #2 @外道父 Fluentdを優しく見守る監視事例
Fluentd Meetup #2 @外道父 Fluentdを優しく見守る監視事例Fluentd Meetup #2 @外道父 Fluentdを優しく見守る監視事例
Fluentd Meetup #2 @外道父 Fluentdを優しく見守る監視事例
 
1Uサーバーから始めるスケーラブルな「mCloud Project Server」
1Uサーバーから始めるスケーラブルな「mCloud Project Server」1Uサーバーから始めるスケーラブルな「mCloud Project Server」
1Uサーバーから始めるスケーラブルな「mCloud Project Server」
 
ウェブブラウザの時代は終わるのか 〜スマホアプリとHTML5の未来〜
ウェブブラウザの時代は終わるのか 〜スマホアプリとHTML5の未来〜ウェブブラウザの時代は終わるのか 〜スマホアプリとHTML5の未来〜
ウェブブラウザの時代は終わるのか 〜スマホアプリとHTML5の未来〜
 
企業組織論としてのオープンイノベーション
企業組織論としてのオープンイノベーション企業組織論としてのオープンイノベーション
企業組織論としてのオープンイノベーション
 
クラウドサービスの安全性を考える
クラウドサービスの安全性を考えるクラウドサービスの安全性を考える
クラウドサービスの安全性を考える
 
Application performance gree_20140908
Application performance gree_20140908Application performance gree_20140908
Application performance gree_20140908
 
次世代の企業ITインフラを支えるエンジニアとは
次世代の企業ITインフラを支えるエンジニアとは次世代の企業ITインフラを支えるエンジニアとは
次世代の企業ITインフラを支えるエンジニアとは
 

More from Naoto Gohko

ODC 2020 : "Rocky 8"
ODC 2020 : "Rocky 8"ODC 2020 : "Rocky 8"
ODC 2020 : "Rocky 8"Naoto Gohko
 
2019 0704 about ConoHa VM migration from C1 to C2
2019 0704 about ConoHa VM migration from C1 to C22019 0704 about ConoHa VM migration from C1 to C2
2019 0704 about ConoHa VM migration from C1 to C2Naoto Gohko
 
serverless openstack 101
serverless openstack 101serverless openstack 101
serverless openstack 101Naoto Gohko
 
2018 04-14-cockroachdb-20-now-available
2018 04-14-cockroachdb-20-now-available2018 04-14-cockroachdb-20-now-available
2018 04-14-cockroachdb-20-now-availableNaoto Gohko
 
2017 0715 osc17do conoha cloud osclient
2017 0715 osc17do conoha cloud osclient2017 0715 osc17do conoha cloud osclient
2017 0715 osc17do conoha cloud osclientNaoto Gohko
 
2015 0228 OpenStack swift; GMO Internet Services
2015 0228 OpenStack swift; GMO Internet Services2015 0228 OpenStack swift; GMO Internet Services
2015 0228 OpenStack swift; GMO Internet ServicesNaoto Gohko
 
Open stack swift is too Enterprise? 2014/12/01 advent cal
Open stack swift is too Enterprise?  2014/12/01 advent calOpen stack swift is too Enterprise?  2014/12/01 advent cal
Open stack swift is too Enterprise? 2014/12/01 advent calNaoto Gohko
 
TechOYAJI 2014 tokyo summer LT; CentOS7 and RDO Icehouse OpenStack
TechOYAJI 2014 tokyo summer LT;  CentOS7 and RDO Icehouse OpenStackTechOYAJI 2014 tokyo summer LT;  CentOS7 and RDO Icehouse OpenStack
TechOYAJI 2014 tokyo summer LT; CentOS7 and RDO Icehouse OpenStackNaoto Gohko
 
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API DragonJOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API DragonNaoto Gohko
 
OpenStack base public cloud service by GMO Internet Inc., at 2013/12/12 Okin...
OpenStack base public cloud service by GMO Internet Inc.,  at 2013/12/12 Okin...OpenStack base public cloud service by GMO Internet Inc.,  at 2013/12/12 Okin...
OpenStack base public cloud service by GMO Internet Inc., at 2013/12/12 Okin...Naoto Gohko
 
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...Naoto Gohko
 
2012 OpenStack + KVM = onamae.com VPS #2 ~ vnc and snapshot ~
2012 OpenStack + KVM = onamae.com VPS #2 ~ vnc and snapshot ~2012 OpenStack + KVM = onamae.com VPS #2 ~ vnc and snapshot ~
2012 OpenStack + KVM = onamae.com VPS #2 ~ vnc and snapshot ~Naoto Gohko
 
2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvm
2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvm2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvm
2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvmNaoto Gohko
 

More from Naoto Gohko (13)

ODC 2020 : "Rocky 8"
ODC 2020 : "Rocky 8"ODC 2020 : "Rocky 8"
ODC 2020 : "Rocky 8"
 
2019 0704 about ConoHa VM migration from C1 to C2
2019 0704 about ConoHa VM migration from C1 to C22019 0704 about ConoHa VM migration from C1 to C2
2019 0704 about ConoHa VM migration from C1 to C2
 
serverless openstack 101
serverless openstack 101serverless openstack 101
serverless openstack 101
 
2018 04-14-cockroachdb-20-now-available
2018 04-14-cockroachdb-20-now-available2018 04-14-cockroachdb-20-now-available
2018 04-14-cockroachdb-20-now-available
 
2017 0715 osc17do conoha cloud osclient
2017 0715 osc17do conoha cloud osclient2017 0715 osc17do conoha cloud osclient
2017 0715 osc17do conoha cloud osclient
 
2015 0228 OpenStack swift; GMO Internet Services
2015 0228 OpenStack swift; GMO Internet Services2015 0228 OpenStack swift; GMO Internet Services
2015 0228 OpenStack swift; GMO Internet Services
 
Open stack swift is too Enterprise? 2014/12/01 advent cal
Open stack swift is too Enterprise?  2014/12/01 advent calOpen stack swift is too Enterprise?  2014/12/01 advent cal
Open stack swift is too Enterprise? 2014/12/01 advent cal
 
TechOYAJI 2014 tokyo summer LT; CentOS7 and RDO Icehouse OpenStack
TechOYAJI 2014 tokyo summer LT;  CentOS7 and RDO Icehouse OpenStackTechOYAJI 2014 tokyo summer LT;  CentOS7 and RDO Icehouse OpenStack
TechOYAJI 2014 tokyo summer LT; CentOS7 and RDO Icehouse OpenStack
 
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API DragonJOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
JOSUG2014 OpenStack 4th birthday party in Japan; the way of OpenStack API Dragon
 
OpenStack base public cloud service by GMO Internet Inc., at 2013/12/12 Okin...
OpenStack base public cloud service by GMO Internet Inc.,  at 2013/12/12 Okin...OpenStack base public cloud service by GMO Internet Inc.,  at 2013/12/12 Okin...
OpenStack base public cloud service by GMO Internet Inc., at 2013/12/12 Okin...
 
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
OpenStack + KVM + IPv6 = oname.com; Next Folsom/Grizzly Service development s...
 
2012 OpenStack + KVM = onamae.com VPS #2 ~ vnc and snapshot ~
2012 OpenStack + KVM = onamae.com VPS #2 ~ vnc and snapshot ~2012 OpenStack + KVM = onamae.com VPS #2 ~ vnc and snapshot ~
2012 OpenStack + KVM = onamae.com VPS #2 ~ vnc and snapshot ~
 
2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvm
2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvm2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvm
2012 OSC Kyoto / 2012 OSC Tokyo Fall - OpenStack vps kvm
 

Janog36 ConoHa: Making GSLB - OpenStack Designate and PowerDNS

  • 1. Copyright (c) GMO Internet, Inc. All Rights Reserved. GSLBをやってみた ~ Designate & PowerDNS ~ JANOG36 in 北九州 2015/7/17 GMOインターネット株式会社 永井祐弥
  • 2. Copyright (c) GMO Internet, Inc. All Rights Reserved. 1 自己紹介 名前 永井 祐弥(ながい ゆうや) 所属 GMOインターネット株式会社 システム本部 第1サービス開発部 担当 2012年にGMOへ入社。お名前.com、ConoHaの DNSや、GMOグループ会社でレジストリシステムの DNSなど、DNS関連の開発、運用を担当
  • 3. Copyright (c) GMO Internet, Inc. All Rights Reserved. 2 • Global Server Load Balancing(広域負荷分散) • 複数の拠点に分散するための技術 – DR対策(災害や、障害対策) – 地域分散化(トラフィックコントロール) • GSLBとLBの違い – システムを同一ネットワーク上に構成する必要がない – GSLBはDNSを使った実装が多く、プロトコルや通信 データによる振り分けが難しい場合がある – 分散対象のヘルスチェック結果が反映されるまでに若 干のタイムラグが発生する – GSLB+LBの組み合わせは可能 GSLBとは
  • 4. Copyright (c) GMO Internet, Inc. All Rights Reserved. 3 • ConoHaとはGMOのVPSサービス • 2015年5月18日にOpenStack Junoベースで 開発した 基盤にリニューアル • DNSaaSもあり、OpenStack Junoでリリース されたDesignateをベースに独自拡張 • DNSはPowerDNSを採用 • GSLBの3大機能 – GeoIP – WRR – Health Check ConoHaで作成するGSLBの機能
  • 5. Copyright (c) GMO Internet, Inc. All Rights Reserved. 4 • DNSレコードをAPIで操作するためのコンポーネント • 正引き(A/AAAA)、逆引き(PTR)、メール (MX/TXT/SPF)用等のDNSレコードが登録可能 • Designateを単体で使用することはもちろん、 KeyStone連携すると各ドメイン名毎の利用者をアク セスコントロールすることが出来る • DesignateはDNSレコードのデータ管理のみ行うた め、実際の権威DNSサーバはバックエンドとして BIND9/PowerDNS/NSD4等を利用する(選択可) OpenStack Designateとは
  • 6. Copyright (c) GMO Internet, Inc. All Rights Reserved. 5 • BIND/NSDやdjbdnsのゾーンファイルはもち ろんのこと、RDBMS(MySQL/MariaDB、 PostgreSQLなど)をバックエンドとして利用 できるDNSソフトウェア • 権威DNS(PowerDNS)と、キャッシュDNS (PowerDNS Recursor)で分かれている • C++と、Boostライブラリで開発されており ソースも読みやすい◎ • 公式のGeoIPバックエンドもありますが、機能 不足だったので使っていません PowerDNSとは
  • 7. Copyright (c) GMO Internet, Inc. All Rights Reserved. 6 前提 • OSS (Open Source Software) であること – 足りていない機能を追加開発 OpenStack Designate • 誰でも登録出来るようにしたい – REST APIによるパラメータ受け渡し – DNSリソースデータのバリデーション PowerDNS • フレキシブルデータを扱いたい – ゾーンファイル再読み込みが不要な実装 – パフォーマンスの確保 選択の理由
  • 8. Copyright (c) GMO Internet, Inc. All Rights Reserved. 7 • クライアント(キャッシュDNSサーバ)のIPア ドレスを元に、GeoIPリストから地域を判定する • 独自のマップテーブル(GeoMAP)を参照して 最も近隣のDNSレコードを選択する • 改造のポイント – GeoIPのリストをプロセス内部に持たせる – GeoMAPのリストを作成する • 各地域間のコスト値を比較し、低コストのものを選択 GeoIP機能
  • 9. Copyright (c) GMO Internet, Inc. All Rights Reserved. 8 • DNSラウンドロビンとWRRの違い – DNSラウンドロビン • DNSサーバはRRsetsを全て返す • どのレコードを選択するかはクライアント任せ – WRR • 応答時にレコードを決定 • クライアントからは選択できない • 重みデータと計算方法 – 各レコードのプライオリティを合計し、クエリーID で剰余を求める WRR(Weighted Round Robin)機能
  • 10. Copyright (c) GMO Internet, Inc. All Rights Reserved. 9 • A/AAAAレコードのIPアドレスを監視し、対象 がDown/UpしたときにDNSレスポンスを変化 させる • 監視ソフトウェアからAPIを呼び出す – Up→登録 – Down→解除(DNSレコードが削除される) Health Check機能
  • 11. Copyright (c) GMO Internet, Inc. All Rights Reserved. 10 • 苦労する/した点 – GeoIPリストの精度 – GeoMAPの定義が難しい – パフォーマンスが落ちる – OSS毎の異なる開発言語 • 使えます! – REST APIでGSLBを設定出来ます – コントロールパネルからも設定出来ます • 動きます! – ConoHaの3リージョン(JP/US/SG)で稼働 – DR対策で安心 というわけでGSLBはじめました
  • 12. Copyright (c) GMO Internet, Inc. All Rights Reserved. 11 ご清聴ありがとうございました!