12 2023 档案

摘要:Stacked etcd 使用stacked控制平面节点,其中 etcd 节点与控制平面节点共存。 这种拓扑将控制平面和 etcd 成员耦合在同一节点上。 优点:相对使用外部 etcd 集群, 设置起来更简单,而且更易于副本管理。 缺点:如果一个节点发生故障,则 etcd 成员和控制平面实例都将丢失 阅读全文
posted @ 2023-12-29 15:47 小吉猫 阅读(75) 评论(0) 推荐(0)
摘要:BPF BPF 概述 BPF 最初代表伯克利包过滤器 (Berkeley Packet Filter)是基于寄存器的虚拟机运行于内核空间,能够在linux内核内部运行即时本地编译的BPF程序,允许以安全的方式在各种挂钩点执行字节码。它被用于许多Linux 内核子系统,最突出的是网络、跟踪和安全(例如 阅读全文
posted @ 2023-12-28 10:27 小吉猫 阅读(117) 评论(0) 推荐(0)
摘要:Hubble 概述 Hubble 是一个完全分布式网络和安全可观测平台。它构建在 Cilium 和 eBPF 之上,能够以完全透明的方式深入了解服务的通信和行为以及网络基础设施。 通过构建在 Cilium 之上,Hubble 可以利用 eBPF 来提高可观测性。通过依赖 eBPF,所有可观测性都是可 阅读全文
posted @ 2023-12-27 17:49 小吉猫 阅读(558) 评论(0) 推荐(0)
摘要:下载 kuboard 部署清单 # wget https://addons.kuboard.cn/kuboard/kuboard-v3-swr.yaml 修改部署清单 configmap # vim kuboard-v3-swr.yaml 修改内容 # KUBOARD_AGENT_KEY 是 Age 阅读全文
posted @ 2023-12-26 09:42 小吉猫 阅读(1247) 评论(0) 推荐(0)
摘要:安装 kubeadm、kubelet 和 kubectl 此步骤可选 下载 kubeadm # wget -P /usr/local/bin https://dl.k8s.io/release/v1.28.3/bin/linux/amd64/kubeadm 下载 kubelet # wget -P 阅读全文
posted @ 2023-12-25 10:03 小吉猫 阅读(599) 评论(0) 推荐(0)
摘要:minikube 介绍 minikube 是一个可让您在本地运行 Kubernetes 的工具。 minikube 在您的个人计算机(包括 Windows、macOS 和 Linux PC)上运行单节点或多节点本地 Kubernetes 集群,以便您可以试用 Kubernetes,或进行日常开发工作 阅读全文
posted @ 2023-12-24 12:14 小吉猫 阅读(324) 评论(0) 推荐(0)
摘要:环境介绍 gitlab 地址 gitlab: http://192.168.174.108:8080/root/spring-boot-helloWorld Task 说明 1. git-clone:克隆项目的源代码 2. build-to-package:代码测试、构建和打包 3. generat 阅读全文
posted @ 2023-12-23 13:42 小吉猫 阅读(555) 评论(0) 推荐(0)
摘要:环境说明 使用Argo Rollouts部署nginx应用: 1. 使用Rollout部署nginx 2. 采用canary部署策略 3. 结合Analysis进行渐进式交付 4. 结合Istio VirtualService进行自动化流量分割和流量迁移 5. 部署清单放在git repo中 使用A 阅读全文
posted @ 2023-12-22 09:41 小吉猫 阅读(362) 评论(0) 推荐(0)
摘要:ArgoCD notifications Triggers Triggers 定义应发送通知的条件。定义包括名称、条件 和通知模板参考。条件是一个谓词表达式,如果通知则返回 true 应该发送。 Triggers 列表 1. on-created # Application 创建 2. on-del 阅读全文
posted @ 2023-12-21 10:01 小吉猫 阅读(341) 评论(0) 推荐(0)
摘要:HTTPS 方式访问私有仓库 Argo CD CLI 添加私有仓库 # argocd repo add https://github.com/argoproj/argocd-example-apps --username <username> --password <password> dashbo 阅读全文
posted @ 2023-12-20 09:43 小吉猫 阅读(655) 评论(0) 推荐(0)
摘要:Argo Rollouts notifications cm 模板 argo-rollouts-notification-configmap的configmap需要部署在argo-rollouts名称空间下。 apiVersion: v1 kind: ConfigMap metadata: name 阅读全文
posted @ 2023-12-19 10:27 小吉猫 阅读(90) 评论(0) 推荐(0)
摘要:Argo Rollouts TrafficRouting概述 流量治理技术实现如下: 1. 按百分比进行流量管理(即 5% 的流量应流向新版本,其余流量流向稳定版本) 2. 基于标头的路由(即将带有特定标头的请求发送到新版本) 3. 镜像流量,其中所有流量都被复制并并行发送到新版本(但响应被忽略) 阅读全文
posted @ 2023-12-18 09:42 小吉猫 阅读(195) 评论(0) 推荐(0)
摘要:环境说明 用argo rollouts 金丝雀发布策略更新nginx服务。 发布过程结合Isito和analysis。 创建 ns argo-demo # kubectl create ns argo-demo namespace/argo-demo created 启用Istio自动注入功能 # 阅读全文
posted @ 2023-12-17 13:37 小吉猫 阅读(72) 评论(0) 推荐(0)
摘要:AnalysisTemplate CRD apiVersion: argoproj.io/v1alpha1 kind: AnalysisTemplate metadata: name: success-rate spec: args: # 模板参数,模板内部引用的格式为“{{args.NAME}}” 阅读全文
posted @ 2023-12-16 14:42 小吉猫 阅读(65) 评论(0) 推荐(0)
摘要:Argo Rollouts Canary 概述 金丝雀部署是一种部署策略,将一小部分生产流量发布到新版本的应用程序。 Argo Rollouts Canary 完整配置 apiVersion: argoproj.io/v1alpha1 kind: Rollout metadata: name: ex 阅读全文
posted @ 2023-12-15 19:48 小吉猫 阅读(138) 评论(0) 推荐(0)
摘要:Argo Rollouts BlueGreen 更新过程 1. 从稳定状态开始,activeService 和 PreviewService 都指向revision 1 的ReplicaSet。 2. 用户通过修改 Pod 模板(spec.template.spec)来发起更新。 3. 创建的Rep 阅读全文
posted @ 2023-12-15 10:18 小吉猫 阅读(128) 评论(0) 推荐(0)
摘要:Argo Rollouts CRD apiVersion: argoproj.io/v1alpha1 kind: Rollout metadata: name: example-rollout-canary spec: # 运行的Pod实例数量,默认为1. # Defaults to 1. repl 阅读全文
posted @ 2023-12-14 14:41 小吉猫 阅读(62) 评论(0) 推荐(0)
摘要:Argo Rollouts 概述 Argo Rollouts 是一个 Kubernetes 控制器和一组 CRD,为 Kubernetes 提供高级部署功能,例如蓝绿、金丝雀、金丝雀分析、experimentation和渐进式交付功能。 Argo Rollouts(可选)与Ingress Contr 阅读全文
posted @ 2023-12-13 18:31 小吉猫 阅读(755) 评论(0) 推荐(0)
摘要:ApplicationSet 概述 ApplicationSet controller是一个 Kubernetes controller,添加了对 ApplicationSet CustomResourceDefinition (CRD) 的支持。该controller/CRD 实现了跨大量集群和 阅读全文
posted @ 2023-12-13 17:36 小吉猫 阅读(223) 评论(0) 推荐(0)
摘要:Project 概述 Projects负责为Application提供逻辑分组,它主要实现如下功能: 1. 限制可以部署的内容(指定受信任的Git Source仓库) 2. 限制Application可以部署到的目标位置(指定目标Cluster和Namespace) 3. 限制能够及不能够部署的对象 阅读全文
posted @ 2023-12-13 16:01 小吉猫 阅读(164) 评论(0) 推荐(0)
摘要:Application CRD apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: guestbook # You'll usually want to add your resources to the argocd 阅读全文
posted @ 2023-12-13 15:36 小吉猫 阅读(233) 评论(0) 推荐(0)
摘要:自动同步策略 当 Argo CD 检测到 Git 中所需的清单与集群中的实时状态之间的差异时,它能够自动同步应用程序。自动同步的好处是 CI/CD 管道不再需要直接访问 Argo CD API 服务器来执行部署。相反,管道会提交并推送到 Git 存储库,并对跟踪 Git 存储库中的清单进行更改。 P 阅读全文
posted @ 2023-12-12 18:05 小吉猫 阅读(1088) 评论(0) 推荐(0)
摘要:Argoproj 概述 用于 Kubernetes 运行工作流程、管理集群和正确执行 GitOps 的开源工具。 Argoproj 组成 Argo Workflows 基于Kubernetes平台的原生工作流引擎,支持 DAG和step-based工作流。 Argo Events Kubernete 阅读全文
posted @ 2023-12-12 16:48 小吉猫 阅读(284) 评论(0) 推荐(0)
摘要:创建 ns argo-rollouts # kubectl create namespace argo-rollouts namespace/argo-rollouts created 安装 argo-rollouts # kubectl apply -n argo-rollouts -f http 阅读全文
posted @ 2023-12-11 18:58 小吉猫 阅读(194) 评论(0) 推荐(0)
摘要:创建 ns argocd # kubectl create namespace argocd namespace/argocd created 安装 argocd # kubectl apply -n argocd -f https://raw.githubusercontent.com/argop 阅读全文
posted @ 2023-12-11 16:58 小吉猫 阅读(152) 评论(0) 推荐(0)
摘要:字符串函数 'refs/heads/main'.split('/') // result = list ['refs', 'heads', 'main'] ['refs', 'heads', 'main'].join('/') // result = string 'refs/heads/main' 阅读全文
posted @ 2023-12-05 17:40 小吉猫 阅读(312) 评论(0) 推荐(0)
摘要:Trigger 概述 Trigger指定事件监听器检测到事件时发生的情况。主要由TriggerTemplate、TriggerBinding和Interceptor组成。 TriggerTemplate定义在spec.template字段上,支持引用和内联两种定义方式。 TriggerBinding 阅读全文
posted @ 2023-12-05 17:06 小吉猫 阅读(48) 评论(0) 推荐(0)
摘要:TriggerBindings 概述 TriggerBinding的功能主要用于将Event中特定属性的值传递给TriggerTemplate上的参数从而完成其resourcetemplates中模板资源的实例化。 注意:Trigger使用参数名称将 TriggerBinding 参数与 Trigg 阅读全文
posted @ 2023-12-05 16:27 小吉猫 阅读(84) 评论(0) 推荐(0)
摘要:TriggerTemplate 概述 TriggerTemplate 是一种资源,它指定您想要在 EventListener 检测到事件时实例化和/或执行的资源(例如 TaskRun 或 PipelineRun)的蓝图。它公开了您可以在资源模板中的任何位置使用的参数。 TriggerTemplate 阅读全文
posted @ 2023-12-05 15:12 小吉猫 阅读(85) 评论(0) 推荐(0)
摘要:EventListener 概述 EventListener 是一个 Kubernetes 对象,用于侦听 Kubernetes 集群上指定端口上的事件。它公开了一个可寻址接收器,用于接收传入事件并指定一个或多个Triggers。sink是一个 Kubernetes 服务,在专用 Pod 内运行si 阅读全文
posted @ 2023-12-05 14:34 小吉猫 阅读(132) 评论(0) 推荐(0)
摘要:Tekton Trigger 概述 Tekton Triggers是一个Tekton组件,它允许您从各种来源的事件中检测和提取信息,并基于该信息确定地实例化和执行TaskRuns和PipelineRuns。Tekton触发器还可以将从事件中提取的信息直接传递给TaskRuns和pipelinerun 阅读全文
posted @ 2023-12-05 13:45 小吉猫 阅读(253) 评论(0) 推荐(0)
摘要:Interceptors 概述 Interceptor是针对特定平台的的事件处理器,在 TriggerBinding 之前运行。它允许您执行有效负载过滤、验证(使用秘密)、转换、定义和测试触发条件,以及实现其他有用的处理。一旦事件数据通过Interceptor,它就会在将有效负载数据传递到 Trig 阅读全文
posted @ 2023-12-05 13:37 小吉猫 阅读(180) 评论(0) 推荐(0)
摘要:Tenton 支持Secret 类型 Git Docker kubernetes.io/basic-authkubernetes.io/ssh-auth kubernetes.io/basic-authkubernetes.io/dockercfgkubernetes.io/dockerconfig 阅读全文
posted @ 2023-12-04 17:14 小吉猫 阅读(557) 评论(0) 推荐(0)
摘要:pipelineruns 概述 PipelineRun允许你在集群上实例化和执行Pipeline。一个Pipeline指定一个或多个Tasks,按照期望的执行顺序执行。PipelineRun按照指定的顺序执行Pipeline中的Tasks,直到所有Tasks都成功执行或失败。 PipelineRun 阅读全文
posted @ 2023-12-04 16:35 小吉猫 阅读(118) 评论(0) 推荐(0)
摘要:Tekton 概述 Tekton 是用于构建 CI/CD 系统的云原生解决方案。它由 Tekton Pipelines(提供构建块)和支持组件(例如 Tekton CLI 和 Tekton Catalog)组成,使 Tekton 成为一个完整的生态系统。Tekton 是Linux 基金会项目 CD 阅读全文
posted @ 2023-12-04 16:00 小吉猫 阅读(219) 评论(0) 推荐(0)
摘要:Pipelines 概述 Pipeline是Tasks的集合,作为持续集成流的一部分,您可以定义并按照特定的执行顺序排列这些Tasks。Pipeline中的每个Tasks在Kubernetes集群上作为Pod执行。您可以配置各种执行条件来满足您的业务需求。 Pipeline使用When表达式 whe 阅读全文
posted @ 2023-12-04 16:00 小吉猫 阅读(244) 评论(0) 推荐(0)
摘要:TaskRun 概述 TaskRun允许您在集群上实例化和执行Task。任务指定执行容器映像的一个或多个Steps,每个容器映像执行特定的构建工作。TaskRun按照指定的顺序执行任务中的Steps,直到所有Steps执行成功或失败。 TaskRun 配置清单 apiVersion: tekton. 阅读全文
posted @ 2023-12-04 15:26 小吉猫 阅读(119) 评论(0) 推荐(0)
摘要:Tasks 概述 Task是一系列Step的组合,每个Step主要负责运行特定的构建或交付工具从而完成相关的一次特定事项;Task以Kubernetes集群上Pod运行。Task是名称空间级别的资源。 Tasks 组成 Parameters:是使得Task及Pipeline资源定义出的“模板”更加具 阅读全文
posted @ 2023-12-02 20:07 小吉猫 阅读(248) 评论(0) 推荐(0)
摘要:kaniko 概述 kaniko是一个从Dockerfile构建容器镜像的工具,可以在容器或Kubernetes集群中使用。 kaniko不依赖于Docker守护进程,并且完全在用户空间中执行Dockerfile中的每个命令。 Kaniko是作为image运行: gcr.io/kaniko-proj 阅读全文
posted @ 2023-12-02 20:06 小吉猫 阅读(2012) 评论(0) 推荐(0)
摘要:环境要求 1. 运行 1.18 或更高版本的Kubernetes 集群; 2. 集群上要安装了Tekton Pipelines; 部署 Tekton Triggers 下载 Tekton Triggers # wget https://storage.googleapis.com/tekton-re 阅读全文
posted @ 2023-12-01 15:38 小吉猫 阅读(63) 评论(0) 推荐(0)