Kubernetes 共享 GPU 调度指南
本篇博文介绍了如何在 Kubernetes 集群中使用 GPU 资源,以及如何设置共享 Nvidia GPU 的详细步骤。
依照本文操作你将完成如下内容:
- Nvidia 和 CUDA 驱动安装
- Nvidia Container Runtime 的配置
- Kubernetes 通过 GPU plugin 实现 GPU 调度支持
- Kubernetes 开启共享 Nvidia GPU 资源配置
本篇博文介绍了如何在 Kubernetes 集群中使用 GPU 资源,以及如何设置共享 Nvidia GPU 的详细步骤。
依照本文操作你将完成如下内容:
本文介绍了如何将 Spring Cloud 服务发现下沉到 Kubernetes ,同时结合 Istio 解决 JVM 预热的一些思路。
Sealed Secrets是一种在版本控制中存储加密的Kubernetes秘密的解决方案。
在这篇博文中,我们将学习如何安装和使用它。
Java 容器镜像通常会有一个体积巨大的 JAR 包(fat-JAR)独占一个文件系统层,我们对应用程序代码所做的每一次更改都会更改该层。这是非常糟糕的,事实上这个 JAR 包含外部依赖和内部依赖,我们可以进一步通过分层来优化,充分利用分层缓存机制使其共享依赖层。
本文将通过 解压 JAR 分层优化
和 Spring Boot 2.3 引入的分层索引特性
将 JAR 分成多个层来改进这一点。
Argocd-Vault-Plugin(AVP) 是一个自定义的 ArgoCD 插件,这个插件旨在帮助解决 GitOps 和 Argo CD 的 Secret 管理问题。用于从 HashiCorp Vault 等秘密管理器中检索秘密并将其注入 Kubernetes YAML 文件中,从而无需依赖 Operator 或 Custom Resource,这使得它不仅可以用于 Secrets 资源,还可以能够 parameterize 任何 Kubernetes 资源,甚至是自定义资源。
本文将介绍如何使用 Argocd-Vault-Plugin 管理 GitOps 中的 Secret
随着时间的推移,Prometheus 中存储的指标数量越来越多,查询的频率也越来越高。随着越来越多的仪表板被添加到 Grafana,我开始遇到 Grafana 无法按时呈现图形和 Prometheus 查询超时的情况,尤其在长时间聚合大量指标时这种现象更为严重。
本文用到了 Prometheus Recording Rule 实现对高维度指标查询的 PromQL 语句的性能优化,提高查询效率。
现在安装 Kubernetes 集群已经变得越来越简单了,Kubernetes in Docker(KinD)这个工具就可以通过创建容器来作为 Kubernetes 的节点,我们只需要在机器上安装 Docker 就可以使用,它允许我们在很短的时间内就启动一个多节点的集群,而不依赖任何其他工具或云服务商。
本文将介绍 Kind 中 extra-port-mappings,kubernetes-version,image-registry,api-server-acl 等基本配置。 并带有一个 kubesphere 部署示例,还演示了在不删除 Kind 集群的情况下的暂停和重启,以及 Kind 开启 IPVS 导致相关错误的排查记录。
External-DNS 简化了 DNS 记录的管理,它通过监视 Kubernetes 资源,并利用外部 DNS 提供商来配置相应的 DNS 记录。
本文介绍如何部署 External-DNS ,并通过示例验证其功能特性。