前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >23 May 2024 使用playbook从dynatrace删除k8s集群

23 May 2024 使用playbook从dynatrace删除k8s集群

作者头像
俊采
发布2024-05-24 09:51:25
370
发布2024-05-24 09:51:25
举报
文章被收录于专栏:LEo的网络日志LEo的网络日志

在删除被dynatrace监控的集群时,需要及时将集群从dynatrace删除,以免遇到下面错误:

代码语言:javascript
复制
Maximum number of monitored Kubernetes clusters reached. Please disable monitoring of some clusters.

playbook如下:

代码语言:javascript
复制
---
- name: Remove cluster from dynatrace
  hosts: localhost
  connection: local
  gather_facts: false
  vars:
    ansible_python_interpreter: ""
    excluded_labels:
      - cluster1
      - cluster2

  tasks:
    - name: List all kubernetes from dynatrace
      ansible.builtin.uri:
        url: https://.live.dynatrace.com/api/v2/settings/objects?schemaIds=builtin%3Acloud.kubernetes&fields=objectId%2Cvalue&sort=created&pageSize=500
        method: GET
        headers:
          Authorization: Api-Token 
      register: cluster_list

    - name: Disable cluster monitoring from dynatrace
      ansible.builtin.uri:
        url: https://.live.dynatrace.com/api/v2/settings/objects
        method: POST
        headers:
          Accept: "application/json; charset=utf-8"
          Content-Type: "application/json; charset=utf-8"
          Authorization: "Api-Token "
        body_format: json
        body: |
          [
            {
              "schemaId": "builtin:cloud.kubernetes",
              "schemaVersion": "3.1",
              "value": {
                "enabled": false,
                "label": "",
                "clusterIdEnabled": true,
                "clusterId": ""
              }
            }
          ]
      loop: ""
      when: item.value.label not in excluded_labels
      register: post_response
      changed_when: post_response.status == 200

    - name: Delete cluster object from dynatrace
      ansible.builtin.uri:
        url: https://.live.dynatrace.com/api/v2/settings/objects/
        method: DELETE
        status_code:
          - 204
        headers:
          Accept: "application/json; charset=utf-8"
          Content-Type: "application/json; charset=utf-8"
          Authorization: "Api-Token "
      loop: ""
      when: item.value.label not in excluded_labels
      register: delete_response
      changed_when: delete_response.status == 204

LEo at 00:12

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档