ヤマムギ

growing hard days.

*

ヤマムギ vol.9 (AWS)EC2からAWS CLIコマンドを実行してみようハンズオン 手順

   


このブログは2020/5/5に開催しました、「ヤマムギ vol.9 (AWS)EC2からAWS CLIコマンドを実行してみようハンズオン」の手順です。

「AWSではじめるLinux入門ガイド」出版 & 「AWS認定資格試験テキスト AWS認定 クラウドプラクティショナー」出版一周年記念勉強会を開催しました。

解説は、勉強会内で説明しますので、こちらのブログには手順のみを記載します。

※個人の検証アカウントとしての設定です。

検証環境

デフォルトVPCのEC2にSystemsManager セッションマネージャーから接続します。
EC2からAWS CLIコマンドで、S3、EC2の操作を試します。

AWSアカウントをお持ちでない方は、「ヤマムギ vol.7 AWSアカウント作成 & 最初の設定ハンズオン 手順」をご参考の上、作成してください。

検証用のEC2インスタンスは「ヤマムギ vol.8 (AWS)EC2でLinuxサーバー構築 手順」をご参考の上、作成してください。

デフォルトリージョン設定

セッションマネージャで操作をします。

1). デフォルトリージョンを設定します。
aws configure コマンドを実行します。

ap-northeast-1 は、東京リージョンのコードです。
各リージョンのコードは利用できるリージョンで確認できます。

output formatは、json, text, tableが設定できます。

2). configファイルを確認しましょう。

.aws/configファイルにoutputとregionが設定されていることが確認できます。

S3を操作してみよう

3). 新規バケットをs3 mb コマンドで作成してみます。

※ bucketname は世界で一意になるように変更してください。

今、EC2のIAMロールには、SystemsManagerで管理するためだけの権限しかありません。
ですので、s3 mbコマンドでバケットを新規作成することはできません。

4). S3バケットを作成するために、EC2に設定しているIAMロールにポリシーを追加します。
マネジメントコンソールで操作します。

EC2のIAMロールに以下のポリシーをインラインポリシーとして追加します。

5). もう一度新規バケット作成を試します。

※ bucketname は世界で一意になるように変更してください。

マネジメントコンソールで確認すると、バケットが作成できていることが確認できます。

6). IAMロールのインラインポリシーを編集しましょう。
以下にします。

※bucketnameはそれぞれのバケット名に置き換えてください。

7). バケットの一覧

8). オブジェクトのアップロード

※bucketnameはそれぞれのバケット名に置き換えてください。

アップロードされました。

オブジェクト名をクリックして、[オブジェクトURL]をクリックしてみてください。
ブラウザに「AccessDenied」と表示されてアクセスが拒否されることが確認できます。

9). アクセスコントロールリストを確認

アカウントにしかアクセス権限がないことがわかりました。

マネジメントコンソールでオブジェクトの[アクセス権限]タブを確認しても、Everyoneに権限がないことがわかります。

10). アクセスコントロールリストの設定

もう一度確認します。

AllUsersに対してのREAD権限が追加されました。

マネジメントコンソールアクセスコントロールリストでもEveryoneに読み取り許可がされました。

オブジェクト名をクリックして、[オブジェクトURL]をクリックしてみてください。
ブラウザに Hello という文字が表示されます。

11). オブジェクト一覧の表示

バケット内のオブジェクトの一覧が表示されます。

12). オブジェクトの削除

13). バケットの削除

EC2を操作してみよう

14). EC2インスタンスを操作するために以下にインラインポリシーをIAMロールに追加

15). EC2インスタンスの起動

EC2インスタンスを起動するときにAMIが必須のパラメータです。
ただし、そのAMIがサポートしているインスタンスタイプを指定する必要もありますし、アカウントを作成して12ヶ月無料利用枠のt2.microを指定するために、instance-typeパラメータも指定しています。

他のパラメータは自動設定されます。

マネジメントコンソールでもEC2インスタンスが起動していることを確認してみてください。

16). EC2インスタンスを確認

17). EC2インスタンスを終了

実行したらすぐにマネジメントコンソールで確認してみましょう。
ステータスがshutting-downになって、teminatedになることが確認できます。

いろいろやってみよう

AWS CLI リファレンスでサービスを探して、やってみたいコマンドにチャレンジしてみましょう。
サービスによっては課金に注意しましょう。

(オプション) AWS CLIバージョン2にアップグレード

AWS CLIにはバージョン1と2があります。
2020年5月4日時点でのAmazon Linux 2 はAWS CLIはバージョン1です。

Linux での AWS CLI バージョン 2 のインストールの手順に従い、v1をアンインストールして2をインストールします。

v1との共存ではなく、アップグレードできました。


最後までお読みいただきましてありがとうございました!

【PR】 「AWS認定試験対策 AWS クラウドプラクティショナー」という本を書きました。

【PR】 「AWSではじめるLinux入門ガイド」という本を書きました。

 - AWS, event, study

ad

ad

  関連記事

JAWS DAYS 2018 「Cost-Driven AWS クラウドアーキテクチャデザインとコスト最適化方法 – Cost-Driven AWS Cloud Architecture Design : The Lean Startup on AWS」を聞きました

以下は、思ったことや気になったことをメモしていますので、必ずしも登壇者の発表内容 …

docomo雑談APIのAPIキーを発行する

docomo雑談 APIのキー取得の方法です。 (2017年8月13日時点の情報 …

AWS DeepLens開封の儀

去年(2019年)7月にamazon.co.jpでDeepLens買えますやんっ …

ヤマムギ vol.6(勉強会) 「LINEとAWS(Lambda,Step Functions,API Gateway)とTwilioとkintoneでBOTを作ってみるハンズオン」を開催しました

2017/8/18に ヤマムギ vol.6 「LINEとAWS(Lambda,S …

「MasterCloud-Alexa makes the world a better place-」で登壇しました

クラウド全体を扱う勉強会MasterCloudのAlexaの会で登壇してきました …

AWS Lambda(Python)でDynamoDB テーブルを日次で削除/作成(オートスケーリング付き)

この記事はAWS #2 Advent Calendar 2018に参加した記事で …

RedmineをELB(ALB)でAutoScalingグループへ負荷分散

高可用なRedmineを作るためのELBの設定です。 高可用なRedmine R …

Java SE 7 Silver対策勉強をしながらメモ 2015/2/6

本日は例外の続き。 これで参考書の章立てはとりあえず終了!! 明日からは模試と練 …

DevLOVE関西「それぞれの現場で実践した【自動化】の話」に行ってきました

DevLOVE関西「それぞれの現場で実践した【自動化】の話」に行ってきました。 …

Amzon Linux のApacheでRedmineとWordPressをバーチャルホストで共存する

EC2とRDSを節約しようと思いまして、Redmineを動かしてるとこに検証用W …