2017年2月13日 星期一

AWS 用 CLI 動態修改 EC2 的 Role

AWS 在 2/9 的時候在 Blog 發表在 EC2 上終於可以動態修改 IAM Role 了!! 相信有在使用 AWS 的人一定都遇過在開啟 EC2 後忘記加 Role 之後又重開 EC2 的窘境 (根本常常上演
New! Attach an AWS IAM Role to an Existing Amazon EC2 Instance by Using the AWS CLI

雖然這次僅有開放 CLI 使用,但這已經夠好用了,不用再浪費過多的時間在重啟 EC2 上,AWS 在文中提到這次更新可以在 EC2 原本沒有 Role 的情況下加入 Role,還能夠改變 EC2 的 Role 角色



 

用 AWS CLI 加入 EC2 的 Role

 

要用 CLI 關聯 Role 和 EC2,你需要 Instance ID,和 Role Instance Profile

使用以下指令關聯兩者。
$aws ec2 associate-iam-instance-profile --instance-id YourInstanceId --iam-instance-profile Name=YourNewRole-Instance-Profile

 

然後用 describe-iam-instance-profile-associations 驗證現有的 Role 是否關聯到 EC2 InstanceID。
$ aws ec2 describe-iam-instance-profile-associations 

{
"IamInstanceProfileAssociations": [
{
"InstanceId": "YourInstanceId",
...
...
...
"Arn": "arn:aws:iam::0123456789:instance-profile/YourNewRole-Instance-Profile"
...
...

 

然後你也可以更換 Role,超方便 XD

先拿到 EC2 的 Association ID
$ aws ec2 describe-iam-instance-profile-associations 
{
"IamInstanceProfileAssociations": [
{
...
"AssociationId": "iip-assoc-123456789",
...

 

然後用 replace-iam-instance-profile-association 複寫 Role。
$ aws ec2 replace-iam-instance-profile-association --association-id iip-assoc-123456789 --iam-instance-profile Name=YourReplacementRole-Instance-Profile

 

雖然目前還沒有開放 Web console,但是不用重新啟動 EC2 實在是一大福音,Web console 相信也不遠了。

 

Orignal From: AWS 用 CLI 動態修改 EC2 的 Role

沒有留言:

張貼留言