サーバーを借りるとは?

フィヨルドブートキャンプではM1チップのMacを使ってLinuxを学習する場合、さくらVPSを借りてそこにLinuxをインストールして学習をします。しかしサーバーを借りるといっても目に見えないものなのでイメージが掴みづらいと思います。そこで絵で説明したいと思います。 ## Webサイトはどうやって公開されているのか まず、Webサイトがどうやって公開されているのかを見てみましょう。 GoogleとかFacebookとかブラウザからサイトが見れますが、これはなんで見れているんでしょうか。誰かのパソコンにあるファイルを見ている? ざっくりいうとその通りです。 Googleの持ってるパソコンの中にWebサイトのHTMLファイルが置いてあります。そのパソコンにアクセスしてそのHTMLファイルを見ている感じです。 ![Image from Gyazo](https://i.gyazo.com/7291d4d7fc21e32736ab9a9a936cd662.png) #### ※実際は 本当はもちろん民家ではなく、データセンターという専用の建物があります。パソコンもイカツイやつです。しかし基本的な考えは同じです。 ![Image from Gyazo](https://i.gyazo.com/13acc5a29bce7b478ba7b86f39b63de7.png) ノースカロライナ州レノアにあるGoogleデータセンター。 [![Image from Gyazo](https://i.gyazo.com/92ca00753128d389be680ca1b8921770.jpg)](https://gyazo.com/92ca00753128d389be680ca1b8921770) Googleのパソコン。 OSはLinuxをベースに独自にカスタマイズしたものが入っています。 [![Image from Gyazo](https://i.gyazo.com/a146848178077a0dee8d96097f30d090.jpg)](https://gyazo.com/a146848178077a0dee8d96097f30d090) データセンター内部。 上のパソコンが棚みたいなの(サーバーラック)にいっぱい詰まってる ## さくらインターネットでいうと さくらインターネットもデータセンターをいろんな場所に持っています。 [![Image from Gyazo](https://i.gyazo.com/9bfdc87ebb5f4a6641054ef435bbd56b.png)](https://gyazo.com/9bfdc87ebb5f4a6641054ef435bbd56b) 例えば北海道の石狩データセンター。(データセンターの費用はパソコンを冷やす電気代が1番のネックなので寒くて電気代が安い地域に作るとお得) [![Image from Gyazo](https://i.gyazo.com/596d45ca38bd8c5aab1cb65837c9fb00.png)](https://gyazo.com/596d45ca38bd8c5aab1cb65837c9fb00) さくらインターネットのパソコン。(OSは借りた人が自由に選べる) [![Image from Gyazo](https://i.gyazo.com/b495b9257d5cd086b1a1739b6c1b26cc.jpg)](https://gyazo.com/b495b9257d5cd086b1a1739b6c1b26cc) ここの棚にパソコンがいっぱい入ってる。 僕らはそれのうちのどれか一台を貸してもらってる!それがレンタルサーバー。 ## なぜサーバーを借りるの? サーバーを借りろと言われてもなぜ借りなきゃいけないのかわからないかもしれません。自分のパソコンじゃだめなの? 本当は自分のパソコンでもいいです。 ただ、Webサイトって24時間アクセスできますよね。それはそのパソコンが24時間つけっぱなしになってるから見れるわけです。 家に24時間つけっぱなしのパソコンがあると非常に生活が辛いです。電気代はかかるわ、うっかりコンセントを抜いてしまって「サイトにアクセスできません」と言われるわ。 なのでWebサイトを公開したい場合は借りるのが一般的です。 (上記を承知でやる 「自宅サーバー」というのもあります) ## 遠隔地にサーバーを借りたらどう触る? 無事にサーバーを借りたとしてそのサーバーをどうやって使えばいいのでしょうか?もちろんデータセンターまで出向いて直接サーバーパソコンにキーボードとディスプレイをつないで使っても構いません。(おそらくデータセンターの人に阻止される) もしくはデータセンターの人に電話して「こうやって操作してくれ」と頼む? (昔は緊急時はこれやってた) それだととてつもなく面倒なので、一般的にはsshを使ってサーバーに接続して使います。 ## sshとは? sshについては下記のプラクティスで詳しくやります。 [ssh の基本を理解する](https://bootcamp.fjord.jp/practices/10) ## VNCコンソール sshにも問題があります。 - sshの設定をミスって二度と接続できなくなったらどうする? - そもそもOSのインストールとか、sshの設定ができる前の操作はどうするの? (昔は上記の場合は原付とかで直接データセンターに行って作業してました) そこでサーバーパソコンに直接キーボードとディスプレイをつないでいるかのように、インターネット越しに操作できるのがVNCコンソールです。 [![Image from Gyazo](https://i.gyazo.com/34feadca4bdf9e8d411990231c2e3154.png)](https://gyazo.com/34feadca4bdf9e8d411990231c2e3154) VNCコンソールがあれば好きなOSのインストールなども遠隔地からできて便利! これはさくらインターネットが特別に用意してくれてるものなので他の会社のサービスにはあったりなかったりします。