本日勉強したことをメモします。
AWS Organizationに新しいアカウントを追加する方法
docs.aws.amazon.com
AWS Organizationに新しいアカウントを追加するには、Organization内に新しくアカウントを作成するか、招待を作成するかの二通りの方法がある。
・Organizationに新しくアカウントを作成する場合は、AWS Organizationのコンソール画面から作成できる。
・Organizationのルートアカウントで、他のアカウントへOrganizationへの招待を送ることができる。
・他のアカウントがOrganizationへの参加をリクエストすることはできない。(受け取った招待を承認することのみ可能)
S3バケットを別アカウントにコピーしたい場合に必要になる権限
S3バケットを別アカウントのバケットにコピーしたい場合は、以下の設定が必要になる。
・コピー元のアカウントにて、S3バケットにコピー先のアカウントからListBucketとGetObjectを許可するバケットポリシーを付与
・コピー先のアカウントにて、IAMユーザーかIAMグループにコピー元のバケットのファイルをコピー先のバケットにコピーするIAMポリシーを付与
OpsWorksのスタックインスタンスを最新のセキュリティパッチに更新する
OpsWorksのスタックインスタンスを最新のセキュリティパッチに更新するには、以下の方法が推奨されている。
・既存のオンラインインスタンスを交換するために、新しいインスタンスを作成し起動する。新しいインスタンスはセットアップ時に最新のセキュリティパッチをインストールしておく。
・Chef11.10以前のLinuxインスタンスの場合、Update Dependencies stackコマンドを実行し、セキュリティパッチとその他の特定のアップデータをインストールする。
Systems Managerを使って決まった時間にEC2からS3にログを送る
Systems Managerを使って決まった時間にS3にログを送るには、以下の方法がある。
・State Managerを使って、特定の時間にEC2に対してシェルスクリプトを実行させる
・Systems Manager Maintenance Windowsにスケジュールを作成し、特定の時間にS3バケットにログを移動するようにする。
注意点
・Session Managerはインスタンス管理用のサービスなのでスクリプトやコマンドを実行する目的では使用しない。
・Systems Manager DistributorはSystems Managerで管理しているインスタンスにソフトウェアをインストールするためのものなのでスクリプトやコマンドを実行する目的では使用しない。
Systems Managerのマネジメントコンソールはこちら。
画面左にState Manager、Maintenance Window、Distributorなど各機能があるのが確認できる。
Systems ManagerのPatch ManagerでEC2インスタンスを選択する方法
Patch ManagerでEC2を選択するには以下の方法がある。
・インスタンスのタグを入力する
・パッチグループを選択する
・インスタンスを手入力で選択する
マネジメントコンソールでは以下のようになっている。
それ以外の方法では選択できない。
AMIを新しく更新する環境でもELBヘルスチェック
Auto Scalingグループの前にELBを置いていて、新しいバージョンをデプロイする時は新しいAMIがAuto Scaling グループにAMIを参照した新しい設定が更新される環境において、サイトがエラーを出しているにも関わらずELBのヘルスチェックが成功する場合は、以下の対応が考えられる。
・ELBのヘルスチェックをアプリケーションが完全に問題ないかチェックするようにして、失敗したらエラーを返すように設定する。 ->既存のヘルスチェックがアプリケーションに到達できるかどうかのみを判断していて、アプリケーションの機能まではチェックしたいない可能性があるため。
・新規AMIを参照した新しい設定を作成し、Auto Scalingグループに関連づける。Auto Scalingグループのサイズを二倍にし、新しいインスタンスがヘルシーになるまで待ち、その後元のサイズに戻す。新しいインスタンスがヘルシーにならなかった場合、以前の設定をAuto Scalingグループと関連付け直す。
->Auto Scalingのサイズを二倍にすることで古いインスタンスが停止する前に新しいインスタンスをヘルシーにするリードタイムが生まれるため。
また、以下のような対応は問題の解決につながらないため意味がない。
・ヘルスチェックの間隔を短くする。
・ヘルスチェックのUnhelthyの閾値を上げる。