【AWS初心者向け】 EC2 運用担当者が知っておくべきこと

AWS基礎
AWS初心者
AWS初心者
新しい現場でAWSのEC2をこれから扱うことになりそう。
どんなサービスなのか、どんな時に使うべきなのかを教えてください。

こういった疑問に答えます。

【AWS初心者向け】 EC2 運用担当者が知っておくべきこと

本記事を読むことでこれからEC2の運用者が知っておくとよいことがわかります。

  • EC2の利用イメージをつかめる
  • EC2作成時のパラメータを理解できる(パラメータ全見せ 2021/1時点)
  • どのようなときにEC2を使うべきなのかがわかる
記事の信頼性
筆者はAWS経験5年程度です。AWS資格は5冠達成しました。
現在は大規模ECサイトのAWS運用を任されるようになっています。

それでは見ていきましょう。

【AWS初心者向け】 EC2 運用担当者が知っておくべきこと

EC2 とは

  • 数分で起動する仮想サーバ
  • スペック変更も数分で可能

ざっくり過ぎな説明ですが、こんな感じです。詳細はblackblet見ると良いです。筆者がAWSで初めて使うサービスの概要を知りたいときは大体Blackbeltから見るようにしています。
20190305 AWS Black Belt Online Seminar Amazon EC2

EC2 インスタンス作成時のパラメータ

ステップ 1Amazon マシンイメージ (AMI)

  • AMIとは
  • インスタンスの作成に必要なソフトウェア構成 (OS、アプリケーションサーバー、アプリケーション) を含むテンプレート

  • 載せるアプリのシステム要件を満たすOSから選択する。
  • ※一つのシステム内ではOSはバージョン含め統一しておいたほうが管理がしやすいです。

  • 各OSの特徴を軽く理解
  • 【ざっくりまとめ】Linuxディストリビューションを比較してみる
    ※RHEL:有償でサポート充実、CentOS:OSS(無償)です。RHELはクリティカルな業務で利用する。

  • 各OSのEOLは把握しておくと良い
  • RHEL・CentOS・Amazon Linux のサポート期間

  • ルートデバイスタイプは基本はEBSを選択する
  • instance-store:データ保存不可(再起動時に初期化)
    EBS:データ保存可能

  • 仮想化タイプは基本はhvmを選択
  • 既存サーバがparavirtualの場合は他のサーバに合わせるが、新規構築ならhvm一択。
    paravirtual:性能低(昔は性能高だった)
    hvm:性能高
    Linux AMI 仮想化タイプ

  • ENA 有効
  • 2018年に追加されたネットワーク高速化機能。古いインスタンスタイプでは有効化されていない。無効化状態のインスタンスを有効化するには複数回の停止が必要となる。
    EC2 インスタンス向けの次世代ネットワークインターフェイス、Elastic Network Adapter (ENA) を導入

  • 参考:AWS Marketplace
  • AWS Marketplaceでは各ベンダーなどが自社ソフト導入済のAMIを有料で販売しています。
    AWS Marketplace概要
    私は利用経験ないのですが、有料ソフトウェアを試してみたいというときに有用なようです。機会があれば使ってみたいです。
    Tableau ServerをAWS Marketplaceから構築してみる

ステップ 2 インスタンスタイプの選択

  • インスタンスタイプはシステムの要件より決定
  • インスタンスタイプ一覧で各インスタンスタイプの特徴を確認。
    「Amazon EC2 インスタンスタイプ」
    ※T2、T3、T4は本番では使わないほうが無難(CPUクレジットの管理が必要になってしまう)

  • インスタンスタイプの世代は新規システム構築であれば最新世代で良い
  • 新しすぎる(リリース後1年以内くらい??)とAWS全体の許容数を超えてリソース不足エラー(InsufficientInstanceCapacity)となり起動できないことも。。

ステップ 3: インスタンスの詳細の設定

  • 購入のオプション スポットインスタンスコスト最適化
  • スポットインスタンスは安いが場合によっては削除の可能性があるインスタンス。筆者は利用経験ないが本番では利用不可では?と思う。

  • 配置グループ
  • ネットワークパフォーマンスを向上したりハードウェア障害を軽減できる
    EC2のプレイスメントグループを活用するとネットワークパフォーマンスを向上したりハードウェア障害を軽減できます

  • キャパシティの予約
  • リソース不足エラー(InsufficientInstanceCapacity)を回避するための予約機能
    予約された容量は、インスタンスがその容量で実行中かどうかにかかわらず、選択されたインスタンスタイプのオンデマンド料金で課金される。時間指定可能

  • ドメイン結合ディレクトリ
  • AWS Directory Serviceを利用している場合に選択
    筆者は利用経験なし(踏み台サーバのみでユーザ管理し、他サーバは共通ユーザのみとしている)

  • 停止動作に休止動作を追加する
  • 休止とはWindowsのスリープ

  • CloudWatch 詳細モニタリングを有効化
  • 基本モニタリング
    データは自動的に 5 分間無料で取得できます。
    詳細モニタリング
    1 分間のデータを取得できます。追加料金がかかります。

  • Dedicated Host(専用ホスト)
  • ソフトウェアライセンスを、既存のソケット単位、コア単位、または VM 単位で使用
    Dedicated Host は「ホスト単位」での請求となりそのホスト上で稼働するインスタンスには請求が発生しない

  • ユーザーデータ
  • 初回起動時に実行されるシェルスクリプト(#!/bin/bashから始める)
    オートスケールするサーバに設定しておくと便利
    NW断などの原因で中途半端に実行されることもあり、loggerでmessagesなどにログ出力させた方が良い

ストレージ

  • ボリュームタイプ
  • 基本は汎用SSDでよい。HDDはシーケンシャルアクセス(データウェアハウスなどの特定用途)に強い

    参考:20190320 AWS Black Belt Online Seminar Amazon EBS

  • 暗号化
  • 銀行などセキュリティ要件が厳しい場合は暗号化必須の要件がある。その場合は暗号化する。多少性能影響あるため、非暗号化ボリュームから変更の場合は要注意

EC2 利用を検討

今回はEC2の解説ですが、運用性やコストメリットを考慮し、そもそもEC2を利用するべきかどうか検討するところから始めるのが良いかなと思っています。
AWSでコンピュートリソースを構築する場合、下記のような選択肢があります。

20190402 AWS Black Belt Online Seminar Let’s Dive Deep into AWS Lambda Part1 & Part2

上記リンクにコンピューティングの進化(P21~24)の図があります。EC2に比べ、コンテナやサーバレス構成の優位性が理解できます。

コメント

タイトルとURLをコピーしました