Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

初めてさわるEC2ロール

646 views

Published on

2018年5月21日に開催されました、JAWS-UGのOpsJAWS・熊本支部勉強会での登壇資料です。
https://jaws-ug-kumamoto.doorkeeper.jp/events/74119

Published in: Technology
  • Be the first to comment

  • Be the first to like this

初めてさわるEC2ロール

  1. 1. 初めてさわるEC2 ロール 2018年05月21日 JAWS-UG熊本 山ノ内祥訓 OpsJAWS・熊本支部勉強会
  2. 2. 自己紹介 名前 年齢 住まい お仕事 山ノ内 祥訓(よしのり) 0x26 熊本県 現在は某大学病院の特任助教で臨床研究のデータマネー ジャとして主に臨床研究データに関する設計及び開発と 運用をやっています。 某SIerで医療情報システムの導入及び開発を10年ぐらい やっていました。 SNS Facebook https://www.facebook.com/yoshinori.yamanouchi.12 Github https://github.com/eolla1013 資格等 修士(医科学) 現在博士課程 医療情報技師
  3. 3. 一番使うEC2 一応研究職なので、職業柄大量にコンピュートリソース を使うことが多い。機械学習とか・・・。 基本的な使い方は自分の研究のなかでローカルで実行できな いほどのボリュームが必要な処理をやって終わったらデータ を落として削除。 本業は全てオンプレかつインターネット非接続なのでクラウ ドは使っていない。
  4. 4. 基本的な構成 Public Subnet Private SubnetGateway Subnet 環境構築はPublic Subnetで行い、EBS暗号化とAMI化。 データとスクリプトはS3に保存。 処理はPrivate Subnet内でスポットインスタンスを使用。 各Subnetの操作はGateway SubnetのEC2インスタンスを経由。
  5. 5. 実際の計算処理を始めると・・・  コスト削減のために実行は全てスポットインスタンスを使っている。  スポットインスタンスなので処理中に突然死を起こす。  処理結果はS3やEFSに保存するのでとりあえず大丈夫。  しかし、止まると毎回インスタンスの作成から始めないといけない。  AMIからの起動はほぼ1アクションだがそこから先が問題。  AMIにアクセスキーとか保存してないし、毎回設定するのは面倒。 そういえばEC2にIAMロールって設定できたよね・・・
  6. 6. IAMロール IAMロールは、AWSのアクセス権限をまとめたものでユーザとは切り離して管理 ができる。使用するには作成したロールをユーザやグループなどに割り当てる。 また、ロールには認証情報 (パスワードやアクセスキー) が関連付けられない代 わりに、ユーザーがロールを引き受けた場合一時的な認証情報が作成される。 ロールはユーザやグループだけでなくEC2などのサービスにも割り当てることが できる。EC2にロールを割り当てるとEC2上で動作するアプリケーションで使用 するAWS関連のアクセスキーは不要となる。
  7. 7. こんな感じ 1. S3のバケットのアクセス権限をもつロールを作成する。 2. EC2起動時に作成したロールを指定する。 3. CLIでS3にアクセスするときにアクセスキーやユーザ設定をしなくても ロールで指定したバケットにアクセスできる。
  8. 8. (1)S3アクセスポリシーの作成 特定のバケットのみアクセス できるようにする。 データの保存があるのでフル アクセスにした。
  9. 9. (2)ロールの作成 AWSサービスのEC2ロールを作成する。 ポリシーは先ほど作成したものだけ選択する。
  10. 10. (3)まずロールを指定せずに起動
  11. 11. (4)ターミナルに接続 CLIを使用してS3のバケットにアクセスしてみる。 認証情報を設定しておかないとアクセスできない。
  12. 12. (5)作成したロールを選択して起動 インスタンスを起動するときに先ほど作成したロールを指定する。
  13. 13. (6)ターミナルに接続 CLIを使用してS3のバケットにアクセスしてみる。 何も設定していなくてもアクセスできる。
  14. 14. EC2ロールでアクセス可能なサービス だいたい使えますww 下記のURLで「一時認証情報」がYesのものです。 https://docs.aws.amazon.com/ja_jp/IAM/latest/UserGuide/ reference_aws-services-that-work-with-iam.html
  15. 15. まとめ 個別ユーザやらアクセスキーやらをたくさん作っていくとどれがどれだか わからなくなってきます。 また、こういった情報が環境変数などの各種設定に散らばってしまうのも 変更漏れや間違いの原因です。 AWSのサービスの権限管理はロールでまとめてしまうとこのあたりが楽 になりますので、知らなかった人は今後使ってみてください。 登壇時の質疑応答より) Launch Templates for Amazon EC2 instancesを使うともっと楽になれるよ!!(By伊藤さん)
  16. 16. ご清聴ありがとうございました!!

×