<?xml version="1.0" encoding="utf-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>SkyHigh</title>
        <link>https://velog.io/</link>
        <description>Continuous IT/Continuous Development</description>
        <lastBuildDate>Fri, 29 Dec 2023 02:14:00 GMT</lastBuildDate>
        <docs>https://validator.w3.org/feed/docs/rss2.html</docs>
        <generator>https://github.com/jpmonette/feed</generator>
        <image>
            <title>SkyHigh</title>
            <url>https://velog.velcdn.com/images/know_friendship/profile/1cd414c0-e078-42a9-8254-64751b6dc116/image.jpg</url>
            <link>https://velog.io/</link>
        </image>
        <copyright>Copyright (C) 2019. SkyHigh. All rights reserved.</copyright>
        <atom:link href="https://v2.velog.io/rss/know_friendship" rel="self" type="application/rss+xml"/>
        <item>
            <title><![CDATA[[AWS] CodePipeline 알림을 Slack으로 받아보자!! - AWS Chatbot]]></title>
            <link>https://velog.io/@know_friendship/AWS-CodePipeline-%EC%95%8C%EB%A6%BC%EC%9D%84-Slack%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EC%95%84%EB%B3%B4%EC%9E%90-AWS-Chatbot-orj8je6r</link>
            <guid>https://velog.io/@know_friendship/AWS-CodePipeline-%EC%95%8C%EB%A6%BC%EC%9D%84-Slack%EC%9C%BC%EB%A1%9C-%EB%B0%9B%EC%95%84%EB%B3%B4%EC%9E%90-AWS-Chatbot-orj8je6r</guid>
            <pubDate>Fri, 29 Dec 2023 02:14:00 GMT</pubDate>
            <description><![CDATA[<blockquote>
<p>AWS Chatbot을 사용하여 Slack 채널에 CodePipeline 시작, 성공 및 실패의 알림을 받을 수 있게 설정해보겠습니다.</p>
</blockquote>
<p>테스트용 Slack 워크스페이스의 캡쳐입니다. 저는 cicd-excution이라는 채널에 수행 결과의 알림을 받을 수 있도록 설정해 보겠습니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/d0c24399-6964-4324-8724-a6ba5d6a94fb/image.png" alt=""></p>
<p>AWS Chatbot이란??</p>
<blockquote>
<ul>
<li>AWS Chatbot은 Amazon Chime, Microsoft Teams 또는 Slack 채널에서 AWS용 ChatOps를 손쉽게 설정하여 여러 AWS 서비스와 안전하게 상호 작용할 수 있게 해주는 대화형 에이전트입니다.</li>
</ul>
</blockquote>
<ul>
<li>AWS 서비스에서 발생하는 여러 유형의 알림을 받아볼 수 있습니다. 예를 들어, Amazon CloudWatch Events, AWS Health 이벤트, AWS Config 알림 등을 채팅으로 전달할 수 있습니다.</li>
<li>특정 이벤트 또는 특정 리소스에 대한 사용자 정의 알림을 생성하여 원하는 조건에 맞게 통지를 받을 수 있습니다.</li>
</ul>
<h1 id="step-1-aws-chatbot-생성">Step 1. AWS Chatbot 생성</h1>
<ol>
<li>콘솔에서 AWS Chatbot 찾기
<img src="https://velog.velcdn.com/images/know_friendship/post/8916d86d-45c0-4167-8f75-a524e38df574/image.png" alt=""></li>
</ol>
<ol start="2">
<li>Slack 선택 후 클라이언트 구성 선택
<img src="https://velog.velcdn.com/images/know_friendship/post/f8d190ea-fdbe-4104-af6f-a621575e3aa0/image.png" alt=""></li>
</ol>
<ol start="3">
<li><p>클라이언트 구성을 누르셨다면 자동으로 슬랙의 어느 워크스페이스와 연결할 것인지 slack으로 redirect 됩니다. 연결할 워크스페이스의 Slack URL을 입력해줍니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/4cf2850c-6cca-4efa-b018-2d41cc0e6649/image.png" alt=""></p>
</li>
<li><p>연동할 워크스페이스에 엑세스 하기 위해 권한 요청 화면에서 허용을 눌러줍니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/a31202c4-2c9e-4939-a396-0c12bc8870a6/image.png" alt=""></p>
</li>
</ol>
<ol start="5">
<li>허용을 눌러주면 Slack에서 AWS Chatbot이 승인되었다는 알림과 함께 콘솔로 돌아옵니다
<img src="https://velog.velcdn.com/images/know_friendship/post/b74b5ce5-1546-4cea-a125-02fd92f11a68/image.png" alt=""></li>
</ol>
<ol start="6">
<li>Slack 실행 후 채널 아래에 앱 → 앱 추가 → AWS Chatbot을 클릭합니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/7f16be50-4651-4858-9cdb-8c22b14b26c4/image.png" alt=""></li>
</ol>
<h1 id="step-2-aws-chatbot의-channel-구성">Step 2. AWS Chatbot의 Channel 구성</h1>
<blockquote>
<p>Slack Channel 구성을 통해 실제 알림을 받을 워크스페이스의 내부 채널에 연동하기 위한 작업입니다.</p>
</blockquote>
<ol>
<li>새 채널 구성에 들어갑니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/ffec9f65-3aa1-4a3b-aadc-78644fd2a4d7/image.png" alt=""></li>
</ol>
<ol start="2">
<li>Slack 채널 구성을 합니다.</li>
</ol>
<ul>
<li>구성 이름을 설정해주고 알림을 받을 Slack 채널의 유형에 따라 퍼블릭 or 프라이빗을 선택해주고 채널을 선택합니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/1c3d629f-58af-471c-b0f4-533b372cb295/image.png" alt=""></li>
</ul>
<ol start="3">
<li>AWS Chatbot의 IAM Role을 생성해줍니다. </li>
</ol>
<ul>
<li>알림 용도로 사용할 것이므로, 알림 권한 정책을 부여해줍니다. 저는 AWSChatbot-notification-rule이라는 IAM Role을 생성했습니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/269a9931-6dd0-4bbc-b29e-18bc783fd6a4/image.png" alt=""></li>
</ul>
<ul>
<li><p>채널 가드 레일 정책은 채널에 있는 멤버들이 수행할 수 있는 작업들을 세부적으로 제어 할 수 있습니다.</p>
</li>
<li><p>AWS Chatbot을 이용하여 CodePipleline의 상태를 SNS를 통해 전달하기 위해 AmazonSNSFullAccess 권한을 부여합니다.</p>
</li>
<li><p>알림 - 선택 사항 : 다른 리전 추가는 설정을 하지 않아도 됩니다. notification rule을 생성하면 자동으로 주제가 생성됩니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/9811bc33-4c50-4b53-b12d-2f1915520534/image.png" alt=""></p>
</li>
<li><p>이렇게 완성된 Slack 채널 정보를 확인 할 수 있습니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/a2c578c6-36ce-48d6-b28d-f6c0076ab89f/image.png" alt=""></p>
</li>
</ul>
<h1 id="step-3-aws-chatbot의-notification-rule-생성">Step 3. AWS Chatbot의 notification rule 생성</h1>
<blockquote>
<p>AWS Notification Rule이란 AWS Notification Rules는 AWS에서 발생하는 이벤트에 대한 알림을 설정하고 관리할 수 있는 기능입니다.</p>
</blockquote>
<ol>
<li>알림을 받고자하는 CodePipeline에서 알림을 누른 후 알림 규칙 생성을 클릭합니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/f491bf1f-188d-480c-a0d8-94d6fa52462c/image.png" alt=""></li>
</ol>
<ol start="2">
<li>알림 규칙 생성에서 원하는 알림 이름과 알림을 트리거하는 이벤트를 설정해 줍니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/02407ba6-1811-45c2-9544-ff5a8f0f16b0/image.png" alt=""></li>
</ol>
<ul>
<li>가득 참(Full) : 알림의 이벤트에서 사용하는 모든 정보가 포함</li>
<li>기본(Basic) : 사용 가능한 정보만 간단하게 포함
cf) 자세한 내용은 docs 참조하세요! (<a href="https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#detail-type">https://docs.aws.amazon.com/dtconsole/latest/userguide/concepts.html#detail-type</a>)</li>
</ul>
<ol start="3">
<li><p>대상에서 AWS Chatbot(Slack)을 선택하고 Step 2에서 만들었던 대상을 선택해줍니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/f044460b-e46d-4b89-bad1-bba6e8fd0024/image.png" alt=""></p>
</li>
<li><p>알림 규칙 대상을 확인 할 수 있으며 Chatbot의 주제가 설정 된 것을 확인 할 수 있습니다.
<img src="https://velog.velcdn.com/images/know_friendship/post/8ea880b5-f85e-45b3-b65d-f62638bea89c/image.png" alt=""></p>
</li>
</ol>
<h1 id="step-4-결과">Step 4. 결과</h1>
<blockquote>
<p>AWS Codepipeline의 Notification rule에 따라 파이프라인의 시작, 성공 및 실패의 알림을 Slack Channel로 알림이 오는 것을 확인 할 수 있습니다! ᕦ(ò_óˇ)ᕤ</p>
</blockquote>
<p>시작 &amp; 성공 시 알림
<img src="https://velog.velcdn.com/images/know_friendship/post/ddf5c70b-9478-4c5a-a14a-394275f10f01/image.png" alt=""></p>
<p>시작 &amp; 실패 시 알림
<img src="https://velog.velcdn.com/images/know_friendship/post/aab20ddf-4bca-42d7-ac16-320b0438576a/image.png" alt=""></p>
]]></description>
        </item>
        <item>
            <title><![CDATA[테스트 post]]></title>
            <link>https://velog.io/@know_friendship/%ED%85%8C%EC%8A%A4%ED%8A%B8-post</link>
            <guid>https://velog.io/@know_friendship/%ED%85%8C%EC%8A%A4%ED%8A%B8-post</guid>
            <pubDate>Sun, 24 Dec 2023 08:39:04 GMT</pubDate>
            <description><![CDATA[<p>Hello, World</p>
]]></description>
        </item>
    </channel>
</rss>