「知ったかぶりしてごめんなさい!」ということで……
JAWS-UG白山で初心者ハンズオンにチャレンジしてきた
2016年06月21日 07時00分更新
そんな装備で大丈夫か!? 大丈夫だ問題ない! からの死亡フラグ回収
ハンズオン最初のお題は、AWSの代表的サービスであるEC2でサーバーを起動すること。用意された手順書に従って操作していくだけで、Linux仮想マシンのインスタンスがあっさり起動した。しかし起動しただけでは意味がないので、セキュリティ設定を編集してSSHでログインできるようにしなければならない。
ここで筆者は大きな壁に突き当たった。SSHで接続できるようセキュリティ設定を変更するところまでは問題なかったのだが、SSH接続に必要な秘密鍵ファイルのダウンロードができなかったのだ。iPadにはローカルストレージがないため、ブラウザからは特定のファイルしかダウンロードできない。対応可能なSSHアプリケーション等はあるのかもしれないが、それを調べている時間もない。機種固有の問題でJAWS-UG白山の方の手を煩わせるのは申し訳なかったので、すかさず環境を変更。
このようなこともあろうかと、自宅でファイルサーバー代わりに常時稼働しているWindows PCをリモートデスクトップで使えるよう設定してある。iPad Proのブラウザから直接AWSのマネジメントコンソールを操作するのではなく、自宅のWindows PCを経由してインスタンスの作成からやり直し、使い慣れたTeraTermを使ってLinuxインスタンスにSSH接続することに成功。この後の作業もすべてこの仮想デスクトップから行なった。後になって考えてみれば、初めからこの環境で作業すればよかったと反省している。
ハンズオンではその後、yumコマンドを使ってhttpdをインストールし、Webサービスを稼働させるところまで、実際の操作を体験した。httpdをスタートするだけではアクセスできず、HTTP接続を許可するようセキュリティ設定を変更したらアクセスできるようになる。
「本当はこのインスタンスにaipoというグループウェアをインストールして起動するところまでやろうと思いましたが、思ったより時間がなくなったのでLinuxインスタンスは停止させて次に進みます」(中道さん)
この言葉には正直言って、少しほっとした。途中で仮想デスクトップに切り替えてやり直した筆者は説明に追いつくのがやっとで、まったく余裕がなかったからだ。これを読んでいるのはAWSにすでに触れている方がほとんどだと思うが、もしもこれからAWSに触れるという方がいたら、ぜひ気をつけてほしい。新しくインスタンスを立ち上げたりする場合にiPadだけで挑むのはオススメしない。そんな装備では、ダメだ。一番いい装備で臨んでくれ。
Windowsサーバ起動もWordPressインストールも怖くない
さて、Linuxインスタンスに続いてWindowsインスタンスの作成にもトライ。起動するのはWindows Server 2012 R2の日本語版。
「クイックスタートからでもWindows Serverを起動できますが、そちらは英語版しか用意されていません。日本語版がコミュニティAMIとして提供されていますので、今回はそちらを検索して起動します」(中道さん)
ハンズオンの手順書には日本語版Windows ServerのAMIを見つけるための検索ワードまで書き込まれていて、至れり尽くせり、石川せり。書かれているままに操作すれば、Windows Serverのインスタンスが起動する。Linuxよりも準備に時間がかかるということを、ここで学んだ。
LinuxではSSH接続できるようにセキュリティ設定を行なったが、今度はRDP接続できるように設定する。RDPの標準ポートであるTCP3389番をアクセス可能にして、仮想デスクトップに接続。筆者は作業している環境自体が仮想デスクトップ上だったので、一度自宅へのRDP接続を切断してAWS上で起動したWindows Serverに接続し直した。マイクロインスタンスなので動作速度は速くないものの、Windowsのライセンスを気にすることなく使用する時間分の料金だけでWindowsデスクトップを使えるというのはなんだか新鮮な気分だった。これまでも知識としては理解していたのだが、実際に自分で操作して実感するのとはやはり違うものだ。
仮想デスクトップに接続できたら、サーバーマネージャーを起動して「IEセキュリティ強化の構成」を一度すべてオフにし、IEが使えるようにした。その上でIIS、Microsoft Web Platform installerをダウンロードして仮想マシンにインストール。さらにWordPress日本語版パッケージをインストールすると、Windows Server上でWordPressが使えるようになる。外部からアクセスできるようにするためには、Linuxインスタンスのときと同じようにAWSマネジメントコンソールからセキュリティ設定を変更、HTTPアクセスを許可する必要がある。同じ操作だが、LinuxインスタンスとWindowsインスタンスとの両方で体験することで、セキュリティ設定の基本がなんとなくわかってくる。
「こちらもこのあと、WordPressで使うDBをRDSのMySQLに変更するところまでやりたかったのですが、時間の都合で割愛します」(中道さん)
今度は順調に追いついていたので、ちょっと残念な気分になる身勝手な筆者。RDSは頻繁に使われるサービスだけに、実体験してみたかった。幸いハンズオンの手順書にはRDSの使い方も掲載されているので、いつか時間を作って自宅でトライしてみたいと思う。
S3にもさらっと触れて、AWSの基本中の基本を理解
ハンズオンの最後は、EC2と並ぶ基本機能Amazon S3に少し触れてみた。ブラウザ経由でファイルをアップロードしたり、ダウンロードしたりしてみる程度だが、実際に操作してみながら「ここにhtmlファイルを保存してサーバレスなWebサイトとして公開することもできます」などと応用例を聞くと、すっと腹に落ちる。
と、ここまででハンズオンセッションは終了。最後にマネジメントコンソールですべてのインスタンスが停止していることを確認するよう指示された。今回作成したインスタンスはすべてマイクロインスタンスで、新規登録者は最初の1年間無料で使える規模のものばかりだが、うっかり停止し忘れて課金されたらがっかりするに違いない。各セッションの最後にインスタンス停止の案内もあったので大丈夫だろうと思ったが、念のために筆者もマネジメントコンソールでインスタンスの状況を確認した。
仕込みか冗談のように、Linuxインスタンスが元気に稼動中であった。
「止め忘れ、ダメ絶対」(©JAWS-UG富山 石崎 弘之さん)
この連載の記事
-
第17回
デジタル
年末のJAWS-UG名古屋はre:Inventの振り返りLT(ただしLong Talk) -
第16回
デジタル
AWS IoTでトイレ予約システムを作った中村さんの戦い -
第15回
デジタル
CMSをフレームワークとして活用し、クイックスタートを実現しよう -
第14回
デジタル
クラウドはアジャイル開発本来の力を引き出し、エンジニアの在り方も変える -
第13回
デジタル
ライター重森が体験したJAWS Festa 東海道 2016熱狂の1日 -
第12回
デジタル
「マイル手帳」のバックエンドをServerless Frameworkで構築 -
第11回
デジタル
しずおかオンラインの榊原さん、VPC内のLambdaの苦労を語る -
第10回
デジタル
しずおかランチ開発で得たLambdaとElasticsearch連携時の認証テク -
第9回
デジタル
サーバーレス事例たっぷりのJAWS-UG東海道 in 浜松 -
第8回
デジタル
8月27日、JAWS-UG東海道 in 浜松に行きまーす! -
第7回
デジタル
10月22日は名古屋へ!JAWS Festa 東海道 2016の申し込み開始 - この連載の一覧へ