주:

OCI Functions 및 Python을 사용하여 Jira Service Management에서 티켓 열기

소개

다음 사용지침서는 OCI 모니터링 서비스와 Jira Service Management를 모두 사용하여 티켓을 열고 인시던트를 추적하는 Oracle Cloud Infrastructure(OCI) 사용자에게 제공됩니다. OCI 인스턴스가 있고 오류로 인해 인스턴스가 예기치 않게 작동 중지되는 시기를 알고 싶다고 가정해 보겠습니다. Jira Service Management에서 티켓을 즉시 열어 엔지니어가 가능한 한 빨리 문제를 조사하고 수정할 수 있도록 알림을 받고 싶습니다. OCI Functions 서비스를 사용하면 조직 시스템에서 문제가 감지될 때 Jira Service Management에서 티켓을 자동으로 열 수 있습니다.

목표

필요 조건

작업 1: 가상 클라우드 네트워크 생성

VCN(가상 클라우드 네트워크)은 OCI에서 정의하는 네트워크입니다. 여기에는 서브넷, 라우팅 테이블 및 게이트웨이가 포함됩니다.

  1. OCI 콘솔의 왼쪽 상단 모서리에 있는 서비스 메뉴 서비스 메뉴을 누릅니다.

  2. 네트워킹에서 가상 클라우드 네트워크를 선택합니다.

  3. 가상 클라우드 네트워크 페이지에서 VCN 마법사 시작을 누릅니다.

  4. 인터넷 접속을 통한 VCN 생성을 선택하고 VCN 마법사 시작을 누릅니다.

  5. VCN 구성을 완료하고 다음생성을 누릅니다.

작업 2: 동적 그룹 생성

동적 그룹을 사용하면 OCI 컴퓨트 인스턴스를 주체 작업자(사용자 그룹과 유사)로 그룹화할 수 있습니다.

주: 동적 그룹을 생성하려면 관리자 권한이 필요합니다.

  1. 서비스 메뉴에서 ID 및 보안, ID로 이동하고 동적 그룹을 누릅니다.

  2. 동적 그룹 생성을 누릅니다.

  3. 의미 있는 이름설명을 입력합니다.

  4. 규칙 1 섹션에서 다음 행을 추가합니다.

    ALL {resource.type = 'fnfunc', resource.compartment.id = 'ocid1.compartment.oc1', instance.compartment.id = 'ocid1.compartment.oc1'}

    주: 구획 ID를 원하는 구획 ID로 바꿉니다.

  5. Create를 누릅니다.

작업 3: OCI IAM 정책 생성

Oracle Cloud Infrastructure Identity and Access Management(OCI IAM)를 사용하면 클라우드 리소스에 접근할 수 있는 사용자를 제어할 수 있습니다. 이 통합이 작동하려면 서비스형 기능(FaaS) 서비스(기능 서비스)에 대한 액세스 권한을 저장소, 저장소 및 기타 여러 서비스에 부여해야 합니다.

  1. 서비스 메뉴에서 ID 및 보안, ID로 이동하고 정책을 누릅니다.

  2. 정책 생성을 누릅니다.

  3. 적절한 이름설명을 입력하고 올바른 컴파트먼트를 선택했는지 확인합니다. 이 예에서는 DEV이라는 컴파트먼트를 사용합니다.

  4. Policy Builder 섹션에서 수동 편집기 표시를 사용으로 설정하고 다음 행을 추가합니다.

    Allow service faas to read repos in tenancy
    
    Allow service faas to read secret-family in compartment DEV
    
    Allow service faas to read vaults in compartment DEV
    
    Allow service faas to use keys in compartment DEV
    
    Allow service faas to use apm-domains in compartment DEV
    
    Allow dynamic-group DGNAME to read secret-family in compartment DEV
    
    Allow dynamic-group DGNAME to read vaults in compartment DEV
    
    Allow dynamic-group DGNAME to use keys in compartment DEV
    

    주: 동적 그룹(DGNAME) 이름 및 컴파트먼트(DEV) 이름을 원하는 이름으로 바꿉니다.

  5. Create를 누릅니다.

작업 4: 함수를 저장할 저장소 생성

OCI 컨테이너 레지스트리를 사용하면 Oracle 관리 레지스트리에 컨테이너 이미지(예: Docker 이미지)를 저장, 공유 및 관리할 수 있습니다.

  1. OCI 콘솔로 이동하여 서비스 메뉴를 열고 개발자 서비스를 누릅니다. 컨테이너에서 컨테이너 레지스트리를 누릅니다.

  2. 저장소 생성을 누릅니다.

  3. 저장소 생성 대화상자에서 선택한 구획저장소 이름을 지정하고 비공개 상태로 둡니다.

  4. 저장소 생성을 누릅니다.

작업 5: Jira Service Management 로그인에 대한 사용자 및 API 토큰을 저장할 저장소 생성

Oracle Cloud Infrastructure Vault는 안전한 리소스 액세스를 위해 마스터 암호화 키와 암호를 저장하고 관리하는 키 관리 서비스입니다.

  1. 서비스 메뉴를 열고 ID 및 보안저장소를 누릅니다.

  2. 저장소 생성을 누릅니다.

  3. 저장소 생성 대화상자에서 선택한 구획을 선택하고 원하는 적절한 이름을 입력합니다. 또한 비공개로 만들지 않을지 선택할 수 있습니다.

    주: 저장소가 생성된 후에는 저장소 유형을 변경할 수 없습니다.

  4. 완료되면 저장소 생성을 누릅니다.

    주: Jira Service Management api-tokenapi-user를 저장소에 별도로 저장합니다.

작업 6: 응용 프로그램 생성

  1. 서비스 메뉴를 열고 개발자 서비스를 누릅니다. 함수에서 애플리케이션을 누릅니다.

  2. 애플리케이션 생성을 누릅니다.

  3. 애플리케이션 생성 창에서 애플리케이션의 이름(예: Jira-Ticketing)을 입력하고 작업 1에서 생성된 VCN을 선택한 다음 퍼블릭 서브넷을 선택합니다.

  4. Create를 누릅니다.

작업 7: 함수 배치

이 작업은 [필요 조건] 섹션에서 다운로드할 수 있는 zip 아카이브를 사용합니다.

  1. 목록에서 작업 6에서 새로 생성된 애플리케이션을 선택합니다.

  2. 애플리케이션 창에서 리소스 아래의 시작하기 옵션에서 사용할 수 있는 단계를 따릅니다.

    참고:

    • 이 사용지침서에서는 OCI Cloud Shell 설정을 사용합니다.

    • 설정의 4단계에서 작업 4에서 생성된 저장소 이름을 지정해야 합니다.

  3. Launch Cloud Shell을 누르면 페이지 하단에 새 작은 셸 창이 표시됩니다. 해당 창의 오른쪽 위 모서리에서 톱니바퀴 메뉴를 누르고 업로드를 선택합니다.

  4. 홈 디렉토리에 업로드할 jsm-ticket-function.zip 파일을 끌어 놓습니다.

  5. 다음 명령을 사용하여 아카이브의 압축을 풉니다.

    unzip jsm-ticket-function.zip
    
  6. cd jsm-ticket-function 명령을 사용하여 함수 디렉토리로 전환하고 OCI 콘솔에 설명된 단계를 진행합니다.

작업 8: 함수 구성 편집

함수가 제대로 작동하려면 함수를 편집해야 하는 몇 가지 구성 가능한 매개변수가 있습니다.

  1. OCI 콘솔에서 작업 6에서 생성된 애플리케이션으로 이동하고 리소스의 왼쪽에서 함수를 선택합니다.

  2. 함수 jsm-ticket-function의 이름을 누릅니다.

  3. 리소스 아래의 구성을 누릅니다. 다섯 개의 키(api-token, api-user, service_desk_id, request_type_idvault_ocid)를 볼 수 있습니다.

    다음 키는 모두 구성을 사용하여 편집해야 합니다.

    • api-token: 티켓이 생성된 사용자 계정의 API 토큰이 저장되는 저장소의 암호 이름입니다. 자세한 내용은 Atlassian 계정에 대한 API 토큰 관리를 참조하십시오.

    • api-user: 저장소의 암호 이름이 대신 티켓이 생성될 사용자의 전자 메일 주소입니다.

    • service_desk_id: 티켓이 생성될 프로젝트입니다.

    • request_type_id: 티켓이 생성될 요청 유형입니다. 제목과 설명이 있어야 합니다.

    • vault_ocid: api-token 및 api-user 암호가 저장된 vault_ocid입니다.

    service_desk_idrequest_type_id를 빠르고 쉽게 가져올 수 있는 방법은 사용할 포털을 방문하여 URL을 확인하는 것입니다. 예를 들어, 포털로 이동하여 요청을 눌러 올리면 https://somewhere.atlassian.net/servicedesk/customer/portal/10/group/229/create/664과 같은 URL이 표시됩니다.

    여기에 있는 숫자는 다음과 같습니다.

    • 10: portal/servicedesk입니다.
    • 229: 요청이 들어오는 그룹입니다(탐색에만 사용됨, REST에서는 중요하지 않음).
    • 664: 내가 누른 요청 유형의 ID입니다.

작업 9: 항목에 함수 가입

  1. 서비스 메뉴를 열고 개발자 서비스를 누릅니다. 애플리케이션 통합에서 통지를 누릅니다.

    주: 올바른 구획에 있어야 합니다.

  2. 토픽 생성을 누릅니다.

  3. 적절한 이름을 입력하고 생성을 누릅니다.

  4. 항목이 생성된 후 항목 목록에서 항목을 선택합니다.

  5. 토픽 창의 왼쪽에서 리소스 아래의 구독을 선택하고 구독 생성을 누릅니다.

  6. 구독 생성 창에서 함수가 될 프로토콜을 선택하고 작업 6에서 생성된 컴파트먼트, 애플리케이션 및 함수를 선택합니다.

  7. Create를 누릅니다.

작업 10: 모니터해야 하는 원하는 측정 단위에 대한 알람 생성

여러 유형의 알람을 생성할 수 있습니다. 이 자습서에서는 부재 경보를 선택했습니다.

  1. 서비스 메뉴를 열고 관찰 가능성 및 관리를 누릅니다. 모니터링에서 알람 정의를 누릅니다.

  2. 알람 만들기를 누릅니다.

  3. 알람 생성 페이지의 알람 정의에서 알람 설정을 입력하거나 업데이트합니다.

  4. 알람 통지 정의에서 작업 9에서 생성된 토픽을 선택해야 합니다.

  5. 메시지 형식Send Pretty JSON messages (raw text with line break)으로 선택합니다.

  6. 알람 저장을 누릅니다.

확인

추가 학습 자원

docs.oracle.com/learn에서 다른 실습을 탐색하거나 Oracle Learning YouTube 채널에서 더 많은 무료 학습 콘텐츠에 액세스하세요. 또한 Oracle Learning Explorer가 되려면 education.oracle.com/learning-explorer을 방문하십시오.

제품 설명서는 Oracle Help Center를 참조하십시오.