月曜日, 10月 24, 2016

【クラウドサービス動向その3】IaaS環境上でOracleを利用するには

最近はIaaS上で基幹システムを動かしたい、という話が増えてきました。そういった場合、課題になるのがデータベースです。データベースがOSSのMySQLやPostgresだったら全く問題ないのですが、基幹システムだと商用DB、たとえばMS SQL、そしてOracleを使っていることが多いのです。MS SQLの場合、SPLAで利用するか、SA権付きで購入の上、ライセンスモビリティを利用してIaaS上にライセンスを持ち込む、とったことが出来ます。しかし、Oracleに関してはちょっと厄介です。

まず、Oracle社がOracleを利用して良いよ、と明言しているクラウドがあります。それは、AWSとAzureです。
※AWSの場合、マネージドサービスであるRDSでOracleを利用する、という方法もあります。

クラウド・コンピューティング環境における Oracle ソフトウェアのライセンス
日本オラクル株式会社

この資料には、以下の記述があります。
本資料は、以下のベンダーが提供するクラウド・コンピューティング環境に適用されます:
Amazon Web Services – Amazon Elastic Compute Cloud (EC2), Amazon Simple Storage Service (S3) 、
Microsoft Windows Azure Platform
(以下、これらを「承認されたクラウド環境」と表記します)
つまり、AWSとAzure以外のクラウドに関しては、基本的にはOralceを動かすことを承認していないよ、ということになります。ではそれ以外のクラウドでOracleを利用したい場合はどのようになるのでしょうか?OracleのFAQに、以下の記載があります。
Q.他社のクラウド・サービスに、ライセンス持ち込み(BYOL: Bring Your Own License)でオラクル製品を使う場合、必要なライセンス数はどうなりますか?
A.クラウド・サービスにオラクル製品を導入して使用する場合も、原則としてオラクル製品がインストールされる、または稼働する物理サーバーにライセンスが必要となります。
クラウド・サービスが仮想化環境である場合、必要ライセンス数等は仮想化環境にオラクル製品を導入する場合と同様です。
ただし、オラクル社にて承認されたクラウド・サービスについては、クラウド環境のインスタンスに割り当てられたバーチャル・コアを物理コアと同等に換算し、ライセンス数を計算します。
詳細は「クラウド・コンピューティング環境における Oracle ソフトウェアのライセンス」をご参照下さい。
Q.Oracle Database Standard Edition 2 のライセンスを他社のクラウド・サービスに持ち込むことは可能ですか?
A.Oracle Database Standard Edition 2 は、2 CPUソケットまでのサーバーに導入可能なライセンスです。
クラウド環境であっても、Oracle Database Standard Edition 2の導入先が2 CPUソケットの物理サーバーであれば、Oracle Database Standard Edition 2を導入可能です。
なお、他社クラウド・サービスにオラクル製品を導入して使用する場合も、原則としてオラクル製品がインストールされる、または稼働する物理サーバーにライセンスが必要となります。
クラウド・サービスが仮想化環境である場合、必要ライセンス数等は仮想化環境にオラクル製品を導入する場合と同様です。
ただし、オラクル社にて承認されたクラウド・サービスにOracle Database Standard Edition 2 のライセンスを持ち込む場合(BYOL)は、クラウド環境のインスタンスに割り当てられたバーチャル・コアを物理コアと同等に換算し、ライセンス数を計算します。
また、承認されたクラウド・サービスでは、Oracle Database Standard Edition 2 は 8 バーチャル・コアまでのインスタンスにのみ導入できます。 
ここで登場する承認されたクラウドサービス、というのはAWSとAzureのことです。つまり、それ以外のクラウドサービスでは、Oracleが稼働する可能性がある物理サーバの全てのソケット数分ライセンスを購入しろ、と言っているわけです。パブリッククラウドは物理サーバをたくさん並べてユーザから見えなくしているわけで、そんな購入の仕方は不可能なわけです。正直、これだけ仮想化やクラウドが普及している現代で、物理ソケット数にライセンスが紐づく、という方法しか提供していないのは、時代錯誤といっても良いのではないでしょうか?

なお、AWSとAzure以外のクラウド環境でも、一部のクラウド環境についてはOracle社と個別の契約を結び、Oracleを利用できるようにしているようです。ただ、この契約も米国Oracleの意向で変わってしまったという話もあり、Oracle部分はベアメタルや専用仮想サーバなどで逃げていることも多いようです。

本当に最近のOracleライセンスは変更が多くて、最近だとSE1の廃止、及びSE2による実質大幅値上がりがありました。
日本オラクルが1月30日にデータベース(DB)ソフト「Oracle Database」のライセンス体系を変更した。中小規模システム向けで安価な「Standard Edition One(SE1)」を廃止。「Standard Edition(SE)」のライセンス内容を変更した「Standard Edition 2(SE2)」に一本化した。
同社は2月29日に、旧ライセンスであるSE1とSEの販売を終了。3月1日からSE2と大規模システム向けの「Enterprise Edition(EE)」だけを販売する。
SEユーザーにとっての問題は料金ではなく、利用できる最大CPUソケット数が減る点だ。SEのライセンス価格はSE2と同じ210万円(同)。SEからSE2への移行に追加料金は不要で、保守料も変わらない。
 しかし、SE2では最大CPUソケット数がSEの4から2に減る。「仮想化したり、RACを使ったシステムでは最大CPUソケット数が規定を超える可能性がある」と、パートナーであるアシストのデータベース技術本部ビジネス推進部の岸和田隆部長は懸念する。
日本オラクルがDBライセンスを変更、費用増迫られる中小規模システムも
ITPro 2016年2月29日

これ以外にも、Azureで提供されているOracleライセンス付きイメージVMを突然停止させたりもしています。
休み明けにメールを確認すると、2016年05月02日にAzure Teamから以下のタイトルのメールが来ていた。
『ご対応のお願い: 2016年5月31日に、Azure はライセンスが含まれているOracle VMのサポートを終了します』
メールによると2016年5月30日までにVMの使用を中止するか、適切なライセンスを取得する必要があるという。なお、適切にライセンスを取得した旨を連絡しない場合、通知なしにVMを停止する場合もあるという。この件はMicrosoft及びOracleのサイトにはまだ掲載されていないようだ。
対応までに一ヶ月も無いというのは、あんまりではなかろうか…
MicrosoftがAzureにおけるライセンス込みOracle VMサポートの終了を通達
スラド 2016年5月11日

これは、Oracleライセンス付きのVMイメージが使えなくなった、という話なので、AzureにOracleライセンスを持ち込めなくなったというわけではありません。しかし、Oracleの横暴さが分かるエピソードではないでしょうか?

あまりOracle批判ばかりしても仕方がないのですが、最後に1つ。先日の「Oracle OpenWorld 2016」の講演の中で、AWSを批判して以下のような発言がありました。
Ellison氏の批判は続く。RedshiftやAurora、そしてNoSQLデータベース「Amazon DynamoDB」はAWSでしか稼働しないことに対して、Oracle DBのほかに「Oracle MySQL」「Oracle NoSQL」がオンプレミスやOracle Cloudはもちろん、「Micrsoft Azure」やAWSでも稼働することを挙げた。このことからAWSを「IBMメインフレームよりも閉鎖的」と言い表している。
 「IBMメインフレームの互換機を富士通や日立、Amdahlが開発していた。MVS(IBMメインフレームOSの一つ)やCICS(トランザクション処理用ミドルウェア)、IMS(データ管理システム)などはメインフレーム互換機でも稼働していた。AuroraやRedshift、DynamoDBはAWSでしか動かない」
AWSのデータベースは「IBMメインフレームより閉鎖的」:オラクルCTO
ZDN絵tJapan 2016年09月21日

これは、もう何を言っているんだ?という感じですね。確かに、Auroraなども独自機能部分を使って作り込んでしまうと互換性は減りますが、(少なくと現時点では)MySQL互換のDBなので、MySQLに戻すことはそこまで大変ではないと思います。一方で、Oracleはクラウドだろうがオンプレだろうが確かに『Oracleが許可している環境』であればどこでも動きますが、許可を頂く必要があるわけです。そして、その許可、使用料については全てOracle社が握っているわけです。

私も昔はOracleもよく触っていましたし、今もやっぱりRDBといえばOracleなイメージがあります。シェアも高いですからね。しかし、ここ数年のOracleは、顧客の過去の資産(プログラム、ノウハウ、データ)を人質にとり、収益を上げているだけな企業に思えます。なんか感じ悪いですね。まあ、そこでの収益をクラウドに突っ込もうとしているのかも知れませんが。。。

米国は分かりませんが、日本はかなりパッケージソフト文化だと思います。その場合、ユーザ企業がどのDBを利用するかは、どのパッケージを利用するかに大きく依存します。パッケージがDBにOracleを利用している、ということが弱みになるのであれば、パッケージ開発元もDBを変えてくるのではないか、と思います。それが進んだとき、Oracleは大きくシェアを落とすのではないでしょうか?そうしたら、SE1復活ですかね(笑)それか、もうExadata中心で行くとか。

Oracle Cloudの話も一緒に纏めようかと思っていたのですが、長くなったので一旦ここで切りますね。次回はOracle Cloudの話にしましょう。

0 件のコメント: