基于Istio的微服务Gateway实战
1、Gateway网关 Istio中的Gateway是一个用于将外部流量引入Istio服务网格的组件。它提供了入出口流量管理的功能,充当了服务网格中的边界和负载均衡器。Gateway可以让在服务网格外部的流量可以通过统一的入口接入到服务网格中的服务。 以下是一些与Istio Gateway相关的特性和概念: 1. 边界流量:Istio Gateway负责接收来自外部的流量,并将其传递到服务网格中的…- 0
- 0
基于Istio的微服务可观察性
1、前言 在本章节中,我们将学习一些监控(Prometheus)、追踪(Zipkin)、数据可视化工具(Grafana)和服务拓扑结构(Kiali)。(我们又学到了一款Zipkin的链路追踪组件,为什么没有用Skywalking呢?主要还是Istio原生未做支持) 为了让 Grafana 和 Kiali 工作,我们首先要安装 Prometheus 插件。 安装Prometheus, Grafana…- 0
- 0
使用Rook部署Ceph存储集群
1、前言 Rook https://rook.io 是一个自管理的 分布式存储 编排系统,可以为Kubernetes提供便利的存储解决方案。 Rook本身并不提供存储,而是在kubernetes和存储系统之间提供适配层,简化存储系统的部署与维护工作。 目前,Rook支持的存储系统包括:Ceph、CockroachDB、Cassandra、EdgeFS、 Minio、NFS。当然,Rook支持的最好…- 0
- 0
使用cephadm部署ceph集群
1、准备工作 机器编号主机名IP1ceph0110.0.1.2112ceph0210.0.1.2123ceph0310.0.1.213 关闭selinux、firewalld,配置hostname以及/etc/hosts $ systemctl stop firewalld $ systemctl disable firewalld $ setenforce 0 $ sed -i 's#…- 0
- 0
应用接入Skywalking
1、使用Skywalking Agent Java 中使用 agent ,提供了以下三种方式供你选择 使用官方提供的基础镜像 skywalking-base; 将 agent 包构建到已经存在的基础镜像中; sidecar 模式挂载 agent(推荐); 1、使用官方提供的基础镜像 Downloads | Apache SkyWalking 2、将agent包构建到已经存在的基础镜像中 提供这种方…基于Helm部署Skywalking
官方文档:apache/skywalking-kubernetes: Apache SkyWalking Kubernetes Deployment Helm Chart (github.com) 1、认识skywalking组件 Skywalking OAP Server: Skywalking OAP Server 是 Skywalking 分析系统的核心组件之一。 主要负责接收和处理来自 S…Ingress-nginx优化配置
主要从 ingress-nginx-controller 资源的 Pod 、ConfigMap以及业务的 ingress 规则入手。 1、ingress-nginx-controller Pod 1.1 主容器内核参数优化 # 在 values.yaml 文件中修改 extraInitContainers 添加一个初始化 initContainers 容器 - name: sysctl image…使用 Ingress-Nginx 进行灰度(金丝雀)发布
1、Ingress-Nginx Canary介绍 Nginx Ingress Controller 作为项目对外的流量入口和项目中各个服务的反向代理。 官方文档概述:Annotations - Ingress-Nginx Controller (kubernetes.github.io) Nginx Annotations 的几种Canary规则: Annotation说明nginx.ingres…Ingress-Nginx高级配置
官方站点 nginx-configuration: Annotations - NGINX Ingress Controller(kubernetes.github.io) 1、ingress-nginx 之 rewrite **官方示例: ** Rewrite - NGINX Ingress Controller (kubernetes.github.io) rewrite可以使用下面的anno…基于Kubernetes的Ingress-Nginx解决方案
1、Ingress诞生背景 1、K8S集群内SVC不支持外部访问; 2、通过NodePort方式不易于后续管理; 3、应用层面需要更高级别的路由功能和负载平衡; 2、Ingress基本概念 在Kubernetes集群中,Ingress作为集群内服务对外暴露的访问接入点,几乎承载着集群内服务访问的所有流量。 Ingress是Kubernetes中的一个资源对象,用来管理集群外部访问集群内部服务的方式…基于Loki的日志收集系统
K8S轻量级日志收集方案LPG(Loki+Promtail+Grafana) 1、EFK vs LPG 架构和组件 Loki:Loki 是一个开源的水平可扩展日志聚合系统,由 Promtail、Loki 和 Grafana组成。 EFK:EFK 是一个集成的解决方案,由 Elasticsearch、Fluentd 和 Kibana 组成。 存储和查询 Loki:Loki 使用了基于日志流的存储方式…- 0
- 0
海量数据下的EFK架构优化升级
1、数据背景 在海量数据场景下,日志管理和分析是一项重要任务。为了解决这个问题,EFK 架构(Elasticsearch + Fluentd + Kibana)已经成为流行的选择。 然而,随着数据规模的增加,传统的 EFK 架构可能面临性能瓶颈和可用性挑战。为了提升架构的性能和可伸缩性,我们可以结合 Kafka 和 Logstash 对 EFK 架构进行优化升级。 首先,引入 Kafka 作为高吞…- 0
- 0
EFK日志平台部署管理
1、前言 Kubernetes 中比较流行的日志收集解决方案是 Elasticsearch、Fluentd 和 Kibana(EFK)技术栈,也是官方现在比较推荐的一种方案。 1、主要组件功能 Elasticsearch(ES): 强大的搜索和查询能力:ES是一个分布式搜索和分析引擎,具有高效的搜索和查询功能。它可以处理大规模的数据,并且支持复杂的查询操作。 可伸缩性和高可用性:可通过增加节点来扩…- 0
- 0
Jenkins Pipeline语法
作为一种流行的持续集成和交付工具,Jenkins有多种方式来实现交付流水线。其中, Jenkins Pipeline是一种比较流行的方式,它提供了一个DSL(Domain Specific Language 的缩写,中文翻译为: 领域特定语言)来描述交付流水线。 官方:Pipeline Syntax (jenkins.io) 1、什么是Jenkins Pipeline Jenkins Pipeli…- 0
- 0
Jenkins基于Helm的应用发布
相对于基于控制器文件部署的方式有哪些优点: 利于形成DEVOPS标准化; 控制器方式需要维护大量的yaml文件; 相对于helm方式,控制器方式低效且不够灵活; 当前环境环境基于控制器文件部署: //定义git相关数据 def git_address = "http://gitlab.kubernets.cn/demoteam/java_kubernetes.git" def …- 0
- 0
Jenkins部署在k8s集群之外使用动态slave模式
环境说明k8s集群内部部署了一套jenkins master,命名空间为devops;随后在集群外部通过docker部署一套jenkins master,两套jenkins master版本一致。通过ingress将k8s api接口暴露,配置DNS解析指向LoadBalancer IP 在集群外部的jenkins上添加kubernetes凭证及集群,添加集群时指定命名空间为devops;运行jo…- 1
- 0
k8s中部署jenkins并利用master-slave模式实现CICD
1、Jenkins概念 1.1 前言 Jenkins 是一个开源的自动化构建工具,用于持续集成和持续交付。它可以帮助开发团队自动化构建、测试和部署软件,提高软件开发的效率和质量。Jenkins 具有以下特点: 开源:Jenkins 是一个开源软件,可以免费使用。 易用:Jenkins 提供了丰富的插件和模板,可以快速地搭建自动化构建和部署流程。 可扩展:Jenkins 支持插件扩展,可以满足不同项…- 0
- 0
水平自动扩容和缩容HPA
HPA全称是Horizontal Pod Autoscaler,翻译成中文是POD水平自动伸缩,HPA可以基于CPU利用率对replication controller、deployment和replicaset中的pod数量进行自动扩缩容(除了CPU利用率也可以基于其他应程序提供的度量指标custom metrics进行自动扩缩容)。pod自动缩放不适用于无法缩放的对象,比如DaemonSets…- 11
- 0
ConfigMap&Secret场景应用
1、configMap 1.1 概述 ConfigMap是一种API对象,用来将 非加密数据 保存到 键值对 中。可以用作环境变量、命令行参数或者存储卷中的配置文件。 ConfigMap可以将环境变量配置信息和容器镜像解耦,便于应用配置的修改。如果需要存储加密信息时可以使用Secret对象。 1.2 作用 ConfigMapt是Kubernetes系统上两种特殊类型的存储卷,ConfigMap对象…SkyWalking全链路监控
1、Skywalking介绍 1.1 APM APM (Application Performance Management )应用性能管理 ,通过各种探针采集并上报数据,收集关键指标,同时搭配数据展示以实现对应用程序性能管理和故障管理的系统化解决方案。 目前主要的一些 APM 工具有: Cat、Zipkin、Pinpoint、SkyWalking,这里主要介绍 SkyWalking ,它是一款优…Kubernetes集群维护
1、查看Kubernetes集群资源使用情况和日志 1、 查看资源使用情况1)kubectl top查看Node使用CPU和内存情况 $ kubectl top node #查看所有node $ kubectl top node k8s01 #查看指定node 2)kubectl top查看Pod使用CPU和内存情况 $ kubectl top pod #查看所有Pod $ kubectl top…Kubernetes 存储
存储持久化相关三个概念: 1)PersistentVolume(PV)是对具体存储资源的描述,比如NFS、Ceph、GlusterFS等,通过PV可以访问到具体的存储资源; 2)PersistentVolumeClaim(PVC)Pod想要使用具体的存储资源需要对接到PVC,PVC里会定义好Pod希望使用存储的属性,通过PVC再去申请合适的存储资源(PV),匹配到合适的资源后PVC和PV会进行绑定…Kubernetes高级调度
1、搞懂Kubernetes调度 K8S调度器Kube-schduler的主要作用是将新创建的Pod调度到集群中的合适节点上运行。kube-scheduler的调度算法非常灵活,可以根据不同的需求进行自定义配置,比如资源限制、亲和性和反亲和性等。 1)kube-scheduler的工作原理如下: 监听API Server: kube-scheduler会监听API Server上的Pod对象,以获…
云原生
幸运之星正在降临...
点击领取今天的签到奖励!
恭喜!您今天获得了{{mission.data.mission.credit}}积分
我的优惠劵
- ¥优惠劵使用时效:无法使用使用时效:
之前
使用时效:永久有效优惠劵ID:×
没有优惠劵可用!