久久精品人人爽,华人av在线,亚洲性视频网站,欧美专区一二三

如何進行AWS的自動部署工具codedeploy部署

163次閱讀
沒有評論

共計 4823 個字符,預計需要花費 13 分鐘才能閱讀完成。

如何進行 AWS 的自動部署工具 codedeploy 部署,針對這個問題,這篇文章詳細介紹了相對應的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

開始部署 codedeploy:1. 先預置 IAM 用戶:

創建一個 IAM 用戶或使用一個與 AWS 相關聯的用戶;

復制以下的策略附加到 IAM 用戶,向 IAM 用戶賦予對 codedeploy(及 codedeploy 所依賴的 AWS 服務和操作)的訪問權限:

{
  Version : 2012-10-17 ,
  Statement : [
    {
      Effect : Allow ,
      Action : [
        autoscaling:* ,
        codedeploy:* ,
        ec2:* ,
        lambda:* ,
        ecs:* ,
        elasticloadbalancing:* ,
        iam:AddRoleToInstanceProfile ,
        iam:CreateInstanceProfile ,
        iam:CreateRole ,
        iam:DeleteInstanceProfile ,
        iam:DeleteRole ,
        iam:DeleteRolePolicy ,
        iam:GetInstanceProfile ,
        iam:GetRole ,
        iam:GetRolePolicy ,
        iam:ListInstanceProfilesForRole ,
        iam:ListRolePolicies ,
        iam:ListRoles ,
        iam:PassRole ,
        iam:PutRolePolicy ,
        iam:RemoveRoleFromInstanceProfile , 
        s3:*
      ],
      Resource : *
    }    
  ]
}

可以使用提供的 AWS cloudformation 模板啟動與 codedeploy 兼容的 EC2 實例;如果使用 AWS cloudformation 模板創建應用程序,部署組及部署配置,需要向 IAM 用戶賦予 AWS  cloudformation 和 AWS cloudformation 所依賴的 AWS 服務和操作的訪問權限,例如:

{
  Version : 2012-10-17 ,
  Statement : [
    {
      Effect : Allow ,
      Action : [               
        cloudformation:*        
      ],
      Resource : *
    }
  ]
}

2. 安裝或升級 AWS CLI 或升級:

要從本地的計算機上調用 codedeploy,必須安裝 AWS CLI。

AWS CLI 的 1.6.1 版最先提供了 CodeDeploy 命令。而 1.7.19 版的 AWS CLI 中提供了用于處理本地實例的 CodeDeploy 命令;

安裝的是舊版 AWS CLI,則必須升級它,以使 CodeDeploy 命令可用。調用  aws –version  來查看版本

使用捆綁安裝程序安裝 AWS CLI:(這是為當前用戶安裝 AWS CLI 命令)

curl https://s3.amazonaws.com/aws-cli/awscli-bundle.zip -o awscli-bundle.zip

unzip awscli-bundle.zip

./awscli-bundle/install -b ~/bin/aws

這會將 AWS CLI 安裝到默認位置 (~/.local/lib/aws) 并在  ~/bin/aws  中創建符號鏈接 (symlink)。確保您的  ~/bin  環境變量中包含  PATH,以使該符號鏈接生效。

$ echo $PATH | grep ~/bin$ export PATH=~/bin:$PATH

確保 $PATH  設置在多次會話之間保留,將  export  行添加到 shell 配置文件(~/.profile、~/.bash_profile  等)

卸載 AWS CLI:

除了可選的符號鏈接之外,捆綁安裝程序不會將任何內容放在安裝目錄之外,所以卸載十分簡單,就是直接刪除這兩個項目,

sudo rm -rf /usr/local/aws
sudo rm /usr/local/bin/aws

在安裝完后需要進行配置:

aws config 命令是配置 AWS CLI 最快的方法:

$ aws configureAWS Access Key ID [None]: AKIAIOSFODNN7EXAMPLEAWS Secret Access Key [None]: wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEYDefault region name [None]: us-west-2Default output format [None]: json

鍵入該命令時,AWS CLI 會提示您輸入四條信息(訪問密鑰、秘密訪問密鑰,AWS 區域和輸出格式),并將它們存儲在名為  default  的配置文件(一個設置集合)中。每當您運行的 AWS CLI 命令未明確指定要使用的配置文件時,就會使用該配置文件.

AWS Access Key ID  和  AWS Secret Access Key  它和 IAM 或角色相關聯。

在配置 AWS CLI 時,系統將提示您指定 AWS 區域。選擇  AWS General Reference  中的區域和終端節點中列出的支持區域之一

要確認安裝或者升級:可以使用(aws deploy  help)

3. 為 codedeploy 創建服務角色:

為 codedeploy 創建的服務角色必須授予對計算平臺所需的權限,部署多個平臺,建議為每一個平臺創建一個角色,要添加權限,請添加以下一個或多個 AWS 提供的策略:

對于 EC2/ 本地 部署,附加  AWSCodeDeployRole  策略。該策略為您的服務角色提供針以下權限:

閱讀您實例上的標簽或通過 Amazon EC2 Auto Scaling 組名稱來識別您的 Amazon EC2 實例。

讀取、創建、更新和刪除 Amazon EC2 Auto Scaling 組、生命周期掛鉤和擴展策略。

將信息發布到 Amazon SNS 主題。

檢索有關 CloudWatch 警報的信息。

讀取和更新 Elastic Load Balancing。

對于 Amazon ECS 部署,附加  AWSCodeDeployRoleForECS  策略。該策略為您的服務角色提供針以下權限:

讀取、更新和刪除 Amazon ECS 任務集。

更新 Elastic Load Balancing 目標組、偵聽器和規則。

調用 AWS Lambda 函數。

訪問 Amazon S3 存儲桶中的修訂文件。

檢索有關 CloudWatch 警報的信息。

將信息發布到 Amazon SNS 主題。

對于 AWS Lambda 部署,附加  AWSCodeDeployRoleForLambda  策略。該策略為您的服務角色提供針以下權限:

讀取、更新和調用 AWS Lambda 函數和別名。

訪問 Amazon S3 存儲桶中的修訂文件。

將信息發布到 Amazon SNS 主題。

檢索有關 CloudWatch 警報的信息。

在設置服務角色過程中,還可以更新其信任關系,指定希望向其授予訪問權限的終端節點。

4. 為 EC2 實例創建 IAM 實例配置文件:

ECS 和 lambda 平臺是不需要 IAM 實例配置文件的;

ECS 部署會部署一個 ECS 服務,Lambda 部署會部署一個無服務器的 Lambda 函數版本;

登錄 AWS 管理控制臺并通過以下網址打開 IAM 控制臺 https://console.aws.amazon.com/iam/。

在 IAM 控制臺的導航窗格中,選擇策略(策略),然后選擇創建策略(創建策略)。(如果開始按鈕出現,選擇此按鈕,然后選擇創建策略。)

在創建33策略頁面上的 JSON 選項卡中粘貼以下內容:

{
    Version : 2012-10-17 ,
    Statement : [
        {
            Action : [
                s3:Get* ,
                s3:List*
            ],
            Effect : Allow ,
            Resource : *
        }
    ]
}

建議將此策略限制為僅  EC2 實例必須訪問的  S3。允許訪問包含 CodeDeploy 代理的 S3。否則,在實例上安裝或更新 CodeDeploy 代理時可能會發生錯誤。要授予 IAM 實例配置文件僅訪問  S3 中的某些 CodeDeploy 資源工具包存儲桶,請使用以下策略,但刪除要阻止訪問的存儲桶行:

{
  Version : 2012-10-17 ,
  Statement : [
    {
      Effect : Allow ,
      Action : [
        s3:Get* ,
        s3:List*
      ],
      Resource : [
        arn:aws:s3:::replace-with-your-s3-bucket-name/* ,
        arn:aws:s3:::aws-codedeploy-us-east-2/* ,
        arn:aws:s3:::aws-codedeploy-us-east-1/* ,
        arn:aws:s3:::aws-codedeploy-us-west-1/* ,
        arn:aws:s3:::aws-codedeploy-us-west-2/* ,
        arn:aws:s3:::aws-codedeploy-ca-central-1/* ,
        arn:aws:s3:::aws-codedeploy-eu-west-1/* ,
        arn:aws:s3:::aws-codedeploy-eu-west-2/* ,
        arn:aws:s3:::aws-codedeploy-eu-west-3/* ,
        arn:aws:s3:::aws-codedeploy-eu-central-1/* ,
        arn:aws:s3:::aws-codedeploy-ap-northeast-1/* ,
        arn:aws:s3:::aws-codedeploy-ap-northeast-2/* ,
        arn:aws:s3:::aws-codedeploy-ap-southeast-1/* ,        
        arn:aws:s3:::aws-codedeploy-ap-southeast-2/* ,
        arn:aws:s3:::aws-codedeploy-ap-south-1/* ,
        arn:aws:s3:::aws-codedeploy-sa-east-1/*
      ]
    }
  ]
}

選擇查看策略。

在 Create policy(創建策略)頁面上,在 Policy Name(策略名稱)框中鍵入 CodeDeployDemo-EC2-Permissions。

(任選)對于描述,鍵入策略的描述。

選擇創建策略。

在導航窗格中,選擇角色,然后選擇創建角色。

在 Create role(創建角色)頁面上,選擇 AWS 服務(AWS 服務),然后從選擇將使用此角色的服務(選擇將使用此角色的服務)列表中,選擇 EC2。

從選擇您的使用案例列表中,選擇 EC2。

選擇下一個:權限。

在附件權限策略頁面中,選擇您剛剛創建的策略,選擇然后下一步:標簽。如果您使用建議的名稱,則該名稱是 CodeDeployDemo-EC2-Permissions。

在評論頁面上的角色名稱中,鍵入服務角色(例如,CodeDeployDemo-EC2-Instance-Profile),然后選擇創建角色。

您還可以在部署說明框中鍵入此服務角色的說明。

現在,要附加到 Amazon EC2 實例的 IAM 實例配置文件已經創建完了。

關于如何進行 AWS 的自動部署工具 codedeploy 部署問題的解答就分享到這里了,希望以上內容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關注丸趣 TV 行業資訊頻道了解更多相關知識。

正文完
 
丸趣
版權聲明:本站原創文章,由 丸趣 2023-08-25發表,共計4823字。
轉載說明:除特殊說明外本站除技術相關以外文章皆由網絡搜集發布,轉載請注明出處。
評論(沒有評論)
主站蜘蛛池模板: 盐城市| 宾阳县| 双鸭山市| 德令哈市| 克东县| 资阳市| 克拉玛依市| 花垣县| 宁乡县| 远安县| 沈丘县| 嘉禾县| 扎兰屯市| 贡嘎县| 凤凰县| 曲麻莱县| 岳阳县| 金秀| 新郑市| 子洲县| 天长市| 峨眉山市| 阿巴嘎旗| 德州市| 花莲县| 泰顺县| 乳源| 宝山区| 济源市| 营口市| 龙海市| 静海县| 塔河县| 安多县| 民勤县| 旺苍县| 仙居县| 容城县| 镇雄县| 沅江市| 青龙|