• Java 同步锁ReentrantLock与抽象同步队列AQS


    简介

    容器服务 Kubernetes 版(简称 ACK)提供高性能可伸缩的容器应用管理能力,支持企业级容器化应用的全生命周期管理。2021 年成为国内唯一连续三年入选 Gartner 公共云容器报告的产品,2022 年国内唯一进入 Forrester 领导者象限。其整合了阿里云虚拟化、存储、网络和安全能力,助力企业高效运行云端 Kubernetes 容器化应用。

    观测云支持 ACK 集群的接入,下面是入门接入的具体步骤。

    前置条件

    安装 ACK,本次使用版本 1.24.6-aliyun.1 。

    注册「观测云账号」。

    操作步骤

    1 配置 yaml 文件

    1.1 下载 datakit.yaml

    登录「观测云」,点击「集成」模块,再点击左上角「DataKit」,选择「Kubernetes」,下载 datakit.yaml。本次部署的是 datakit 1.4.19 。

    1.2 替换 Token

    登录「观测云」,进入「管理」模块,在「基本设置」里面复制 token,替换 datakit.yaml 文件中的 ENV_DATAWAY 环境变量的 value 值中的 。

    1.3 增加全局 Tag

    针对一个工作空间接入多个 Kubernetes 集群指标,观测云提供了使用全局 Tag 的方式来进行区分。

    当集群中只有一个采集对象,比如采集kubernetes API Server指标,集群中 DataKit 的数量会大于一个。为了避免指标采集重复,DataKit 开启了选举功能,这个时候区分集群的方式是增加

    ENV_GLOBAL_ELECTION_TAGS;而针对非选举类的指标采集,比如为 Pod 增加 annotations 的方式进行指标采集,观测云提供了在 ENV_GLOBAL_HOST_TAGS环境变量中增加全局 Tag 的方式。(注意:旧版本这个环境变量名称是 ENV_GLOBAL_TAGS。)

    1
    2
    3
    -name:ENV_GLOBAL_HOST_TAGS
     
    value:host=__datakit_hostname,host_ip=__datakit_ip,cluster_name_k8s=aliyun-ack

    根据上面的说明,下面修改 yaml 文件。

    在 datakit.yaml 文件中的 ENV_GLOBAL_TAGS 环境变量值最后增加 cluster_name_k8s=aliyun-ack;

    再增加环境变量 ENV_GLOBAL_ELECTION_TAGS,这样测试环境的集群就是 aliyun-ack;

    增加环境变量 ENV_NAMESPACE 值是 aliyun-ack。

     

    2 部署 DataKit

    修改完成 yaml 文件后,下面开始部署 DataKit。

    (1)登录阿里云容器服务管理控制台。

    (2)在控制台左侧导航栏中,单击「集群」。

    (3)在「集群列表」页面中,单击目标集群名称或者目标集群右侧「操作」列下的「详情」。

     

     

    (4)在集群管理页左侧导航栏单击「工作负载」 - 「自定义资源」,然后在右侧页面单击「使用 YAML 创建」。

    选择相应的命名空间。选择所有名称空间。

    在示例模板中,选择自定义。把 yaml 的内容贴入模板中, 点击「创建」。

     

     在守护进程集下面可以查看到 DataKit 运行情况。

     

     

    3 卸载 DataKit

    DataKit 部署默认使用了 datakit 命名空间,卸载只需要删除守护进程集中的 datakit、datakit 命名空间下的资源及名为 datakit 的 ClusterRoleBinding。卸载的方式比较多,这里提供一种通过阿里云容器服务管理控制台卸载的方式。

    3.1 删除 DaemonSet

    在阿里云的容器管理控制台进入「工作负载」 - 「守护进程集」,找到 datakit,点击右边的「删除」。

     

     

    3.2 删除命名空间

    进入「节点管理」- 「命名空间与配额」,找到 datakit,点击右边的「删除」。

     

     

    3.3 删除 Cluster Role

    进入 「安全管理」 - 「角色」,在 Cluster Role 下面找到 datakit,点击右边的「删除」。

     

     

    3.4 异常处理

    如果在下次部署的时候提示如下错误,是因为阿里云控制台显示删除了,实际资源还存在的情况。

     

     

    这时只需要把 datakit.yaml 文件中的如下部分删除即可重新部署。

    复制代码
     1 apiVersion:rbac.authorization.k8s.io/v1
     3 kind:ClusterRoleBinding
     5 metadata:
     7 name:datakit
     9 roleRef:
    11 apiGroup:rbac.authorization.k8s.io
    13 kind:ClusterRole
    15 name:datakit
    17 subjects:
    19 -kind: ServiceAccount
    21 name:datakit    
    23 namespace: datakit
    复制代码

     

    或者使用命令把 ClusterRoleBinding 删除,再部署 DataKit。

    kubectldeleteclusterrolebindings datakit

     

  • 相关阅读:
    BiliBili 阴阳师主题 前端技术展示
    作为前端开发,你应该知道的这十几个在线免费工具
    【无标题】
    c#设计模式-创建型模式 之 建造者模式
    基于javaweb的医院挂号管理系统(java+jsp+javascript+servlet+mysql)
    【buildroot】buildroot使用笔记-03 | 系统初始化的三种方式
    PyCharm集成开发环境安装、启动与设置
    PCL点云库——关键点
    MySQL InnooDB引擎之并发事务问题以及隔离级别的作用和区别
    CSAPP实验记录(2)--------- Bomb
  • 原文地址:https://www.cnblogs.com/dennyLee2025/p/16890866.html