77870


プログラミングと直接は関係ないのですが

サーバー会社のストレージはどうなっているのでしょう？

100GBで契約してその後200GBにアップグレードするとアップグレードされますが

サーバーの容量は決まっているはずです

アップグレードするかどうかわからないユーザーのためにサーバーの大半を空けておくわけにはいかないとおもいます

となるとやはりゲートウェイで管理操作しているのでしょうか？


CC BY-SA 4.0
2021-06-29T11:07:34.393
77854
2021-07-02T06:12:49.780
2021-07-02T06:12:49.780
3060
39481
question
filesystems
レンタルサーバー等のストレージ (ディスク容量) はどのように管理されている？


この手のサーバ業者は事前に見込まれる顧客数と、各顧客がどの程度容量を使うかの予測等から、十分な容量の物理記憶装置を用意しているはず。更には物理装置の一部が故障しても顧客のデータが失われないようにバックアップなり
RAID 構成なりを維持しなきゃならないので、業者の規模によりけりだけど普通にペタの単位の記憶容量は用意しているものと推定されます。そのうちのどのくらいが
SSD
等高速ランダムアクセス可能な装置で、どのくらいが真にバックアップなテープ等のシーケンシャルアクセスな装置かは、その業者の経営ノウハウでもあり外部からは推測すらできないでしょう。

そんな超巨大記憶装置を、顧客１契約につき１つの物理装置があるようにみせかける仮想化によって分割して貸し出しているわけです。契約変更したら仮想化ドライバの設定値を変更するだけで
100G → 200G の容量変更とか自由自在。

> サーバーの大半を空けておくわけにはいかない

世代バックアップまで考えると、顧客に貸し出している記憶容量の数倍の記憶装置をレンタル業者は保有しているので、そういう意味で「大半は空いている」んだと思いますよ。


CC BY-SA 4.0
2021-06-30T01:05:07.390
77870
2021-06-30T01:05:07.390
8589
77854
answer


> サーバーの容量は決まっているはずです

これが実際には異なっていて、「サーバの容量」は割と自由です。

一般的には、「ストレージ装置」を複数台のサーバで共用している構成になっています。ユーザーからの見え方は大雑把には二通りあって

  * いわゆる「共有フォルダ」みたいなイメージ
  * ストレージ装置の中に「論理的なHDD」が存在していてサーバはそれに接続している

前者の場合は「ユーザーの契約容量=フォルダごとの容量制限」なので、その制限を書き換えれば容量は変更できます。

後者の場合は「ユーザーの契約容量=論理的なHDDのサイズ」で、これはストレージ装置の機能で変更できます。

これは仮想化以前の時代から使われている技術で、ストレージ装置の基本的な機能です。

今時の仮想化技術を使ったレンタルサーバ(VPS)では間に仮想化のレイヤが入るので少し複雑になります。物理サーバの中の仮想マシンごとにストレージ装置の「論理的なHDD」に接続する場合は仮想化なしの時と同じです。もう一つ、物理サーバごとに「論理的なHDD」に接続して、その中に仮想マシンごとの「仮想HDD」を作る場合もあります。この場合、HDDの容量の変更は仮想基盤の機能で仮想HDDをリサイズすることになります。といっても、仮想HDDは単なるファイルなので、単純にはファイルのリサイズをやっているだけです。

> アップグレードするかどうかわからないユーザーのためにサーバーの大半を空けておくわけにはいかないとおもいます

ストレージ装置は一般的にはあとからディスクを増設して容量を増やすことができるのでそうはならない、といいたいところですが、無尽蔵に増やせるわけではないですし、様々な理由で増設は最初から選択肢とならない場合もあります。

ところで、ストレージ装置につなげるサーバの台数にも限りがあるので、普通は「1台のストレージ装置に複数のサーバ」のグループを需要によって増やしていくような形になります。

どんどん契約が増えていく前提であれば、複数のグループにバランスを見ながらユーザーを割り振っていくことで、

  * 途中で「アップグレード」するユーザーが予想より多ければ単にそのグループに割り当てられるユーザーが減る
  * 逆に予想より少なければ、後からそのグループに追加でユーザーを割り当てる

とすれば使用量は割とコントロールできることになります。少なくとも、10GB～1TBまでプランがあるので、全員が1TBにアップグレードする前提でディスクを用意しておく、などということはどこもしていません。

* * *

AWSのようなクラウドサービスの場合はまた考え方が違って、見かけ上は「無限の容量を持ち無限のサーバを接続できるストレージ装置」があります。実際にはプロバイダが複数のストレージ装置をよしなに運用することで実現しているわけですが、「よしなに運用する」コストがかかるので、その分割高です。


CC BY-SA 4.0
2021-06-30T12:33:28.620
77884
2021-07-02T06:10:00.447
2021-07-02T06:10:00.447
5793
5793
77854
answer