云原生周刊:2024 扩展 K8s 集群指南 | 2024.1.2
开源项目推荐
Jib
Jib 无需 Docker 守护进程,也无需深入掌握 Docker 最佳实践,即可为您的 Java 应用程序构建优化的 Docker 和 OCI 映像。它可作为 Maven 和 Gradle 的插件以及 Java 库使用。
Docketeer
Docketeer 提供了一个简单的界面来管理 Docker 资源并可视化主机和容器指标数据以及 Kubernetes 集群数据。Docketeer 是一个容器化应用程序,可以轻松地与应用程序集群一起部署。
Helmify
Helmify 是一个 CLI 工具,用于从 Kubernetes 配置文件生成 Helm charts。它可以将支持的 Kubernetes 对象转换为 Helm chart,并提供了多种使用方式和选项。
DARK
DARK 是一个在 Kubernetes 中将 Grafana 仪表板作为资源定义和部署的工具。它允许用户通过 YAML 文件完整描述和部署 Grafana 仪表板,与监控的服务一起部署。除了仪表板,DARK 还可以管理数据源、API 密钥和警报管理器配置。
文章推荐
横向扩展 Kubernetes 集群 - 2024 年版
这篇文章是关于在 2024 年扩展 Kubernetes 集群的指南。作者首先介绍了文章的背景和目的,即为准备 CKA 考试而部署 Kubernetes 集群。然后,作者详细说明了如何将控制平面节点和工作节点扩展到三个,并强调了保证集群高可用性的重要性。在此过程中,作者涵盖了安装和配置 HAProxy 作为控制平面节点的负载均衡器的步骤,并提供了相应的代码示例。此外,作者还解释了在添加新的控制平面节点之前需要进行的预备工作,例如安装容器运行时、配置系统驱动程序等。最后,作者提供了验证集群状态和节点连接性的方法,并指导如何通过 kubeadm 命令将新的控制平面节点加入集群。整篇文章提供了清晰的步骤和指导,旨在帮助读者扩展和管理他们的 Kubernetes 集群。
在 Docker 容器内设置 Java 堆大小
这篇文章介绍了在 Docker 容器中设置 Java 堆大小的方法。作者指出在生产环境中,将 Java 应用程序运行在容器中可能会遇到一些问题。文章详细解释了 Java 堆大小设置的重要性,并讨论了 JVM 使用的虚拟内存远远超出 Java 堆的范围,包括垃圾收集器、类加载器、JIT 编译器等子系统所需的内存,以及操作系统和本地库所占用的内存。作者指出,在容器中运行 Java 时,如果使用堆内存作为内存消耗的指标,存在着 JVM 应用程序超出 Kubernetes 要求内存限制而被容器终止并重新启动的风险。文章进一步讨论了两种可能导致 OOM 异常的情况,并提供了设置 JVM 参数来避免这些情况发生的建议。最后,作者强调了监控 OOM 发生的重要性,并提供了一些建议来避免 OOM 异常的发生。整篇文章提供了实用的技巧和建议,帮助读者在 Docker 容器中设置合适的 Java 堆大小。
扩展您的 Kubernetes 工具箱:CRD 的力量
这篇文章介绍了如何通过自定义资源定义(CRDs)和自定义控制器扩展 Kubernetes 的功能。它强调了在 Kubernetes 生态系统中将所有内容都作为 Kubernetes 原生对象进行管理的趋势。作者讨论了 CRDs 的概念和用法,并提供了一个示例演示如何创建一个自定义资源和相应的操作器。文章还强调了在开发 CRDs 之前要考虑已有解决方案的可用性以及是否真正需要自定义资源。最后,文章提供了创建自定义资源定义和操作器的实际步骤和代码示例。
云原生动态
OpenFeature 成为 CNCF 孵化项目
CNCF 技术监督委员会 (TOC) 已投票同意 OpenFeature 作为 CNCF 孵化项目。
OpenFeature 是一个开放规范,为功能标记提供与供应商无关、社区驱动的 API,与各种功能标记管理工具兼容。功能标志是软件开发中的一项技术,允许团队启用、禁用或更改产品或服务中某些功能或代码路径的行为,而无需修改源代码。
通过 OpenFeature 实现的功能标记标准化将工具和供应商统一在一个通用接口后面,有助于避免供应商在代码级别的锁定,并提供一个用于构建可在社区中共享的扩展和集成的框架。
Griffin 2.0:Instacart 改进其机器学习平台
Instacart 基于使用原始 Griffin 机器学习平台的经验创建了下一代平台。该公司希望改善用户体验并帮助管理所有机器学习工作负载。改进后的平台利用了 MLOps 的最新发展,并为当前和未来的应用程序引入了新功能。
Griffin 平台的第二个版本用公开 REST API 的面向服务的架构取代了基于 CLI 和 Git 的工具。Web UI 使用这些 API 为 ML 工程师提供无缝体验,而 Griffin SDK 则可以将其他工具与 Griffin 集成,例如 BentoLM、Instacart 的内部 ML 笔记本云开发环境。
ARMO 将 VEX 引入 Kubernetes 安全态势管理平台
ARMO 增加了对漏洞利用交换 (VEX) 格式的支持,用于共享有关 Kubescape 的漏洞信息,Kubescape 是 Kubernetes 的开源安全态势管理项目。
VEX 格式是为美国商务部下属机构国家电信和信息管理局 (NTIA) 领导的软件组件透明度多利益相关方流程而创建的。NTIA 和网络安全与基础设施安全局 (CISA) 随后与 NTIA 和 Chainguard 合作创建了 OpenVEX,这是一个规范和一组工具,用于以机器可读的格式报告漏洞。Kubescape 社区与 Linux 基金会合作,为 Kubernetes 环境创建 OpenVEX 实例。
本文由博客一文多发平台 OpenWrite 发布!
云原生周刊:2024 扩展 K8s 集群指南 | 2024.1.2的更多相关文章
- 使用Velero Restic快速完成云原生应用迁移至ACK集群
本文记录使用Velero Restic快速完成云原生应用迁移至ACK集群的实践过程. 0. 实践步骤概览 (1)创建GKE集群(或自建Kubernetes集群)(2)在GKE集群上部署示例应用Jenk ...
- 【云原生 · Kubernetes】部署kube-apiserver集群
个人名片: 因为云计算成为了监控工程师 个人博客:念舒_C.ying CSDN主页️:念舒_C.ying 部署kube-apiserver集群 10.1 创建kube-apiserver 证书 10 ...
- 云原生时代, Kubernetes 多集群架构初探
为什么我们需要多集群? 近年来,多集群架构已经成为“老生常谈”.我们喜欢高可用,喜欢异地多可用区,而多集群架构天生就具备了这样的能力.另一方面我们也希望通过多集群混合云来降低成本,利用到不同集群各自的 ...
- 【云原生 · Kubernetes】部署Kubernetes集群
[云原生 · Kubernetes]搭建Harbor仓库 接着上次的内容,后续来了! 在master节点执行脚本k8s_master_install.sh即可完成K8S集群的部署,具体步骤参考如下(1 ...
- 使用KubeOperator扩展k8s集群的worker节点
官方文档网址:https://kubeoperator.io/docs/installation/install/ 背景说明 原先是一个三节点的k8s集群,一个master,三个woker(maste ...
- 在 Linux 内公网、云服务器搭建一套 K8s 集群
前言 本文讲述如果在 Linux 搭建内/公网 Kubernetes 集群的详细步骤,解决搭建过程中的问题. 准备工作 Linux CentOS 7.x 两台及以上,本文用的 7.6 本文配置默认是在 ...
- 腾讯云 K8S 集群实战 Service Mesh—Linkerd2 & Traefik2 部署 emojivoto 应用
Linkerd 是 Kubernetes 的服务网格. 它通过为您提供运行时调试(runtime debugging).可观察性(observability).可靠性(reliability)和安全性 ...
- 轻量化安装 TKEStack:让已有 K8s 集群拥有企业级容器云平台的能力
关于我们 更多关于云原生的案例和知识,可关注同名[腾讯云原生]公众号~ 福利: ①公众号后台回复[手册],可获得<腾讯云原生路线图手册>&<腾讯云原生最佳实践>~ ②公 ...
- 自建k8s集群日志采集到阿里云日志服务
自建k8s集群 的master 节点安装 logtail 采集工具 wget http://logtail-release-cn-hangzhou.oss-cn-hangzhou.aliyuncs.c ...
- shell脚本监控k8s集群job状态,若出现error通过触发阿里云的进程监控报警
#!/bin/bash while [ 1 ] do job_error_no=`kubectl get pod -n weifeng |grep -i "job"|grep -c ...
随机推荐
- 精读代码,实战进阶&实践Task2
背景 从零入门AI生图原理&实践 是 Datawhale 2024 年 AI 夏令营第四期的学习活动("AIGC"方向),基于魔搭社区"可图Kolors-LoRA ...
- Java元注解介绍
Java四种元注解相关介绍 概述 注解从Java1.5引入以来,不断地简化我们编写代码的流程,逐渐的也成为了我们必学的一项技术.我们学习了各种注解,学习了他们的用法,学习了他们的限制,是否想过他们的组 ...
- Ubuntu 写入磁盘映像
使用 dd 命令 dd 命令是 Unix 和 Unix-like 操作系统中用于低级别数据复制和转换的命令.它可以直接操作设备文件(如硬盘.光盘.USB 驱动器等),适用于备份.恢复.制作启动盘等任务 ...
- Linux 检查端口监听情况
使用 lsof $ sudo lsof -i :22 COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME sshd 963 root 3u IPv4 ...
- SpringMVC的视图
目录 ThymeleafView 转发视图 重定向视图 视图控制器view-controller SpringMVC中的视图是View接口,视图的作用渲染数据,将模型Model中的数据展示给用户Spr ...
- win10找不到无线网络报错:Windows无法自动将IP协议堆栈绑定到网络适配器
win10找不到无线网络报错:Windows无法自动将IP协议堆栈绑定到网络适配器 问题描述: 今天启动电脑,忽然发现连不上WIFI了,但可以拨号连接有线网.大致情况如下: 上图是修复后的结果,在未修 ...
- Mybatis骚操作-通用查询工具类
老项目大多都有对JDBC进行了封装,可以直接执行SQL的工具类,在做项目升级改造的时候(这里仅指整合mybatis),要么全部调整成dao-xml的形式(会有改动代码多的问题,而且看代码时需要xml和 ...
- SQL 高级语法 MERGE INTO
根据与源表相联接的结果,对目标表进行插入.更新.删除等操作. 例如,对目标表,如果源表存在的数据则更新,没有的则插入,就可以使用MEREG进行同步. 基本语法 MERGE INTO target_ta ...
- DNN、CNN、RNN的区别
参考1:CNN.RNN.DNN区别 参考2:一文读懂 CNN.DNN.RNN 内部网络结构区别 一张图解释所有: 感知机(输入层.输出层.一个隐藏层)-->不能解决复杂的函数-->神经网络 ...
- 学习高校课程-软件设计模式-OOP 和 UML 类图 OOP 与 Java(lec1)
Lecture 1:OOP and UML Class DiagramsOOP with Java OOP 和 UML 类图 OOP 与 Java Object-Oriented Programmin ...