SlideShare ist ein Scribd-Unternehmen logo
1 von 27
SE(SE One)をもっと有効活用しよう!
セントラル短資FX株式会社
清水 純
はじめに
今回いくつか製品を紹介させていただきますが、記載内
容については私個人の感想ですので特定の企業や製品
について宣伝するものではありません。
また、セントラル短資FX株式会社が内容を保証するもの
でもありません。
あくまでも参考資料としてご利用ください。
2
自己紹介
セントラル短資FX株式会社
(http://www.central-tanshifx.com/)
清水 純(jun.shimizu@central-tanshifx.com)
インフラ(ネットワーク以外)関連全般(ミドルウェア含む)の製品
選定から検証/導入/運用までほぼすべてを担当しています。
最近はVMware Horizon View関連の作業に忙殺されていま
す。。。
3
会社紹介
• インターネット上でのFXサービスを提供しています。
4
ここから本題です。
CPUの性能(コア数)が上がり、安価になったメモリや、SSDやPCIe
SSDの登場などサーバの全体の性能が向上しています。
こういった前提からサーバのリプレイスやサービスの更改タイミング
でダウンサイジングを検討されるかたもいらっしゃると思います。
そこで、いくつか選択肢があると思います。
1.サーバの最新機種への入替え、上物はそのまま。
2.EE→SE(SE One)への入替えを検討する。
3.コスト削減を目標にOSS-DBへの乗り換えを検討する。
等々あるかと思いますが、どれを選択しますか?
5
1. サーバを入替えてそのまま使用する場合
最小限のアプリの修正等で済むため、工数は最小限に抑えられる。
ただし、最近はCPUコア数が飛躍的に増加しているので追加ライ
センスを購入する必要があるかもしれません。
この問題を回避するためには、
・ DBアプライアンスや仮想化を駆使してライセンスコスト
を下げる。
→ せっかく購入したハードの性能を生かしきれない。
性能が足りなければ結局追加ライセンスを購入する必要がある。
・ 複数のDB環境を統合する
→ そもそも統合可能なDB環境がそんなに存在するか?
12cのプラガブルDB機能で比較的簡単に実装可能となったが、
Multitenantオプションが別途必要
6
2. EE→SE(SE One)への入替えを検討する場合
EEの標準機能やPartitioningといったオプション製品を使用してい
た場合、当然使用できなくなりますのでその機能の補完や代替が
必要となります。
それでは、SEとSE Oneのどちらを選択しますか?
・ SE を選択する理由
→ RAC化が必須の場合。おもにダウンタイムの短縮とリソースの有効活用
をしたいといった場合のみの選択肢だと思っています。
(普通に使う上で、4CPUもの処理を必要とはしませんし、そこまでSEでは
なかなか使いこなせないです)
・SE Oneを選択する理由
→ RAC化が必須ではない場合。SEでは足りない機能はサードパーティ製品
やOSS製品で代用。今日はこの部分についてお話します。
7
3. コスト削減を目標にOSS-DBへ乗り換える場合
3つの選択肢では一番ハードルが高いと思っています。
対応アプリの修正や移行計画、単体/結合テスト等を十分に練れ
ていないと失敗しますし、工数が他のパターンに比べて大きくなり
がちです。
採用するOSS-DBにかなり詳しい人員がいないと中小企業におい
ては自社内で完結させるのは無理があります。
素直に、移行を手伝ってくれるパートナーを探しましょう。
結果として、一時費用が膨らみ、OSS-DBを採用したコスト削減が
相殺される可能性があります。
もちろん、長期でみればコスト削減効果は期待できます。
8
SE Oneの活用方法1(可用性の担保)
DBの冗長化方法として、RAC/HA/レプリケーション・2
フェーズコミット(2PC)等々あるかと思います。
・RAC
- SEもしくはEE+RACオプションが必要(SE One不可)
・HA
- 多少(数分)のダウンタイムが許容できる。分散させるほど負荷
が高くない場合等々。
・レプリケーション・2PC
- 更新頻度に比べて参照頻度が高い場合等々
ここでは、HA環境を安価に作る方法についてご紹介します。
9
HA環境とは?
通常はActive/Standby構成のことを指します。
共有ディスクを使用して、データはすべて共有ディスク上
においてサーバ障害に対応するという構成です。
比較的シンプルな構成ですが、高可用性を担保するため
には信頼性の高い共有ディスク(SAN/iSCSI/NAS)が必要
であり、別途クラスタソフトも必要となります。
10
安価に構築する方法は?
共有ディスク
DRBD(Distributed Replicated Block Device)を使用することで、
擬似的に共有ディスク環境を構築することができます。
- http://www.drbd.jp/
クラスタソフト
PacemakerとCorosync/Heartbeatを利用することで
商用製品にも劣らない管理/運用が可能です。
- http://linux-ha.sourceforge.jp/wp/
これらオープンソースのソフトウェアを組み合わせて安価に
構築することが可能です。
11
デモ構成(H/Wイメージ)
12
bonding bonding
InterConenct
&
DRBD
192.168.1.11 192.168.1.12
10.0.1.11 10.0.1.12
VIP 10.0.1.10
dev1 dev2
/oradata /oradata
デモ構成(ソフトウェアイメージ)
13
Oracle Linux
Primary
xfs
Master
VIP
OS
Messaging
Resource
Manager
DRBD
Filesystem
Oracle
Service
Address
Oracle Linux
Secondary
Slave
Cluster
Stack
Services
Corosync
Pacemaker
Sync
Pacemakerクラスタの構成要素
14
・ リソース:監視対象のアプリケーション単位
- primitive リソース:制御対象のアプリケーション
- groupリソース:上記primitiveの集まり
- cloneリソース:両系で同じように稼働するリソース
- master/slaveリソース : DRBDやMySQLレプリケーション等
・ 制約条件:リソースの配置先や起動順序の制御
- location:配置先ノードの制御
- colocation:同居制御
- order:起動・終了順序制御
※ groupリソースは colocation + order を自動的に設定したもの
デモ構成(クラスタ依存関係)
15
DRBD/Primary
clone
Slave
ping ping
vip_check
Slave
Slave
Slave
Slave
master/slave
primitive
primitive
primitive
primitive
primitive
リソース種別
制約条件
DRBD/Secondary
xfs
vip
Oracle Instance
Oracle Listener
デモ構成(LCMC:GUI管理ツール)
16
デモ
17
SE Oneの活用方法2(DR、レプリケーション)
Active Data GuardやGolden Gateを使用するためにはEE
が必須のオプション製品です。これらの機能を使いたい場
合にはEEが必要では?
→ そんなことはありません。以下の製品で代用できます。
・ Active Data Guard代替製品
- Dbvisit Standby
(http://www.insight-tec.com/products/dbvisit)
- Standby Express
(http://www.ydc.co.jp/solution/standby/0.html)
- DRBD Proxy
(http://www.3ware.co.jp/product/linbit-cluster-support/drbd-proxy)
ちょっと異なりますが、DRへの適用が可能。DRBDのWAN対応版。
18
SE Oneの活用方法2(DR、レプリケーション)
・ Golden Gate代替製品
- Attunity
(http://www.insight-tec.com/products/Attunity/index.html)
- SharePlex for Oracle
(http://www.questsoftware.jp/shareplex-for-oracle/)
(http://www.bakbone.co.jp/support/lesson_quest_db/lsdb201111.html)
SharePlexは6年ほど前から弊社でも使用しています。
複数のソースDBから1つのターゲットDBへデータを集約し、BI
ツールを活用するためであったり、社員が(許可された範囲内で)
自由にデータにアクセスすることを目的とした参照専用DBを構築
/運用するために活用しています。
19
SE Oneの活用方法3(監査)
DBA監査や標準監査であればSEでも使用可能ですが、ファイングレ
イン監査やAudit Vaultを使用するのであればEEが必要となります。
個人的には上記はどれも使い勝手がいまいちなので、監査要件が
ある場合にはサードパーティ製品の採用をお勧めします。
- PISO(メモリキャプチャ型)
(http://www.insight-tec.com/products/piso/index.html)
- Chakra(ネットワークキャプチャ型)
(http://www.jsys.co.jp/solution/chakra.html/)
- Audit Master(Oracleの監査証跡機能を活用)
(http://www.aqua-systems.co.jp/products/auditmaster/)
- IPLocks(Oracleの監査証跡機能を活用)
(http://www.iplocks.co.jp/index.html)
20
SE Oneの活用方法3(監査)
- SecureSphere DAM(ネットワークキャプチャ&エージェント型)
(http://www.imperva.jp/products/database_security.asp)
弊社で採用し、運用で活用している製品です。
DAM(Database Activity Monitoring)以外にも、DBF(DataBase Firewall)や
WAF(Web Application Firewall)等の製品もあります。
アプライアンス製品とバーチャルアプライアンス製品があり、アプライ
アンス製品は性能が頭打ちになってしまった経験があるので、導入
の敷居はちょっと上がりますが監査対象が多い、流れるパケット量が
多いといった場合はVMawre上で動作するバーチャルアプライアンス
での導入を個人的にはお薦めします。
21
デモで使用したDRBD設定ファイル
22
resource oradata {
device /dev/drbd1;
disk /dev/sdb1;
meta-disk internal;
handlers {
split-brain "/usr/local/lib/drbd/notify-split-brain.sh root";
fence-peer "/usr/local/lib/drbd/crm-fence-peer.sh";
after-resync-target "/usr/local/lib/drbd/crm-unfence-peer.sh";
}
net {
data-integrity-alg md5;
after-sb-0pri discard-zero-changes;
after-sb-1pri discard-secondary;
max-buffers 8000;
max-epoch-size 8000;
sndbuf-size 0;
}
DRBDリソース用設定ファイル(/etc/drbd.d/oradata.res)
デモで使用したDRBD設定ファイル(続き)
23
syncer {
verify-alg md5;
csums-alg md5;
}
disk {
on-io-error detach;
no-disk-barrier;
no-disk-flushes;
fencing resource-only;
}
on dev1 {
address 192.168.1.11:7789;
}
on dev2 {
address 192.168.1.12:7789;
}
}
デモで使用したPacemaker設定ファイル
24
node dev1
node dev2
primitive pingd ocf:pacemaker:ping 
params multiplier="100" host_list="10.0.1.254" 
operations $id="pingd-operations" 
op start interval="0" timeout="60" on-fail="restart" 
op stop interval="0" timeout="20" on-fail="block" 
op monitor interval="10" timeout="60" on-fail="restart" start-delay="0" 
op reload interval="0" timeout="100"
primitive res_drbd ocf:linbit:drbd 
params drbd_resource="oradata" 
operations $id="drbd_oradata-operations" 
op start interval="0" timeout="240" 
op promote interval="0" timeout="90" 
op demote interval="0" timeout="90" 
op stop interval="0" timeout="100" 
op monitor interval="10" timeout="20" start-delay="0" 
op notify interval="0" timeout="90”
Pacemaker用設定(# crm configure show)
デモで使用したPacemaker設定ファイル(続き)
25
primitive res_fs_oradata ocf:heartbeat:Filesystem 
params device="/dev/drbd1" directory="/opt/oracle" fstype="xfs" 
op start interval="0" timeout="60" 
op stop interval="0" timeout="60" 
op monitor interval="20" timeout="40" start-delay="0" 
op notify interval="0" timeout="60"
primitive res_oracle ocf:heartbeat:oracle 
params sid="ora112" home="/opt/oracle/app/product/11.2.0/db" user="oracle"
shutdown_method="immediate" 
operations $id="res_oracle-operations" 
op start interval="0" timeout="120" 
op stop interval="0" timeout="120" 
op monitor interval="20" timeout="60" start-delay="0" 
op methods interval="0" timeout="5"
primitive res_oralsnr ocf:heartbeat:oralsnr 
params sid="ora112" home="/opt/oracle/app/product/11.2.0/db" user="oracle" listener="listener" 
operations $id="res_oralsnr-operations" 
op start interval="0" timeout="120" 
op stop interval="0" timeout="120" 
op monitor interval="10" timeout="30" start-delay="0" 
op methods interval="0" timeout="5"
デモで使用したPacemaker設定ファイル(続き)
26
primitive res_vip ocf:heartbeat:IPaddr2 
params ip="10.0.1.10" nic="bond0" cidr_netmask="24" broadcast="10.0.1.255" iflabel="1" 
op start interval="0" timeout="20" 
op stop interval="0" timeout="20" 
op monitor interval="0" timeout="20" start-delay="0"
primitive vip_check ocf:heartbeat:VIPcheck 
params target_ip="10.0.1.10" 
operations $id="vip_check-operations" 
op start interval="0" timeout="60" 
op stop interval="0" timeout="60" 
op monitor interval="10" timeout="60" start-delay="0"
group rg_oracle vip_check res_fs_oradata res_vip res_oracle res_oralsnr 
meta target-role="Started"
ms ms_drbd res_drbd 
meta clone-max="2" notify="true" target-role="Started"
clone cl_pingd pingd 
meta clone-max="2" target-role="Started"
location master_location_oracle rg_oracle 
rule $id="master_location_oracle-rule" -inf: not_defined pingd or pingd lt 100
colocation col_res_drbd-oracle inf: rg_oracle:Started ms_drbd:Master
order ord_oracle_after_drbd inf: ms_drbd:promote rg_oracle:start
デモで使用したPacemaker設定ファイル(続き)
27
property $id="cib-bootstrap-options" 
dc-version="1.0.13-30bb726" 
cluster-infrastructure="openais" 
expected-quorum-votes="2" 
stonith-enabled="false" 
no-quorum-policy="ignore" 
pe-error-series-max="100" 
pe-warn-series-max="100" 
pe-input-series-max="100" 
last-lrm-refresh="1402479513"
rsc_defaults $id="rsc-options" 
resource-stickiness="INFINITY" 
migration-threshold="2"
参考:http://www.slideshare.net/jshimi777/case-study-of-high-
availability-oracle-by-using-the-io-drive-and-drbd-16662472

Weitere ähnliche Inhalte

Ähnlich wie [A22] SE(SE One)をもっと有効活用しよう(db tech showcase 大阪 2014)

PowerShell and Release Management Server
PowerShell and  Release Management ServerPowerShell and  Release Management Server
PowerShell and Release Management ServerKazushi Kamegawa
 
画像解析最前線!WatsonとTensorFlowを比較してみた
画像解析最前線!WatsonとTensorFlowを比較してみた画像解析最前線!WatsonとTensorFlowを比較してみた
画像解析最前線!WatsonとTensorFlowを比較してみたsoftlayerjp
 
OSC2014.Enterprise Zabbix-JobScheduler連携ツールHyClopsJobMonitoringによる運用システムOSS化の実現
OSC2014.Enterprise Zabbix-JobScheduler連携ツールHyClopsJobMonitoringによる運用システムOSS化の実現OSC2014.Enterprise Zabbix-JobScheduler連携ツールHyClopsJobMonitoringによる運用システムOSS化の実現
OSC2014.Enterprise Zabbix-JobScheduler連携ツールHyClopsJobMonitoringによる運用システムOSS化の実現Daisuke Ikeda
 
センターSEがインスタンスの止め忘れを監視してみた
センターSEがインスタンスの止め忘れを監視してみたセンターSEがインスタンスの止め忘れを監視してみた
センターSEがインスタンスの止め忘れを監視してみた弘之 石崎
 
thymeleafさいしょの一歩
thymeleafさいしょの一歩thymeleafさいしょの一歩
thymeleafさいしょの一歩Yuichi Hasegawa
 
OpenStack(RDO/Grizzly) ダッシュボード利用演習
OpenStack(RDO/Grizzly) ダッシュボード利用演習OpenStack(RDO/Grizzly) ダッシュボード利用演習
OpenStack(RDO/Grizzly) ダッシュボード利用演習Etsuji Nakai
 
運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回Shigeharu Yamaoka
 
JAWS-UG HPC #0 LT資料
JAWS-UG HPC #0 LT資料JAWS-UG HPC #0 LT資料
JAWS-UG HPC #0 LT資料Daisuke Nagao
 
徳丸本に載っていないWebアプリケーションセキュリティ
徳丸本に載っていないWebアプリケーションセキュリティ徳丸本に載っていないWebアプリケーションセキュリティ
徳丸本に載っていないWebアプリケーションセキュリティHiroshi Tokumaru
 
Webサーバのチューニング
WebサーバのチューニングWebサーバのチューニング
WebサーバのチューニングYu Komiya
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejsTakayoshi Tanaka
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドKazumi Hirose
 
リリースを支える負荷測定
リリースを支える負荷測定リリースを支える負荷測定
リリースを支える負荷測定gree_tech
 
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性JPCERT Coordination Center
 
ZabbixによるOpenStack/OpenContrailの監視
ZabbixによるOpenStack/OpenContrailの監視ZabbixによるOpenStack/OpenContrailの監視
ZabbixによるOpenStack/OpenContrailの監視Kodai Terashima
 
MySQL Technology Cafe #12 MDS HA検証 ~パラメータからパフォーマンスまで~
MySQL Technology Cafe #12 MDS HA検証 ~パラメータからパフォーマンスまで~MySQL Technology Cafe #12 MDS HA検証 ~パラメータからパフォーマンスまで~
MySQL Technology Cafe #12 MDS HA検証 ~パラメータからパフォーマンスまで~オラクルエンジニア通信
 
2014-10-27 #ssmjp 腹を割って話そう (運用xセキュリティ)
2014-10-27 #ssmjp 腹を割って話そう (運用xセキュリティ)2014-10-27 #ssmjp 腹を割って話そう (運用xセキュリティ)
2014-10-27 #ssmjp 腹を割って話そう (運用xセキュリティ)Operation Lab, LLC.
 

Ähnlich wie [A22] SE(SE One)をもっと有効活用しよう(db tech showcase 大阪 2014) (20)

PowerShell and Release Management Server
PowerShell and  Release Management ServerPowerShell and  Release Management Server
PowerShell and Release Management Server
 
画像解析最前線!WatsonとTensorFlowを比較してみた
画像解析最前線!WatsonとTensorFlowを比較してみた画像解析最前線!WatsonとTensorFlowを比較してみた
画像解析最前線!WatsonとTensorFlowを比較してみた
 
OSC2014.Enterprise Zabbix-JobScheduler連携ツールHyClopsJobMonitoringによる運用システムOSS化の実現
OSC2014.Enterprise Zabbix-JobScheduler連携ツールHyClopsJobMonitoringによる運用システムOSS化の実現OSC2014.Enterprise Zabbix-JobScheduler連携ツールHyClopsJobMonitoringによる運用システムOSS化の実現
OSC2014.Enterprise Zabbix-JobScheduler連携ツールHyClopsJobMonitoringによる運用システムOSS化の実現
 
センターSEがインスタンスの止め忘れを監視してみた
センターSEがインスタンスの止め忘れを監視してみたセンターSEがインスタンスの止め忘れを監視してみた
センターSEがインスタンスの止め忘れを監視してみた
 
thymeleafさいしょの一歩
thymeleafさいしょの一歩thymeleafさいしょの一歩
thymeleafさいしょの一歩
 
OpenStack(RDO/Grizzly) ダッシュボード利用演習
OpenStack(RDO/Grizzly) ダッシュボード利用演習OpenStack(RDO/Grizzly) ダッシュボード利用演習
OpenStack(RDO/Grizzly) ダッシュボード利用演習
 
運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回運用構築技術者の為のPSプログラミング第1回
運用構築技術者の為のPSプログラミング第1回
 
JAWS-UG HPC #0 LT資料
JAWS-UG HPC #0 LT資料JAWS-UG HPC #0 LT資料
JAWS-UG HPC #0 LT資料
 
徳丸本に載っていないWebアプリケーションセキュリティ
徳丸本に載っていないWebアプリケーションセキュリティ徳丸本に載っていないWebアプリケーションセキュリティ
徳丸本に載っていないWebアプリケーションセキュリティ
 
No.2 超初心者向け セキュリティ入門
No.2 超初心者向け セキュリティ入門No.2 超初心者向け セキュリティ入門
No.2 超初心者向け セキュリティ入門
 
perfを使ったPostgreSQLの解析(後編)
perfを使ったPostgreSQLの解析(後編)perfを使ったPostgreSQLの解析(後編)
perfを使ったPostgreSQLの解析(後編)
 
Webサーバのチューニング
WebサーバのチューニングWebサーバのチューニング
Webサーバのチューニング
 
13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs13016 n分で作るtype scriptでnodejs
13016 n分で作るtype scriptでnodejs
 
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスドMicrosoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
Microsoft azure上にwebサイトやアプリケーションを構築する方法 アドバンスド
 
Apache Axis2におけるXML署名検証不備
Apache Axis2におけるXML署名検証不備Apache Axis2におけるXML署名検証不備
Apache Axis2におけるXML署名検証不備
 
リリースを支える負荷測定
リリースを支える負荷測定リリースを支える負荷測定
リリースを支える負荷測定
 
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
Spacewalkにおけるクロスサイト リクエストフォージェリ(CSRF)の脆弱性
 
ZabbixによるOpenStack/OpenContrailの監視
ZabbixによるOpenStack/OpenContrailの監視ZabbixによるOpenStack/OpenContrailの監視
ZabbixによるOpenStack/OpenContrailの監視
 
MySQL Technology Cafe #12 MDS HA検証 ~パラメータからパフォーマンスまで~
MySQL Technology Cafe #12 MDS HA検証 ~パラメータからパフォーマンスまで~MySQL Technology Cafe #12 MDS HA検証 ~パラメータからパフォーマンスまで~
MySQL Technology Cafe #12 MDS HA検証 ~パラメータからパフォーマンスまで~
 
2014-10-27 #ssmjp 腹を割って話そう (運用xセキュリティ)
2014-10-27 #ssmjp 腹を割って話そう (運用xセキュリティ)2014-10-27 #ssmjp 腹を割って話そう (運用xセキュリティ)
2014-10-27 #ssmjp 腹を割って話そう (運用xセキュリティ)
 

[A22] SE(SE One)をもっと有効活用しよう(db tech showcase 大阪 2014)