はじめに
AWSといっても様々なサービスがあって、一般的に話題にあがあるEC2はやっぱり初めての人には少しとっつきにくいです。
さらにEC2の様にサーバを自分で管理するアンマネージドサービスから、マネージドサービス使おうなんて思うとちょっと敷居が高くなってきます。
なので、ことのはじめとしてよくあるVMサーバを借りるという一番シンプルでかつ安価な Amazon Lightsailについて紹介したいと思います。
前提
AWSのアカウントを持っていることを前提とします。
アカウントの作り方などはここでは説明しません。
ログイン後のメニューからの説明になります。
なお、解説は2024/04/26時点のバージョンで解説します。
常にアップデートされているので若干説明のイメージと異なるかもしれません。
例えばこんなつかいかた
IT系ならポートフォリオとしての活用が比較的安価にできます。
ウェブデザイナーなら、自分で作成したサイトを見せたい時
技術系ならアプリのサービス実行環境などなど
既存のサービスに乗るのではなく、独自のブログなどの解説を低コストで行うなどなど
VMインスタンスの作成と起動
何はともあれ、メニューからLightsailを検索して、サービスに移動してください。
検索すると自動的に候補が表示されますので、検索されたLightsailのリンクをクリックしてください。

するとこんな画面が現れます。
まだ、インスタンスを作っていないのでインスタンスの作成と言うボタンしかありません。

早速インスタンスを作成していきましょう。
インスタンスとは何ぞ?と思われる方もいるかと思いますが…
使われる場面で意味は変わりますがここでは実際に動くサーバのことをインスタンスと言っています。
つまり、実際に動くサーバ作るよという事です。
こんな画面が表示されます。

ここで、自分に合ったサーバを作ることになりますが
大きくは

- Linux
- Windows
から選びます。
なお、Linuxを選ぶと

- アプリ+OS
- OSのみ
から選ぶことになります。
また、アプリ+OSを選ぶと、以下の様に最初からアプリが用意されたテンプレートを選ぶことが出来ます。

ここでWordPressとかを選択すればすぐに自分専用のブログを開設できますし
LAMP環境を選べば何もせずともPHPの実行環境がそろいます。
でも、今回はまっさらなOSを借りることとします。
Linuxなら操作感なども大差はないのですが、Redhat系の人なのでAlmalinuxで借りてみようと思います。

そして、サーバのスペックを選択します。

お試しなので最低スペックを選びますが、最低とはいえひと月500円くらいのワンコインで借りられるというのは安い!
円安(2024/04/25現在)で割高感でてしまっていますが、円高の頃はかなりやすく借りられました。
さておき
説明にもある通り、アカウントを作成してから初めてlightsailを利用する人は$10のマシンまで3カ月間無料で借りられます。

インスタンスの名前を決めて

インスタンスの作成ボタンを押します。
そうすると、画面が切り替わってインスタンスの作成が開始されます。
(IPの部分は隠しているので若干イメージは違うと思います)

ものの1分もかからず出来上がるので、しばらくしたら画面をリフレッシュしてみましょう。

はい!できました。
以上です。
うそです。
もう少し使い方を説明します。(もう少し続くんじゃは察してください)
とはいえ、既にサーバは動いていますので、本当にこれだけでサーバは作れたという事です。
早速サーバにつなげてみる
サーバにはSSHで接続しますが、SSHクライアントがなくてもここをクリックすると
ブラウザ上でターミナルが開き、操作することが出来ます。

こんな感じです。

インスタンスが出来たらすること
まずは出来たインスタンスをクリックしてインスタンスの管理画面を開きます。

すると、以下の様な管理画面が開きます。

独自のSSHクライアントを使用したい場合
デフォルトキーのダウンロードから、PEM形式ファイルのSSHキーをダウンロードできます。
慣れ親しんだクライアントの方が何かと捗りますしね。
なんのこっちゃと思った人は、先ほどのウェブコンソールでも問題ありません。
SSHクライアントを使用している人は大丈夫でしょうが、ダウンロードしたキーは絶対に外に漏れないようにしてください。
私はWinScpを好んで使っていますので、このPEM形式からPPK変換して接続しています。
メトリクス/スナップショット/ストレージ
気にしなくていいです。
気になる方は調べてみるといいかもしれません。
折角安く借りているのに…
スナップショットなどは保持しようとすれば別料金(1GB あたり 0.05 USD/月)とられますし、追加ストレージももちろん別料金(1GBあたり 0.10 USD/月)です。
失敗したらインスタンスを消して一から作り直すのも一興です。
考え方によっては1GBのストレージを月約15円で借りられるとも言えなくもないですが、他に安いサービスもありますからね。
ネットワーキング
インスタンスを立ち上げたら、真っ先に設定しているのがこのネットワーキングです。
設定しているものを順に説明します。
①静的IPのアタッチ
Lightsailは1アカウントにつき一つの静的IPアドレスを貰えるので(無料ではなくなりましたがLightsailは料金内)、まずIPを固定します。
これをしないと、Lightsailを起動するたびにPublicIPが変わりますので、作業が非常にしずらいです。
IPを固定しとくと、インスタンスを通りなおしてもまた同じIPで作業できるので圧倒的に楽です。
私は別でドメイン持っているので、このIPをAレコード登録して使っています。
せっかくひとつ付与されているので使わない手はないです。
操作も①の個所をクリックして、既に用意されているstaticip-1を選択してアタッチを押すだけです。
※新しい静的IPを作成を選択すると余計な料金がかかるので不要です。

アタッチすると以下の様に画面に反映されます。
(IPは見せられませんが)
パブリックIPV4の欄のIPアドレスが静的なアドレスへと変わり
デタッチのリンクが追加され、下にはStaticIp-1とアタッチした静的IPの名前が表示されるようになります。

これで、インスタンスを停止⇒起動を行ったとしてもパブリックIPが変わることはなくなりました。
②IPv4 ファイアウォールの設定
基本的にサーバは、他の人に入ってほしくありません。
先ほどのSSHキーなどを持ってはいますが、誤って流出した際や他のサービスを立ち上げた際にそのポートから接続されることもあります。
なので、基本的に作業をする前に自分の端末のIP(正確にはWAN側のIP)アドレスからしか繋がってほしくないので、自分自身のIPアドレスからしかつながらなくしています。
ちなみに自分がどんなIPでこのサーバに接続しているかは
https://www.cman.jp/network/support/go_access.cgi
のサイトなどで調べられます。
まずは、SSH接続を制限します。
以下の□の部分を押すと、設定画面が開きます。

以下の様にIPアドレスを設定できるようになるので、ここに先ほどのサイトで調べた自分のIPアドレスを記載して保存してください。

設定したIPアドレスは消していますが、以下の様に任意IPアドレスとなっていたものが、入力したIPになっていると思います。

これでこのIPアドレスからしか接続が出来なくなりました。
同じ要領で外部からサーバに対して必要なポートだけ開けていくことになります。
HTTPは公開用なので開けておきますが、HTTPS接続にする場合には閉じたりします。
+ルールを追加から、適宜行ってください。
なお、基本的なアプリのデフォルトポートは登録されているので選択するだけです。
私は、データベースのメンテナンスをpgAdminでPotgreSQL対して行う事もあるので5432ポート開いたりしています。
③IPv6ネットワーキングについて
IPv6での接続はしないのでオフにします。

これで、AmazonLigtsailでサーバを使う準備の完了です。
実際には左のメニューを見てもらった通り、いろいろと設定できることはありますが
ここでは、最低限サーバを立ち上げて操作できるようにするというところまでとします。
さいごに
AmazonLightsailは、インスタンス立ち上げで面倒なネットワーク設定なども一括で行ってくれるので本当にお手軽にサーバを安価に持つことが出来ます。
これをEC2で設定しようとすると、慣れればそうでもないですがiamユーザ設定→VPC作成→EC2インスタンス立ち上げ→ネットワーク周りの設定(internetgateway/subnet/routetable/securitygroup等々)結構設定する物が多くて大変です。
このお手軽さ故にAmazonLightsailは、ちょっとしたテストなんかにも最適です。
なにより、インスタンス消してしまえば料金も日割りなので最安のサーバなら、一日つかって20円です。
関連投稿
サーバができたら是非次もチャレンジしてみてください。
コメント