Linkerd 2.10 系列

Linkerd 2.10 中文手册持续修正更新中:

Kustomize 可用于以一致的方式修补 linkerd install 的输出,

而不是分叉 Linkerd 安装和升级过程。这允许自定义安装以添加特定于安装的功能。

首先,将 install 的输出保存到 YAML 文件中。

这将是 Kustomize 用于修补和生成添加到集群中的内容的基础资源。

linkerd install > linkerd.yaml

升级时,请确保使用 linkerd upgrade 中的内容填充此文件。

使用最新的 kustomize 版本,可以使用 exec

plugin
插件自动执行此操作。

接下来,创建一个 kustomization.yaml 文件。

此文件将包含 Kustomize 的说明,列出基本资源以及对这些资源执行的转换。

现在,这看起来很空:

resources:
- linkerd.yaml

现在,让我们看看如何进行一些示例自定义。

Kustomize 允许任意数量的补丁(patches)、变换(transforms)和生成器(generators)。

这些示例一次显示一个修改,但可以在单个 kustomization.yaml 文件中进行尽可能多的修改。

添加优先级(PriorityClass)

控制平面中有几个组件可以从与关键 PriorityClass 相关联中受益。

虽然目前不支持将此配置作为 linkerd install 的标志,但使用 Kustomize 添加并不难。

首先,创建一个名为 priority-class.yaml 的文件,

该文件将创建一个 PriorityClass 资源。

apiVersion: scheduling.k8s.io/v1
description: Used for critical linkerd pods that must run in the cluster, but
can be moved to another node if necessary.
kind: PriorityClass
metadata:
name: linkerd-critical
value: 1000000000

1000000000 是最大值。允许用户定义的优先级,相应调整。

接下来,创建一个名为 patch-priority-class.yaml 的文件,该文件将包含覆盖。此覆盖将解释需要修改的内容。

apiVersion: apps/v1
kind: Deployment
metadata:
name: linkerd-identity
spec:
template:
spec:
priorityClassName: linkerd-critical
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: linkerd-controller
spec:
template:
spec:
priorityClassName: linkerd-critical

然后,将其作为战略合并选项添加到 kustomization.yaml

resources:
- priority-class.yaml
- linkerd.yaml
patchesStrategicMerge:
- patch-priority-class.yaml

将此应用到您的集群需要获取 kustomize build 的输出并

将其通过管道传输到 kubectl apply。 例如,您可以运行:

kubectl kustomize build . | kubectl apply -f -

修改 Grafana 配置

有兴趣为 Grafana 启用身份验证吗?可以一次性修改 ConfigMap 来做到这一点。

不幸的是,每次 linkerd upgrade 发生时,这些更改最终都会被还原。

相反,创建一个名为 grafana.yaml 的文件并添加您的修改:

kind: ConfigMap
apiVersion: v1
metadata:
name: grafana-config
data:
grafana.ini: |-
instance_name = grafana [server]
root_url = %(protocol)s://%(domain)s:/grafana/ [analytics]
check_for_updates = false

然后,将其作为战略合并选项添加到 kustomization.yaml

resources:
- linkerd.yaml
patchesStrategicMerge:
- grafana.yaml

最后,通过使用 kustomize build 生成 YAML 并将

输出传送到 kubectl apply 将其应用到您的集群。

kubectl kustomize build . | kubectl apply -f -
我是为少
微信:uuhells123
公众号:黑客下午茶
加我微信(互相学习交流),关注公众号(获取更多学习资料~)

Linkerd 2.10(Step by Step)—使用 Kustomize 自定义 Linkerd 的配置的更多相关文章

  1. Linkerd 2.10(Step by Step)—多集群通信

    Linkerd 2.10 系列 快速上手 Linkerd v2.10 Service Mesh(服务网格) 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traef ...

  2. Linkerd 2.10(Step by Step)—将 GitOps 与 Linkerd 和 Argo CD 结合使用

    Linkerd 2.10 系列 快速上手 Linkerd v2.10 Service Mesh(服务网格) 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traef ...

  3. Linkerd 2.10(Step by Step)—使用 Debug Sidecar,注入调试容器来捕获网络数据包

    Linkerd 2.10 系列 快速上手 Linkerd v2.10 Service Mesh 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traefik2 部署 ...

  4. Linkerd 2.10(Step by Step)—设置服务配置文件

    Linkerd 2.10 系列 快速上手 Linkerd v2.10 Service Mesh 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traefik2 部署 ...

  5. Linkerd 2.10(Step by Step)—2. 自动化的金丝雀发布

    通过结合 Linkerd 和 Flagger 来根据服务指标自动金丝雀(canary)发布,从而降低部署风险. Linkerd 2.10 中文手册持续修正更新中: https://linkerd.ha ...

  6. Linkerd 2.10(Step by Step)—4. 如何配置外部 Prometheus 实例

    Linkerd 2.10 系列 快速上手 Linkerd v2 Service Mesh(服务网格) 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traefik2 ...

  7. Linkerd 2.10(Step by Step)—控制平面调试端点

    Linkerd 2.10 系列 快速上手 Linkerd v2 Service Mesh(服务网格) 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traefik2 ...

  8. Linkerd 2.10(Step by Step)—配置超时

    Linkerd 2.10 系列 快速上手 Linkerd v2 Service Mesh(服务网格) 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traefik2 ...

  9. Linkerd 2.10(Step by Step)—配置重试

    Linkerd 2.10 系列 快速上手 Linkerd v2 Service Mesh(服务网格) 腾讯云 K8S 集群实战 Service Mesh-Linkerd2 & Traefik2 ...

随机推荐

  1. uni-app&H5&Android混合开发二 || 使用Android Studio打包应用APK

    前言: 在上一章节我们已经讲了如何uni-app离线打包Android平台教程,这一章就该来讲讲如何使用Android Studio打包应用APK提供给Android手机安装使用了. 第一步.首先打开 ...

  2. 【python】Leetcode每日一题-删除有序数组中的重复项2

    [python]Leetcode每日一题-删除有序数组中的重复项2 [题目描述] 给你一个有序数组 nums ,请你 原地 删除重复出现的元素,使每个元素 最多出现两次 ,返回删除后数组的新长度. 不 ...

  3. 【opencv】Java实现的opencv3.x版本后Highhui报错

    随笔为博主原创,如需转载,请注明出处. opencv3.x以后Highgui不再使用,用Imgcodecs代替,引入import org.opencv.imgcodecs.Imgcodecs;即可. ...

  4. Nios II系统在Quartus II编译后Timing requirements for slow timing model timing analysis were not met. See Report window for details

    来自http://wenku.baidu.com/link?url=h0Z_KvXD3vRAn9H8mjfbVErVOF_Kd3h-BZSyF1r4sEYj3ydJGEfBHGY1mvntP4HDuF ...

  5. OpenCV on Mac OSX: A step-by-step guide

    I'm using OpenCV for my 4th year design project and setting it up was a huge pain. I had to look thr ...

  6. 企业选择CRM系统的要点

    经过十数年的发展,CRM客户管理系统在企业当中开始家喻户晓,它的普及性也越来越高.管理者们也纷纷意识到CRM系统--这种企业管理工具带来的巨大好处.既然CRM给企业带来这么大的好处,那么企业该怎么选择 ...

  7. 在ZOHO企业网盘中如何快速搜索文件?

    现在越来越多的企业采用企业网盘来存储文档和资料,而且现在市面上的企业网盘各种各样.在使用企业网盘过程中,很多用户会问到企业网盘中如何快速搜索文件的问题.但是无论是"标签"功能还是普 ...

  8. shell脚本常用语法详解

    逻辑控制 if 语法:注意空格 a=1b=2if [ $a == $b ]then    echo "a==b"elif [ $a -gt $b ]then    echo &qu ...

  9. table不能使用jQuery的slideDown的解决方法

    table不能使用jQuery的slideDown的解决方法 一个后台管理项目中遇到了如下场景 要求父级栏目可以收纳子栏目,即折叠功能,而且要有过渡动画,不能太生硬. 它是用table来实现的,但是遇 ...

  10. [c++] 二级指针的原理

    示例 将值(实参)传递给值(形参),无法更改val 1 #include <iostream> 2 using namespace std; 3 4 void change(int mem ...