跳转到主要内容

Cloud Custodian - OCI支持

项目描述

Cloud Custodian - OCI支持

这是一个为Cloud Custodian添加OCI支持的插件。

安装Cloud Custodian和OCI插件

OCI提供程序必须作为单独的包安装,除了c7n之外。

$ git clone https://github.com/cloud-custodian/cloud-custodian.git
$ virtualenv custodian
$ source custodian/bin/activate
(custodian) $ pip install -e cloud-custodian/.
(custodian) $ pip install -e cloud-custodian/tools/c7n_oci/.

编写您的第一个策略

Cloud Custodian策略以YAML格式表达,包括以下内容:

  • 要运行策略的资源类型
  • 筛选器以缩小资源集
  • 对筛选后的资源集采取的操作

我们的第一个策略筛选特定名称的计算实例,然后添加标签mark_deletion: true

创建一个名为custodian.yml的文件,内容如下。更新display_namecompartment_id以匹配现有的计算实例。

policies:
    - name: filter-for-compute-name
      description: Filter for compute which matches the display name
      resource: oci.instance
      filters:
        - type: query
          params:
            compartment_id: 'ocid1.compartment.oc1..<unique_ID>'
        - type: value
          key: display_name
          value: test
      actions:
        - type: update_instance
          params:
            update_instance_details:
                freeform_tags:
                    mark-for-deletion: 'true'

运行您的策略

custodian run --output-dir=. custodian.yml

如果成功,您应该在命令行上看到如下输出:

2023-05-25 18:15:53,132: custodian.oci.session:INFO Successfully authenticated user ...
2023-05-25 18:16:01,118: custodian.policy:INFO policy:filter-for-compute-name resource:oci.instance region: count:1 time:7.98
2023-05-25 18:16:05,474: custodian.oci.resources.compute:INFO Received status 200 for PUT:update_instance 9A14E2D68AC94772849C7534E10BC963/089249DEBA83A0BDA6050BFF759BCF49/38040CF37F356743B539E653B2DED1E0
2023-05-25 18:16:05,483: custodian.policy:INFO policy:filter-for-compute-name action:updateinstance resources:1 execution_time:4.34

您可以在 --output-dir 选项值目录下找到一个名为 filter-for-compute-name 的新文件,其中包含一个日志文件和一个 resources.json 文件。

链接

项目详情


下载文件

下载您平台的文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码分发

此版本没有可用的源代码分发文件。请参阅关于 生成分发存档 的教程。

构建分发

c7n_oci-0.1.15-py3-none-any.whl (26.8 kB 查看哈希值)

上传时间 Python 3

支持