注意:

使用 OCI Functions 和 Python 在 Jira Service Management 中打开票证

简介

以下教程面向同时使用 OCI Monitoring 服务和 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. 选择 Create VCN with Internet Connectivity ,然后单击 Start VCN Wizard

  5. 完成 VCN 配置,单击下一步创建

任务 2:创建动态组

通过动态组,您可以将 OCI 计算实例分组为主要角色(类似于用户组)。

注:创建动态组需要管理员权限。

  1. 从服务菜单中,导航到身份与安全身份,然后单击动态组

  2. 单击创建动态组

  3. 输入一个有意义的名称说明

  4. 规则 1 部分中,添加以下行:

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

    注:将区间 ID 替换为所需的区间 ID。

  5. 单击创建

任务 3:创建 OCI IAM 策略

Oracle Cloud Infrastructure Identity and Access Management (OCI IAM) 支持您控制谁可以访问您的云资源。为了实现此集成,我们需要将函数即服务 (FaaS) 服务(函数服务)的访问权限授予 Vault、资料档案库和其他一些服务。

  1. 从服务菜单中,导航到身份与安全身份,然后单击策略

  2. 单击创建策略

  3. 输入相应的名称说明,并确保选取正确的区间(在此示例中,将使用名为 DEV 的区间)。

  4. 策略构建器部分中,确保启用显示手动编辑器并添加以下行:

    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. 单击创建

任务 4:创建用于存储函数的资料档案库

OCI Container Registry 支持您在 Oracle 托管的注册表中存储、共享和管理容器映像(例如 Docker 映像)。

  1. 转到 OCI 控制台,打开服务菜单,然后单击开发人员服务。在容器下,单击容器注册表

  2. 单击创建资料档案库

  3. 创建资料档案库对话框中,指定您选择的区间资料档案库名称,并将其保留为专用

  4. 单击创建资料档案库

任务 5:创建用于存储 Jira Service Management 登录的用户和 API 标记的 Vault

Oracle Cloud Infrastructure Vault 是密钥管理服务,用于存储和管理主加密密钥以安全访问资源。

  1. 打开服务菜单,单击身份和安全 Vault

  2. 单击创建 Vault

  3. 创建 Vault 对话框中,选择您选择的区间,然后输入您选择的相应名称。您也可以选择是否要将其设为私有。

    注:创建 Vault 后,无法更改 Vault 类型。

  4. 完成后单击创建 Vault

    注:将 Jira Service Management api-tokenapi-user 分别保存在 Vault 中。

任务 6:创建应用程序

  1. 打开服务菜单,然后单击开发人员服务。在函数下,单击应用程序

  2. 单击创建应用程序

  3. 创建应用程序窗口中,输入应用程序的名称(例如 Jira-Ticketing),选择在任务 1 中创建的 VCN 并选择公共子网。

  4. 单击创建

任务 7:部署函数

此任务将使用可从“先决条件”部分下载的 zip 档案。

  1. 从列表中选择任务 6 中新创建的应用程序。

  2. 应用程序窗口中,按照资源下的入门选项中提供的步骤操作。

    注:

    • 在本教程中,我们使用 OCI Cloud Shell 设置。

    • 在设置的第 4 步中,确保指定在任务 4 中创建的资料档案库名称。

  3. 单击启动 Cloud Shell 后,将在页面底部显示一个新的小 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-tokenapi-userservice_desk_idrequest_type_idvault_ocid

    所有这些密钥都必须使用您的配置进行编辑:

    • api-token:存储代表票证创建的用户帐户的 api-token 的 Vault 中的密钥名称。有关详细信息,请参阅管理 Atlassian 账户的 API 令牌

    • api-user:保管库中的密钥名称是存储将代表其创建票证的用户的电子邮件地址。

    • service_desk_id:将在其中创建票证的项目。

    • request_type_id:将创建票证的请求类型(必须具有标题和说明)。

    • vault_ocid:vault_ocid,其中存储 api-token 和 api-user 密钥。

    快速简便地获取 service_desk_idrequest_type_id 的方法是访问要使用的门户并查看 URL。例如,转到门户,然后单击要引发的请求,您将看到如下 URL:https://somewhere.atlassian.net/servicedesk/customer/portal/10/group/229/create/664

    里面的数字有:

    • 10:门户/servicedesk。
    • 229:请求进入的组(仅供导航使用,您在 REST 中不关心该组)。
    • 664:我单击的请求类型的 ID。

任务 9:将函数订阅到主题

  1. 打开服务菜单,然后单击开发人员服务。在应用程序集成下,单击通知

    注:请确保位于正确的区间中。

  2. 单击创建主题

  3. 输入适当的名称,然后单击创建

  4. 创建主题后,从主题列表中选择该主题。

  5. 主题窗口中,从左侧的资源下选择订阅,然后单击创建订阅

  6. 创建订阅窗口中,选择要函数的协议,选择区间、应用程序以及在任务 6 中创建的函数。

  7. 单击创建

任务 10:为需要监视的所需度量创建预警

可以创建多种类型的预警。在本教程中,我们选择了缺勤预警。

  1. 打开服务菜单,然后单击可观察性和管理。在 Monitoring(监视)下,单击 Alarm Definitions(预警定义)

  2. 单击创建预警

  3. 创建预警页的定义预警下,输入或更新预警设置。

  4. 定义预警通知下,确保选择在任务 9 中创建的主题。

  5. 选择 Message Format(消息格式)作为 Send Pretty JSON 消息(含换行符的原始文本)

  6. 单击保存预警

确认

更多学习资源

浏览 docs.oracle.com/learn 上的其他实验室,或者访问 Oracle Learning YouTube 渠道上的更多免费学习内容。此外,请访问 education.oracle.com/learning-explorer 成为 Oracle Learning Explorer。

有关产品文档,请访问 Oracle 帮助中心