91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

發布時間:2020-08-19 01:57:49 來源:網絡 閱讀:655 作者:beanxyz 欄目:云計算

上一篇豆子已經配置在PyCharm里面添加了boto3和pyboto3,因此寫腳本的時候可以直接在自己的PyCharm里面編寫。

下面是一個例子遍歷所有的region查找EC2,如果狀態是開機,那就關掉;或者倒過來也可以寫成 如果是關機狀態,就開機。

import boto3

def lambda_handler(event, context):

    # Get list of regions
    ec2_client = boto3.client('ec2')
    regions = [region['RegionName']
               for region in ec2_client.describe_regions()['Regions']]

    # Iterate over each region
    for region in regions:
        ec2 = boto3.resource('ec2', region_name=region)

        print("Region:", region)

        # Get only running instances
        instances = ec2.instances.filter(
            Filters=[{'Name': 'instance-state-name',
                      'Values': ['running']}])

        #Stop the instances
        for instance in instances:
            instance.stop()
            print('Stopped instance: ', instance.id)

        # instances = ec2.instances.filter(
        #     Filters=[{'Name': 'instance-state-name',
        #               'Values': ['stopped']}])
        #
        # for instance in instances:
        #     instance.start()
        #     print('Start instance: ', instance.id)

if __name__ == '__main__':
    lambda_handler(0,0)

執行一下是工作的

C:\Users\yuan\PycharmProjects\aws\venv\Scripts\python.exe C:/Users/yuan/PycharmProjects/aws/StopInstance.py
Region: eu-north-1
Region: ap-south-1
Region: eu-west-3
Region: eu-west-2
Region: eu-west-1
Region: ap-northeast-2
Region: ap-northeast-1
Region: sa-east-1
Region: ca-central-1
Region: ap-southeast-1
Region: ap-southeast-2
Stopped instance:  i-0bb70cc9666ce2af3
Region: eu-central-1
Region: us-east-1
Stopped instance:  i-00e9dc7c254dbe497
Region: us-east-2
Region: us-west-1
Region: us-west-2

然后我們在aws的Lambda里創建一個新的函數, 這里我已經自定義了一個role了,確保這個role可以對ec2有開機和關機的權限

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

IAM的權限如下所示:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Action": [
        "logs:CreateLogGroup",
        "logs:CreateLogStream",
        "logs:PutLogEvents"
      ],
      "Resource": "arn:aws:logs:*:*:*"
    },
    {
      "Effect": "Allow",
      "Action": [
        "ec2:DescribeInstances",
        "ec2:DescribeRegions",
        "ec2:StartInstances",
        "ec2:StopInstances"
      ],
      "Resource": "*"
    }
  ]
}

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

拷貝函數上來

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

接下來 在cloudwatch里面添加一個新的rule

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

創建向導,這里選擇schedule,這里使用 cron的表達式,注意他是GMT的時間,因此需要自己和本地時間轉換一下

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

寫好之后他會有個友好的提示界面

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

完成創建

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

回到Lambda的界面, 可以看見他的觸發器多了一個CloudWatch Events

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

等待執行之后,可以查看日志

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

也可以確認EC2 服務 的確關機了

Lambda,AWS和Python的自動化管理操作 - 自動開機和關機

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

宜兰县| 修文县| 嘉荫县| 棋牌| 靖安县| 鲜城| 盈江县| 麻阳| 永寿县| 浪卡子县| 全州县| 湘阴县| 兴国县| 汶上县| 宁武县| 弥渡县| 四会市| 都安| 江北区| 临湘市| 高台县| 鹤岗市| 聂拉木县| 五大连池市| 广南县| 武宁县| 雷州市| 英吉沙县| 柳河县| 济宁市| 吉首市| 璧山县| 汝城县| 隆安县| 莱阳市| 克山县| 连江县| 山阴县| 金秀| 内乡县| 乌拉特前旗|