ヤマムギ

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入門ガイド」という本を書きました。

i

【PR】 「ポケットスタディ AWS認定 デベロッパーアソシエイト」という本を書きました。

 - AWS, event, study

ad

ad

  関連記事

AWS Organizationsからアカウントを新規作成してみて

AWS Organizationsでアカウントを新規作成することがありましたので …

「機械学習・データサイエンス基礎講座(1)」に参加しました

異業種データサイエンス研究会を主宰されている井伊さんが開催される連続の基礎講座の …

T3.nanoで仮想メモリ割当をユーザーデータで実行する

T3.nanoはメモリがだいたい500MBです。 実行する処理によってはメモリエ …

AWS Code Commitをプライベートリポジトリとして使う

GitHubでもいいんですが、アクセスキーとかパスワードとかコンフィグ系で書いて …

QuickSightのVisualizeをダッシュボード化して定期メール

「Backlogの実績工数をAmazon QuickSightで可視化してわかっ …

VUI and IoT device(Alexa Day 2019でのブログ)

以下は、気になったことのメモとか感想を書いています。 登壇者、発表者、主催企業な …

JAWS DAYS 2018 振り返り(特にコミュニティフレンドシップ)

JAWS DAYS 2018を振り返りたいと思います。 やったこと コミュニティ …

AWS Lambda KMSを使って環境変数を暗号化、復号化する(Python)

Lambda内で外部APIを使用する場合などをユースケースとして、環境変数をKM …

Developers Summit 2018 「マイクロサービスをAWSサーバレス&コンテナで実装する方法」を聞きました

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

WordPressのwp-login.php , xmlrpc.phpへのアクセスをAWS WAFで接続元IPアドレスを制限する

AWS CloudWatch LogsエージェントでAmazon EC2上のNg …