Blog

【エンジニア必見】「KCPS ベアメタルサーバー」のサーバ内部を覗いてみよう

2019/07/25

※本記事につきまして一部画像内の記載に誤りがありましたため、画像を差し替えて2019年7月29日に再度公開いたしました。

  KDDIのクラウドエンジニア エキスパートの加藤 真人です。

今回は私が開発を担当しております、クラウドプラットフォームサービス(以下、KCPS)、ベアメタルサーバーのメイン商材「サーバ」について詳しく記載したいと思います。本サービスで採用しているサーバは、台湾のODMメーカであるQuanta Computer製のOCP準拠サーバを採用しています。同サーバはKCPSのIaaSや、他KDDIサービスの基盤においても利用されているサーバになります。導入当初はメーカ名を言っても誰も知らないサーバメーカでしたが、最近ではメガクラウドに利用されていることもあってメジャーなメーカとなり、長い年月共に開発してきた私としては嬉しい限りです。  

1. 提供サーバモデル

ベアメタルサーバーで提供しているサーバとしては、現在5種類のサーバを提供しており、それぞれCPUのモデル、メモリ容量やDISKの本数などの構成が異なります。一番大きな違いはCPUであり、インテルのHaswellマイクロアーキテクチャとSkylakeマイクロアーキテクチャ、2種類のCPUを提供しています。これに加えてメモリ容量、DISKの本数が異なる4つのサーバタイプ、Small、Medium、Large、xLargeを提供しています。メニュー名は以下の通りサーバ構成の違いが分かるようにしていますので、サーバ選択の際には参考としてください。

メニュー名は以下の表の内容に従って命名しています。

t2t3

  各サーバ構成の詳細は下記の表の通りです。

t4

各サーバタイプのサーバ構成は、お客様から要望の多い利用シーンにあった最適な構成にしており、また提供するサーバ構成は導入いただくOSなどのハードウェア認証を取得しておりますので、お客様に安心してご利用いただける状態となっています。  

2. サーバの内部構成

代表的なサーバモデルの搭載パーツと接続構成を紹介します。下記に記載されているパーツは、現時点でのパーツモデル名となります。今後、新しいパーツなども採用していきますので、パーツの正式なモデル名などは実機の構成をご確認ください。

t5

  2.1 Smallモデル構成

ベアメタルサーバーにおいて、最小スペックのサーバになります。 特徴は、物理コア数が少ないためコアライセンスで課金され、クラウドで利用する場合にライセンスが高額になってしまうようなソフトウエアで活用いただけることを想定している点です。最小構成ではありますが、電源やネットワークカードなど物理構成での冗長構成が可能な部分は冗長構成となっていますので、安心してご利用ください。

t6

  2.2 xLargeモデル構成

ベアメタルサーバーにおいて、最大スペックのサーバになります。 特徴は、SSDの搭載数が多いこととNVMeが搭載されている点です。プライベートクラウドなどで、仮想サーバを大量にシンプロビジョニングで構築することに適しているサーバです。特に、VMware vSAN構成においてはNVMeをキャッシュ領域として利用できるため、高いストレージ性能を期待することができます。高価なNVMeを二個も搭載しているサーバを手軽に利用できるモデルとなっておりますので、エンジニアの方にとってはお試しで利用するだけでも面白いサーバかと思います。

t7

3. CPU

今回提供したサーバは、全て2Wayモデル(物理CPUが二個)のサーバになります。 Oracle DBなどライセンスを気にするお客様からは、Smallは1Wayにしてほしいという要望を伺うことがよくあります。1Wayを採用した場合、ライセンスメリットはありますが、CPU障害時にサーバがそのまま停止してしまうリスクがあります。これ以外に、1Wayにすることでサーバ本来のスペックを半減させ、ベアメタルサーバーとしてメリットのある性能を引き出すことが制限されます。これは、サーバ全体で扱えるバスの数や帯域が半分に減るため、接続できるデバイス数に制限が出てくるためです。特に大きな影響を受けるのがメモリで、処理能力が単純に半分となってしまいます。CPUが1Wayでも、同容量のメモリを搭載すれば同じだろうと思うかもしれませんが、CPUからメモリへ経由するバスが2本から1本になるため、結果としては同じとは言えない差が生まれます。また小さいことですが、CPUに付帯するキャッシュメモリも単純に半分になります。しかし、コア数とメモリ容量を減らすことでコストメリットの高い構成で提供することも可能なため、今後は1Wayモデルの提供もしていきたいと考えています。

CPUブログ修正 2

4. ストレージ

t9

全てのモデルにSSDを搭載しており、HDDは搭載しておりません。また、xLargeにおいてはNVMeモデルを二本搭載しており、キャッシュなどの高速処理における利用にご活用いただけます。今回採用したIntel NVMe P4600 SSDPE2KE016T701は、32層の積層技術を使用した、データセンター向け3D NAND PCIe/NVMe SSDです。同じ32層の積層技術を使用した、インテル3D NAND SATA Intel® SSD DC S4600と比較して、ランダム 4k リードで9倍、シーケンシャル リードで6倍以上の性能を持っています。高いパフォーマンスであること以外に、安全性でも面白い機能を持っています。それが、PLI(Power Loss Imminent)テクノロジーになります。これは、ストレージのコントローラーにコンデンサを搭載し、予期しない電源断時にコントローラー上にあるバッファ中のデータをコミットさせることが出来ます。保険的な利用になりますが、データセンター向けのストレージとしてはありがたい機能です。

t10

LargeとxLargeモデルにおいてはOSのブート用にご利用いただくことを意識したBootDISKを搭載しています。必ずしもBootDISKにOSをインストールいただく必要はありませんが、マザーボードに直接接続されているため、OS付属の標準ドライバーでインストールが可能です。RAIDカード配下のDISKにOSをインストールすることも可能ですが、OSの種類によってはRAIDカードのドライバーが未対応のため、インストール時にDISKが見つからないことがあります。このような場合には、RAIDカードのドライバーを疑ってみてください。新しいドライバーを利用してOSを導入する場合の注意点としては、BMCのISOマウント機能を利用した場合、OSのインストール途中でISOの入れ替えを行うことができない点です。インストール時に新しいドライバーが必要な場合は、対象ドライバーを含んだISOイメージを事前に作成し、インストールを実施してください。ドライバーなどの最新情報は、カードメーカやOSメーカのサイトなどを確認すると不具合の改修されたドライバーが提供されている場合がありますので、あれ?と思ったら是非確認してみるのもいいと思います。  

5. RAIDタイプ

SmallとMediumモデルにおいては、RAID構成を組むことができます。構成パターンはRAID0、1、5、6があり、サーバ新規作成時にRAIDタイプを指定することでご利用が可能となります。構築後にRAIDタイプを変更することはできませんのでご注意ください。しかし、OSを導入しRAIDユーティリティを用いて、RAID構成を変更することは可能です。サーバ新規作成以外でRAID構成を変更した場合、ベアメタルサービスで管理しているRAID構成情報と実機に不一致が生じますので、新規作成時に正しいRAIDタイプを指定して構築いただくようお願いいたします。

ベアメタRAID

6. ハードウエア交換

DISKなどハードウエアが故障した場合には、復旧のためにハードウェアの交換が必要となりますが、その方法には活性交換と非活性交換の二つの方法があり、障害箇所により交換時の対応方法が変わります。非活性交換の場合にはサーバをshutdownする必要があるため、AdminConsoleからサーバをKDDIメンテナンスステージへ移行していただいた後に交換作業となります。一方RAID構成のSSDについては活性交換が可能となり、サーバをshutdownする必要はありませんが、活性交換の申請をAdminConsole画面で指定しないと活性交換の対応はできません。これは、初期構築後にお客様が手動でRAIDの構成変更を行った場合、KDDIで管理しているRAID構成情報には反映されません。このため、KDDI側では実機のRAID構成を把握することが出来ないため、お客様からの申請形式での対応となっています。RAID構成においてSSD交換時に別のSSDが壊れた場合、RAID構成が崩壊してしまいデータ消失が発生します。この様な状況を想定し、ベアメタルサーバーにおいてはバックアップの取得を必ず実施するよう推奨させていただいております。  

DISK活性交換の申請画面

t12

故障箇所毎の活性交換/非活性交換対応一覧

t13

 

まとめ

これまでのオンプレシステムでのサーバリソース設計とは異なり、ベアメタルサーバーサービスの場合、我々クラウド事業者の提供するメニューから利用シーンにあわせて最適なサーバタイプを選択いただき、システム設計を導き出すことになります。今回のブログでは、お客様がベアメタルサーバーを利用される際のシステム設計の一助となるよう、サーバのハードウェア仕様や構成、提供機能を細かく説明させて頂きました。同じパーツやサーバを利用しても、設計によってシステム全体のパフォーマンスが大きく変わってきます。本情報がご利用時のシステム設計の参考になりましたら幸いです。 今後も新しいサーバタイプ、新機能の提供や、サービス改善に向けた仕様変更があった場合には、本ブログ、ナレッジサイトを通じて情報提供させていただきます。   ■KCPS ベアメタルサーバーサービスはこちらもチェック ■8/29 東京開催 KCPS ベアメタルサーバーのユーザ登壇セミナーはこちらをチェック       ※訂正(2019年7月29日)  3.CPUの画像内の記載が誤っていたため、画像を差し替えました。  訂正前:CASH → 訂正後:CACHE