堀内さんのAWSブログサイト構築と長沢さんの価値のパイプライン話を楽しむ
Reboot完了!潮風とピザの香りが漂うJAWS-UG横浜に行ってきた
2016年11月28日 07時00分更新
AMIMOTOに一工夫でリッチなブログサイトを作れる
真吾さんの「見てください、この懐かしい顔!」という紹介で登壇したのは、前の時間でハンズオンを担当した堀内康弘さん。堀内さんは「WordPress using AMIMOTOのNext Step!!」というタイトルで、初心者でも簡単にブログサイトを立ち上げられるAMIMOTOのパワーアップについて説明した。
堀内さんは2年前にAWSJを辞めて以降、仕事のやる気をなくして、世界中を旅している自由人。とはいえ、旅の合間にクラウドの自動化を推進するMobingiの開発を手がけたり、AAI(AWS Authorized Instructor)としてグローバルナレッジネットワークでAWSのトレーニングを担当したり、意外と精力的だ。
さて、旅人の堀内さんは「旅をお金に換えよう」ということで、「出不精夫婦が暮らすように旅するブログ」を運営している。EC2上にWordPressのAMIである「AMIMOTO」(デジタルキューブ)を導入し、Elastic IPでIPアドレス、DNSサービスのRoute53で独自ドメインを割り当てている。いわゆるもっともベーシックなWordPressの初期構成で、「月が15~16ドルくらいで実現できる」というものだ。
続いてNext Step!ということで、堀内さんはホワイトペーパーでも公開されている「AWS Well-Architected Framework」に沿って、WordPressサイトを改善していく。AWS Well-Architected Frameworkは、質問集に答えることで、既存のAWS環境がAWSのベストプラクティスに沿っているか検証できるというもの。セキュリティ、信頼性、パフォーマンスと効率、コストの最適化の4つを目的としたこのフレームワークで、先ほどのAMIMOTO環境を検証してみようというのが、堀内さんのLTの趣旨だ。
検証・改善の方針としては「コストはなるべくかけたくない」「サービスに問題があったら、自動復旧されるのが望ましいが、最悪それに気づくことができればOK」「パフォーマンスはいいにこしたことはないが、コスト重視」「セキュリティもコストに響かない程度に強固に」などを挙げる。総じて、「コストは抑えつつ、セキュリティや信頼性、パフォーマンスにもそれなりにこだわりたい」というわがままをAWSで実現しようという方針だ。
まずセキュリティに関しては「IAMユーザーでログインし、MFAを有効化する」といった初期設定を行なったのち、常時オープンは80番ポートにしぼり、SSHは必要な時のみとすることで「セキュリティグループは極力閉じる」。「WebサイトをSSL化する」ためには、ACM(Amazon Certificate Manager)により、無料の証明書を導入する。
信頼性に関しては、単体のEC2だと不安なので、オートリカバリの機能を有効にする。また、EBS(Elastic Block Storage)の容量があふれても大丈夫なよう、ディスク容量を検知するCloudWatchのモニタリングスクリプトをインストールし、アラートを飛ばせるように。さらに1日1回スナップショットを取得すべく、Lambdaを用意しておく。「プログラムできないと無理と思っている人もいますが、だいたいググればコードもいっしょに出てきます。無料枠もあるので、お金もかかりません」と堀内さんは語る。
パフォーマンスに関してはCDP(Cloud Design Pattern)のWebストレージパターンに沿って、楽しい旅行の写真をAmazon S3に保存するよう設定。WordPressのプラグインを使えば、写真をS3に保存できるという。また、コンテンツの配信はすべてCDNであるCloudFrontを経由させる。堀内さんは「CloudFrontにSSL証明書をインストールできるので、サイト全体をSSL化できる。あと、動的コンテンツもCloudFrontを経由すると、EC2までの経路を最適化してくれるので、パフォーマンスを上がる」とCloudFrontを利用する背景を説明。この際は、S3のコンテンツが必ずCloudFront経由で配信するよう設定しておく必要があるという。
コストの最適化に関しては、RI(Reserved Instance)の購入を検討すれば、「半年以上続けようと思えば、コストも5~6割近く削減できる」という。全体で見ると、EC2インスタンスを1つで動かしているのとほとんど変わらない程度のコストで、ここまでバージョンアップできるという。
堀内さんは、「『出不精』で検索すると、『出不精で夫が太って困る』というYahoo!知恵袋の次くらいに出てくる(笑)」とブログの宣伝をしつつ、初心者向けのセッションを終えた。シンプルなAWSの構成に一工夫加えるだけで、ブログサイトがいろんな意味でリッチになるという内容がとてもためになった。
この連載の記事
-
第10回
デジタル
キャリアを超えてネットワークを語り合うNW-JAWSが始動! -
第9回
デジタル
カヤックでのAurora移行は「今のところいいことしかない」 -
第8回
デジタル
オルトプラス中田さんが語るAWSとAzure、GoogleのIoTの違い -
第6回
デジタル
JAWS-UG IoT支部とコラボ!300人で盛り上がった真夏のIoTLT -
第5回
デジタル
AWS初心者がまず知っておきたいこと、ハンズラボ吉田さんが語る -
第4回
デジタル
JAWS-UGコンテナ支部で垣間見えたDockerやECS活用のコツ -
第3回
デジタル
AWS運用に耐えうるIT部門は作れる?情シス支部の議論をのぞく -
第2回
デジタル
首都圏の16支部がそろい踏み!JAWS-UG東京、2年ぶり開催 -
第1回
デジタル
キャンセル待ち150人!Security-JAWS第1回で現場の苦労を見た - この連載の一覧へ