Linuxシステムをもっと安全で便利に! ~ 冗長化

2015年9月19日
OSC 2015 Hiroshima
Linuxシステムをもっと安全で便利に!
~ 冗長化システムのご紹介、PowerDNSも冗長化しました!~
株式会社デージーネット
OSS研究室 大野 公善
株式会社デージーネット
プロフィール
社員数
44名
本社
愛知県名古屋市名東区
東京営業所 東京都中央区日本橋
企業理念
より良い技術で、
インターネット社会の
便利と安心に貢献します。
2
事業内容
オープンソースソフトウェアを中心とした
システムインテグレーション
専門的技術サービスの提供
(全国のISP、ネットサービス、企業等)
設計、構築、運用、管理、保守まですべてをトータルに提供
OSSのカスタマイズによるフルオーダー型のシステム構築
特徴
設計、構築、運用、保守、管理までのトータルサービス
運用管理をしているサーバの数
1,086台
24時間管理しているサーバの数
925台
障害保守をしているサーバの数
529台
このうちのクラスタサーバの数
101セット
(2011年4月現在)
3
書籍出版
主に秀和システムから書籍を出版
「高信頼システム構築標準教科書」 LPI-Japan
4
PowerDNS
~ オープンソースDNSソフトウェア ~
5
PowerDNSとは?
オープンソースのDNSソフトウェア
権威DNSサーバとキャッシュDNSサーバをサポート
別々の異なったプロセスとして起動
様々なバックエンドを利用可能
MariaDB
PostgreSQL
Oracle
SQLite
LDAP 等
管理ウェブインタフェースを利用可能 (Poweradmin等)
6
システム構成イメージ
インターネット
DNSクエリ
PowerDNS
SQL
バックエンドDB
(MariaDB等)
SQL
管理ウェブUI
(Poweradmin等)
DNS管理者
HTTP
7
デモ
PowerDNS統計情報表示
Poweradmin
のデモをご覧ください
8
負荷分散構成案
Poweradmin
MariaDB
PowerDNS
PowerDNS
PowerDNS
DNSクエリ
インターネット
9
高速DNSシステム構成案
Poweradmin
PostgreSQL
マスタDNS (管理用サーバ)
PowerDNS
DNSゾーン転送
Knot DNS
NSD
NSD
スレーブDNS (クエリ用サーバ)
DNSクエリ
インターネット
10
主な権威DNSサーバのベンチマーク
1 秒間あたりのクエリー数( query per second )
80000
70000
60000
50000
40000
30000
20000
10000
0
BIND
NSD
knotDNS
PowerDNS
PowerDNS
(バックエンド :MySQL ) (バックエンド :LDAP )
11
最小構成
~ 2台のサーバでHAクラスタ ~
12
基本的な構成
特別なハードウェアは不要!
Linixが動作するサーバ2台だけで
冗長化システムを構築できます。
13
ハードウェア構成
LAN
NIC
Linux OS
データ
アクティブサーバ
NIC
NIC
NIC
NIC
NIC
ミラーリング
Linux OS
データ
スタンバイサーバ
14
ソフトウェア構成
アプリケーション
アプリケーション
Pacemaker + Corosync + DRBD
Linux
Linux
アクティブサーバ
スタンバイサーバ
15
HAクラスタ運用イメージ
[通常運用中]
[障害発生中]
VIP
VIP
サービス1
サービス1
障害発生
サービス2
サービス2
OS
OS
障害
発生
OS
データ
データ
データ
データ
アクティブ
サーバ
スタンバイ
サーバ
アクティブ
サーバ
スタンバイ
サーバ
OS
16
HAクラスタ運用イメージ
[復旧作業中]
[通常運用中]
VIP
VIP
サービス1
サービス1
サービス2
障害復旧
サービス2
OS
OS
OS
OS
データ
データ
データ
データ
アクティブ
サーバ
スタンバイ
サーバ
アクティブ
サーバ
スタンバイ
サーバ
データ同期
17
導入事例: PowerDNSの冗長化
サービス提供IPアドレス
サービス提供IPアドレス
Poweradmin
PowerDNS
Poweradmin
PHP
PowerDNS
Apache
MariaDB
MriaDBデータ
PHP
Apache
ディスク
同期
MariaDB
DRBD
DRBD
Pacemaker + Corosync
Pacemaker + Corosync
Linux
アクティブサーバ
死活
監視
Linux
スタンバイサーバ
18
導入事例: LAMPサーバの冗長化
サービス提供IPアドレス
サービス提供IPアドレス
ウェブアプリケーション
ウェブアプリケーション
Apache
ウェブコンテンツ
MySQLデータ
PHP
MySQL
Apache
PHP
MySQL
ディスク
同期
DRBD
DRBD
Pacemaker + Corosync
Pacemaker + Corosync
Linux
アクティブサーバ
死活
監視
Linux
スタンバイサーバ
19
導入事例: DHCPサーバの冗長化
サービス提供IPアドレス
サービス提供IPアドレス
DHCPadmin
DHCPadmin
ISC-DHCP
ISC-DHCP
Apache
Apache
ディスク
同期
DHCPリース情報
DRBD
DRBD
Pacemaker + Corosync
Pacemaker + Corosync
Linux
アクティブサーバ
死活
監視
Linux
スタンバイサーバ
20
DHCPadmin
ISC-DHCPの設定を行うためのウェブインタフェース
DHCP設定(共有ネットワーク, サブネット等)をウェブインタ
フェースから行うことができます。
DHCPv4, DHCPv6に対応しています。
再起動
ウェブインタフェースから操作
IPアドレス
のリース
DHCPadmin
ISC-DHCP
編集
参照
dhcpd.conf
21
DHCPadmin
メニュー
クライアント検索
共有ネットワーク設定
クライアント設定
サブネット設定
22
導入事例: オールインワン 冗長化メールサーバ
サービス提供IPアドレス
Postfix
Apache
ディスク
同期
DRBD
DRBD
Pacemaker + Corosync
Pacemaker + Corosync
Linux
アクティブサーバ
死活
監視
OpenLDAP
postLDAPadmin
Dovecot
OpenLDAP
メールボックス
LDAPデータ
Postfix
Apache
Dovecot
postLDAPadmin
サービス提供IPアドレス
Linux
スタンバイサーバ
23
postLDAPadmin
メールサーバが利用するLDAPのデータを管理するための
ウェブインタフェースです。
メールアカウントの追加や削除、メール転送設定、パス
ワード変更等の操作をウェブブラウザから行うことができ
ます。
LDAPサーバ
メールサーバ
インターネット
メールアカウント
情報の参照
LDAP
メールアカウント
情報の登録・編集
管理者
postLDAPadmin
24
postLDAPadmin (管理者インタフェース)
メニュー
追加
一覧表示
CSV一括処理
25
postLDAPadmin (利用者インタフェース)
パスワード変更
メール転送設定
26
導入事例: CloudStack管理サーバの冗長化
KVM
KVM
Linux
Linux
ハイパーバイザ 1
ハイパーバイザ 2
サービス提供IPアドレス
サービス提供IPアドレス
CloudStack
管理サーバ
MySQL
CloudStack
管理サーバ
NFS
サーバ
仮想マシンイメージ
Apache
ISOイメージ
スナップショット
DRBD
MySQLデータ
ディスク
同期
アクティブサーバ
Apache
DRBD
Pacemaker + Corosync
Linux
NFS
MySQL サーバ
Pacemaker + Corosync
死活
監視
Linux
スタンバイサーバ
27
負荷分散構成
~ Linuxによるロードバランサ ~
28
複数サーバへの負荷分散構成
ロードバランサ
Linixが動作するサーバ2台で
冗長化ロードバランサを構築できます。
ウェブサーバ
メールサーバ 等
29
導入事例: ロードバランサの冗長化 keepalived
マスタサーバ
サービス提供IPアドレス
LVS
バックアップサーバ
VRRP
サービス提供IPアドレス
keepalived
keepalived
Linux
Linux
サービス監視
負荷分散
リアルサーバ
LVS
リアルサーバ
サービス監視
リアルサーバ
30
ILUKA
LVS
更新
keepalived
リロード
参照
参照
keepalived.conf
ILUKA
更新
参照・設定
管理者
31
ILUKA
バーチャルサーバ一覧
リアルサーバ一覧
32
デージーネットのOSS
34
デージーネットが作成したOSS
さんま
SaMMA (SAfety Mail gateway with Milter Api)
めざし
Messasy(Message Archive System)
しらす
SyLAS (SYsLog Access System)
めだか
MEDACA
(Multi-device Enabled Directory Accessible CAlendar)
かます
CuMAS (Customer's Mail Aggregation System)
まぐろ
MagLo (MAil maGazine LOader)
35
さんま
SaMMA (SAfety Mail gateway with Milter Api)
機能
メールの添付ファイルを自動的に暗号化するためのメール
ゲートウェイです。
暗号化していないファイルを添付してメールを送信すると、宛
先には添付ファイルが暗号化(パスワード付きZIP)されて送信
されます。
暗号化パスワードは、送信者にメールで通知されます。
連携するOSS
Postfix
OpenLDAP
Apache
PHP
36
さんま: メール添付ファイル暗号化フロー
メール送信者
パスワード
通知
暗号化添付ファイル
付きメール
メールサーバ
Postfix + SaMMA
添付ファイル
付きメール
パスワード
通知
メール受信者
37
さんま: SaMMAadmin
SaMMA用管理ウェブインタフェースです。
受信者毎に、個別パスワード/ランダムパスワード、暗号化
する/しない等の設定を行うことができます。
SaMMAadmin
利用者用ウェブインタフェース
38
めざし
Messasy (Message Archive System)
機能
メールの保存を行うためのソフトウェアです。
メールサーバを通過するすべてのメールを、メールボックスと
は別の領域に保存することができます。
連携するOSS
Postfix
Dovecot
Apache
PHP
OpenLDAP
39
めざし: メール保存のフロー
メールサーバ
Postfix + Messasy
外部宛
メール送信
外部宛
メール送信
外
メールボックス
配信
内部宛
メール受信
メール
保存
メール
保存
メールボックス
メール保存領域
管理者が保存メールを検索・参照
40
めざし: 保存メールの形式
メール保存形式
Maildir(プレーンテキスト)
MTAで使用されるMaildir形式で保存します。
IMAPサーバを通して、IMAPクライアントから保存メールを参照す
ることができます。
使い慣れたMUAから保存メールを検索、参照することができます。
GZIP
ZGIP圧縮ファイルで保存します。
メール毎にひとつのGZIPファイルが作成されます。
パスワード付きZIP
パスワード付きZIPファイルで保存します。
メール毎にひとつのZIPファイルが作成されます。
41
しらす
SyLAS (SYsLog Access System)
機能
システムのログを検索するためのウェブインタフェースです。
SYSLOGサーバ(rsyslog)がデータベースに保存したログを、
ウェブインタフェースから検索・参照することができます。
ホストやSYSLOGファシリティ等を組み合わせた検索を行うこ
とができます。
連携するOSS
rsyslog
Apache
PHP
MySQL,MariaDB
43
しらす: システム構成
SYSLOG
SYSLOG
ログ確認!
SYSLOG
rsyslog
SyLAS
MySQL
44
しらす: 簡易ログ検索
検索条件を入力して
検索ボタンを押すと
検索結果が表示されます
45
しらす: ログ監視 (一覧)
キーワードに指定した文字がログに出力されると
通知メールが送信されます
46
しらす: ログ監視 (設定)
47
めだか
MEDACA
(Multi-device Enabled Directory Accessible CAlendar)
機能
カレンダー機能を提供するサーバソフトウェアです。
スマートフォンやPC等のCalDAVに対応したカレンダーソフ
トウェアを使用して、スケジュール管理を行うことができま
す。
連携するOSS
Apache
PHP
sabre/dav
OpenLDAP
48
めだか: システム構成
Apache
MEDACA
sabre/dav
calendar
calendar lib
LDAP
サーバ
49
めだか: 利用例
Evolution
での使用例
[その他のカレンダークライアント]
Thunderbird + Lightning
AgenDAV (ウェブアプリケーション)
iPhone カレンダーアプリ
Android カレンダーアプリ
※CalDAVに対応したクライアントから接続できます。
50
かます
CuMAS (Customer's Mail Aggregation System)
機能
問い合わせメールの進捗管理を行なうためのウェブインタ
フェースです。
ヘルプデスク業務が円滑に運用できるようになります。
連携するOSS
Postfix
PostgreSQL
Apache
Perl/PHP
51
かます: 運用フロー
メールサーバ
お問い合わせメールを
CuMASに転送
お問い合わせ
メール
オペレータが受け付けた
お問い合わせをCuMAS
に登録
CuMAS
担当者がお問い合わせ
を対応
担当者
コールセンター
受付
52
かます: ウェブインタフェース
トップ画面
お問い合わせ対応の進捗が
一覧表示されます
近日公開!
詳細表示画面
問い合わせ日時やメール本文
を参照できます
53
クラスタ.jp
http://クラスタ.jp/
56
OSC Hiroshima 2015
デージーネットのブースでのデモンストレーション
HAクラスタ
Pacemaker + Corosync + DRBD
PowerDNS
デージーネット製OSS
ILUKA
57
ご清聴ありがとうございました
58