PowerShell 自动化管理 AWS

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了PowerShell 自动化管理 AWS 相关的知识,希望对你有一定的参考价值。

豆子很有一段时间没有去碰aws了,最近看了看发现完全可以用powershell来进行管理,兴致勃勃地打算写个自动化的脚本来配置个高可用的网站练手。不过不积跬步无以至千里,先从最基本的东西看起。


  1. 下载安装AWSPowerShell模块


首先,需要下载对应的模块,下载地址在这里。

http://aws.amazon.com/powershell/


下载之后按照提示安装就行了。


默认情况下,他会把模块安装到下面这个地址

C:\Program Files (x86)\AWS Tools\PowerShell\AWSPowerShell

技术分享




根据个人习惯,可以手动或者配置powershell profile,或者更改$env:pspath的路径来导入模块。


导入模块之后就可以使用相关的命令了

import-module AWSPowerShell


   2. 配置安全访问文件


要访问AWS,首先得有一个AWS的账户,注册一个免费的试用账户可以用1年。使用主账号登录AWS,然后在IAM里面创建一个新的账号,分配权限,下载保存这个账户的AccessKey和SecretKey

具体操作可以参考我的这篇文章

http://beanxyz.blog.51cto.com/5570417/1433013


有了这两个安全码,我们可以配置这个用户的profile文件了,然后利用这个文件来初始化链接,这样比每次都指定安全代码简单安全多了。


生成对应的profile文件

Set-AWSCredentials -AccessKey AKIAJASDFSXSXV2RQ -SecretKey Pc58DwSDFo4Pe41SN618H+yFv5SDFSFJ2M -StoreAs myprofile


确认一下

Get-AWSCredentials -ListProfiles

技术分享

如果不想要了,可以删掉

Clear-AWSCredentials -ProfileName myprofile



3. 初始化链接


配置了profile之后,就可以链接到自己的AWS了,指定profile名字和登录的区域

 Initialize-AWSDefaults -ProfileName myprofile -Region ap-southeast-2

如果不确定 区域的简写,可以通过下面这个命令查看

Get-AWSRegion

技术分享

来测试一下是否工作

 Get-EC2Instance

技术分享


成功获取了一个我的EC2实例,试试看能否远程关机。


技术分享


成功!

技术分享


4. 搜索需要的命令


现在成功的连上了AWS,那么我可以使用哪些命令呢?首先看看这个模块一共多少个命令?

Get-Command -Module AWSPowerShell | measure

哇!足足有1909个命令,基本上任何图形界面能够实现的功能都能用powershell实现了。

技术分享


事实上,他的确包括了几乎AWS的每个服务


技术分享

这么多命令,怎么搜索自己需要的呢?


一种方法是通过服务操作类型来搜索


如果我知道对应的操作名称,我可以直接搜索 apioperation

技术分享


甚至可以直接省略

技术分享


如果我记不太清完整的名字,我可以通过正则命令来进行匹配,比如我需要知道任何和securitygroup相关的服务操作

Get-AWSCmdletName –ApiOperation SecurityGroup -MatchWithRegex

技术分享

 


 另外一种方法是PowerShell里面通用的方法,通过命令的名字来搜索

比如

 Get-Command *EC2* -Module AWSPowerShell

技术分享


现在豆子成功地连上了AWS,那么下一步来看看如何使用PowerShell来配置基本的EC2 服务了。


官网参考资料: http://docs.aws.amazon.com/powershell/latest/userguide/pstools-getting-set-up.html


本文出自 “麻婆豆腐” 博客,请务必保留此出处http://beanxyz.blog.51cto.com/5570417/1793572

以上是关于PowerShell 自动化管理 AWS 的主要内容,如果未能解决你的问题,请参考以下文章

PowerShell 自动化管理 AWS- VPC

PowerShell AWS 自动化管理

Powershell AWS 自动化管理- ELB and Auto Scaling

AWS Lambda 自动化和 PowerShell

Powershell AWS 自动化管理 (11) - 创建一个高可用的WordPress博客(中)

PowerShell官方文档