Higress 也许是最好的云原生网关

官方文档:https://higress.cn/docs/latest/overview/what-is-higress/ 1、简介 Higress 是阿里研发的一款云原生 API 网关,以开源 Istio + Envoy 为核心构建的云原生 API 网关,实现了流量网关 + 微服务网关 + 安全网关三合一的高集成能力,深度集成 Dubbo、Nacos、Sentinel 等微服务技术栈,能够帮助用

在K8s上运行Nacos高可用集群

Nacos 是 Dynamic Naming and Configuration Service的首字母简称,一个更易于构建云原生应用的动态服务发现、配置管理和服务管理平台。 Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特性集,帮助您快速实现动态服务发现、服务配置、服务元数据及流量管理。 Nacos 帮助您更敏捷和容易地构建、交付和管理微服务平台。 Nacos

Pause容器是干什么的?

1.简介 Pod是K8s最小的调度单元,但它的内部结构却充满了许多复杂的机制,其中之一就是Pause容器。尽管Pause容器看似不起眼,但它在整个K8s集群中发挥了至关重要的作用。我们在 kubernetes 的 node 节点,执行 docker ps,可以发现每个 node 上都运行了一个 pause进程的容器,如下: # docker ps |gre

Java 云原生中的内存问题

参考文章:https://help.aliyun.com/zh/sae/serverless-app-engine-upgrade/use-cases/sae-best-practices-for-jvm-heap-size-configuration-1 为什么堆内存未超过 Xmx 却发生了 OOM?怎么理解操作系统和JVM的内存关系?为什么程序占用的内存比 Xmx 大不少,内存都用在哪儿了?为

Serverless是云计算的未来吗?

原文链接:https://developer.ibm.com/blogs/the-future-is-serverless/ 一、简介 近几年随着云计算的迅猛发展,出现一种新的推动力那就是Serverless,其将推动云计算再次演进。本文将阐述一个观点,即Serverless是云计算的未来。 当下云计算的影响力已经渗透到世界的各个角落,无论你身处何方都可以看见那些依赖便携电脑上网和处理信息的人。那

Pod健康检查(就绪性探针、存活性探针和启动检查)

1、简介 K8S中的健康检查主要使用 就绪性探针(readinessProbes​)和 存活性探针(livenessProbes) 来实现,k8s保证 service 后面的 pod 都可用,是k8s中自愈能力的主要手段,主要基于这两种探测机制,可以实现如下需求: 异常实例自动剔除,并重启新实例 多种类型探针检测,保证异常pod不接入流量 不停机部署,更安全的滚动升级 探针种类: readines

Docker、Containerd ctr 和 crictl 命令区别

一般来说,在某个主机安装了 k8s 后,命令行会有 crictl 命令。而 ctr 是跟 k8s 无关的,你主机安装了 containerd 服务后就可以操作 ctr 命令。 crictl​ 是遵循CRI接口规范的一个命令行工具,通常用它来检查和管理kubelet节点上的容器运行时和镜像。 ctr​ 是 containerd 的一个客户端工具。 ctr -v​ 输出的是 containerd 的版

metrics-server监控资源使用情况

一、简介 kubectl top是经常使用的基础命令,但是必须需要部署metrics-server组件,才能获取到监控值。 https://github.com/kubernetes-sigs/metrics-server 版本矩阵 Matrix Metrics Server Metrics API group/version Supported Kubernetes version 0.7.x

velero备份k8s

1.简介 Velero 是vmware开源的一个云原生的灾难恢复和迁移工具,意思是帆船,非常符合Kubernetes社区的命名风格,它本身也是开源的,采用Go语言编写,可以安全的备份、恢复和迁移Kubernetes集群资源数据;官网https://velero.io/。 它支持标准的K8S集群,既可以是私有云平台也可以是公有云,除了灾备之外它还能做资源移转,支持把容器应用从一个集群迁移到另一个集群

docker日志膨胀问题

一、问题出现 Docker 已成为开发者的常用工具,但在高负载和高并发的环境下,Docker 容器生成的日志文件可能会迅速膨胀,占用大量磁盘空间,甚至导致系统性能问题。本文将探讨如何有效地管理和减少 Docker 日志的大小,确保日志的高效存储和易于管理。 Docker 默认使用 json-file 日志驱动来记录容器的标准输出和标准错误输出。这些日志通常会存储在 /var/lib/docker/

Pod常见的8种状态详解及解决办法

1. Running Pod 已被调度到节点上,并且所有容器都已成功启动。 2. Failed Pod 中的所有容器都已终止运行,并且至少有一个容器以失败状态退出。 常见原因: 容器内部的程序崩溃。 容器启动失败(如配置错误或依赖服务不可用)。 容器的健康检查失败。 解决方法: 查看 Pod 的日志,了解失败原因: kubectl logs <pod-name> -n NS 检查 Po

kube-Prometheus监控k8s集群

1.kube-Prometheus是什么? kube-Prometheus是一个完善的Kubernetes集群监控解决方案,该方案提供了详尽的Kubernetes清单文件、Grafana仪表板配置和Prometheus规则,辅以详细的文档和脚本,使得在Kubernetes集群中利用Prometheus进行端到端的监控变得异常便捷高效。kube-Prometheus不仅引入了Prometheus O

docker镜像同步

背景: 当企业想把harbor仓库的docker image 镜像,同步到公有云仓库【阿里云】,或者公有云仓库【阿里云】数据迁移到内部的harbor时,就需要使用skopeo,用来镜像镜像同步。 一、Skopeo介绍 Skopeo是一款用来操作、检查、签署和传输容器镜像及镜像存储库的工具, 支持Linux系统、Windows 和 Macos。 Skopeo(希腊语"远程查看"的意思)是红帽工程师与

helm部署rancher

helm部署rancher 1. 添加 Helm Chart 仓库 Stable:建议用于生产环境: helm repo add rancher-stable https://releases.rancher.com/server-charts/stable 获取最新的 Rancher Chart。此操作将获取 Chart 并将其作为 .tgz 文件保存在当前目录中。 下载特定的 Rancher

CSI插件之Samba&CIFS文件系统

前提 Kubernetes 1.19+ 安装 kubernetes提供CSI驱动将外部存储提供给pod中使用,我们可以通过CSI驱动对接Samba/CIFS共享文件存储 驱动地址: https://github.com/kubernetes-csi/csi-driver-smb 安装SMB CSI驱动 curl -skSL https://raw.githubusercontent.com/kub

Pod 崩溃的常见原因和解决方案

 Pod 崩溃的常见原因 1. 内存不足 (OOMKilled) (1) 原因分析: 容器分配的内存不足,程序实际消耗超出预估值。 内存泄漏或不合理的对象管理导致内存过载。 (2) 案例说明: 某视频处理应用由于每秒加载大量缓存未释放,导致容器内存快速增长。最终,容器被系统终止并标记为 "OOMKilled"。 (3) 解决方案: 监控内存使用: 使用 Prometheus 或 Metrics S

免费学习K8S的平台

介绍一个完全免费的K8S学习平台,为你搭建在线集群环境,助你轻松驾驭云原生世界! 学习平台:https://killercoda.com/ 这个学习平台,不仅提供了最新版本的K8S集群环境,还为你准备了丰富的学习资源和实验场景。无需繁琐的安装和配置,只需轻轻一点,即可启动你的在线K8S集群。 而且还配置三个不同的配置的K8S环境。 在这个学习平台上还精心准备了包括CKA,CKS和CKAD的场景的实

如何删除 Terminating 状态的 Pod

当我们删除一个 Pod 时,通常它会快速进入 Terminating 状态并被删除。然而,有时由于种种原因,Pod 会长时间停留在 Terminating 状态。本文将详细介绍如何处理和删除这些处于 Terminating 状态的 Pod。 为什么Pod会停留在Terminating状态? 在了解如何删除 Terminating 状态的 Pod 之前,我们先看看为什么 Pod 会进入并停留在这种状

Job 和 Cronjob 入门

什么是Kubernetes Job? Kubernetes job主要用于短期工作负载。 kubernetes作业对象基本上部署了一个pod,但它是为了完成而运行的,而不是像deployment、replicasets、复制控制器和DaemonSets这样的对象,它们是持续运行的。 这意味着,作业将一直运行,直到作业中指定的任务完成,如果pods给出退出代码0,则作业将退出。该任务可以是shell

在Kubernetes上运行数据库

在 Kubernetes 上运行数据库的情况越来越受欢迎;在最近 Portworx 委托进行的使用 Kubernetes 的组织调查中,超过 72% 的受访者表示他们的团队正在Kubernetes 上运行数据库。 显然,围绕Kubernetes 上的数据(DoK) 的讨论已经成熟,因为 Kubernetes 中的持久卷在 2019 年进入通用可用性。拥有更先进 Kubernetes 实践的团队正在