• System Operations on AWS


    登陆到CommandHost实例,通过AWS CLI来管理各个资源

    1. 通过Tags来管理资源

    1.1 登陆到CommandHost实例

    1.2 找出development实例

    1.2.1 打开PowerShell窗口

    1.2.2 找出所有tag名为Project,值为ERPSystem

    aws ec2 describe-instances --filter "Name=tag:Project,Values=ERPSystem"
    

    1.2.3 使用--query,减少上面命令的输出内容,只显示InstanceId

    aws ec2 describe-instances --filter "Name=tag:Project,Values=ERPSystem" --query 'Reservations[*].Instances[*].InstanceId'
    

    1.2.4 在输出内容中包含多个选定值

    aws ec2 describe-instances --filter "Name=tag:Project,Values=ERPSystem" --query 'Reservations[*].Instances[*].{ID:InstanceId,AZ:Placement.AvailabilityZone}'
    

    1.2.5 在输出内容中包含Project的tag值

    aws ec2 describe-instances --filter "Name=tag:Project,Values=ERPSystem" --query 'Reservations[*].Instances[*].{ID:InstanceId,AZ:Placement.AvailabilityZone,Project:Tags[?Key==`Project`] | [0].Value}'
    

    1.2.6 在输出内容中包含Environment和Version的tag值

    aws ec2 describe-instances --filter "Name=tag:Project,Values=ERPSystem" --query 'Reservations[*].Instances[*].{ID:InstanceId,AZ:Placement.AvailabilityZone,Project:Tags[?Key==`Project`] | [0].Value,Environment:Tags[?Key==`Environment`] | [0].Value,Version:Tags[?Key==`Version`] | [0].Value}'
    

    1.2.7 添加格外的过滤条件,只显示Environment的tag值为development的内容

    aws ec2 describe-instances --filter "Name=tag:Project,Values=ERPSystem" "Name=tag:Environment,Values=development" --query 'Reservations[*].Instances[*].{ID:InstanceId,AZ:Placement.AvailabilityZone,Project:Tags[?Key==`Project`] | [0].Value,Environment:Tags[?Key==`Environment`] | [0].Value,Version:Tags[?Key==`Version`] | [0].Value}'
    

    1.3 修改development实例的tag名为version的值

    1.3.1 运行powershell脚本来修改version值

    C:	empchange-resource-tags.ps1
    

    1.3.2 检查version值是否修改

    aws ec2 describe-instances --filter "Name=tag:Project,Values=ERPSystem" "Name=tag:Environment,Values=development" --query 'Reservations[*].Instances[*].{ID:InstanceId,AZ:Placement.AvailabilityZone,Project:Tags[?Key==`Project`] | [0].Value,Environment:Tags[?Key==`Environment`] | [0].Value,Version:Tags[?Key==`Version`] | [0].Value}'

    2. 通过Tag停止和启动EC2实例

    2.2.1 停止所有Project名为ERPSystem,Environment为development的实例

    c:	empstopinator.ps1 -tags "Project=ERPSystem;Environment=development"
    

    2.2.2 启动所有Project名为ERPSystem,Environment为development的实例

    c:	empstopinator.ps1 -tags "Project=ERPSystem;Environment=development" -start
    

    3. Terminate不符合要求的实例

    3.1.1 删除Environment标签

    3.1.4 运行terminate-instances.ps1脚本

    c:	emp	erminate-instances.ps1 -region us-west-2 -subnetid subnet-d67568a1
    

  • 相关阅读:
    Debug相关的一些小技巧
    <Information Storage and Management> 读书笔记 之二
    <<Information Storage and Management>>读书笔记 之三
    LINQ to SQL语句(2)之Select/Distinct【转】
    Asp.Net MVC实践 探索UrlRouting并分析UrlHelper (基于ASP.NET MVC Preview 3) 【转】
    MVC学习之分页 【转】
    在 ASP.NET MVC 项目中使用 WebForm 【转】
    Asp.net Mvc Codeplex Preview 5 第三篇 实现Action参数传递繁杂类型 【转】
    jQuery入门[1]-构造函数 【转】
    LINQ to SQL语句(1)之Where【转】
  • 原文地址:https://www.cnblogs.com/edward2013/p/5246851.html
Copyright © 2020-2023  润新知