LOADING

加载过慢请开启缓存 浏览器默认开启

Stringxy Zone

Welcome to Stringxy Zone! I am Utada Wendic,a full stack programmer who started with Java. This website is used to record notes on learning cloud native technology and LLM development.

Ubuntu系统上卸载Kubernetes集群

云原生 2025/2/28

如何从Ubuntu系统上卸载Kubernetes集群

如果您想从Ubuntu系统上卸载Kubernetes集群,您需要执行以下步骤:

  1. 关闭Kubernetes集群:
    如果您的集群还在运行,首先您需要使用kubeadm命令来安全地关闭它:
    sudo kubeadm reset
    
    在执行该命令后,系统会提示是否继续操作。输入 y 并按回车键以确认。
  2. 停止Kubernetes服务
sudo systemctl stop kubelet
  1. 删除Kubernetes组件
sudo apt-get purge kubeadm kubelet kubectl kubernetes-cni
阅读全文

Kube-OVN——安装&部署

云原生 2025/2/21

Kube-OVN——安装&部署

准备工作

Kube-OVN 是一个符合 CNI 规范的网络组件,其运行需要依赖 Kubernetes 环境及对应的内核网络模块。 以下是通过测试的操作系统和软件版本,环境配置和所需要开放的端口信息。

软件版本

Kubernetes >= 1.23。
Docker >= 1.12.6, Containerd >= 1.3.4。
操作系统: CentOS 7/8, Ubuntu 16.04/18.04/20.04。

  • 其他 Linux 发行版,需要检查一下内核模块是否存在 geneve, openvswitch, ip_tables 和 iptable_nat,Kube-OVN 正常工作依赖上述模块。
modinfo geneve
modinfo openvswitch
modinfo ip_tables
modinfo iptable_nat
阅读全文

Volcano扩展——扩展一个调度器插件

云原生 2025/2/17

Volcano

  • 官方文档
  • Github
  • Volcano是CNCF 下首个也是唯一的基于Kubernetes的容器批量计算平台,主要用于高性能计算场景。它提供了Kubernetes目前缺 少的一套机制,这些机制通常是机器学习大数据应用、科学计算、特效渲染等多种高性能工作负载所需的。作为一个通用批处理平台,Volcano与几乎所有的主流计算框 架无缝对接,如Spark 、TensorFlow 、PyTorch 、 Flink 、Argo 、MindSpore 、 PaddlePaddle,Ray等。它还提供了包括异构设备调度,网络拓扑感知调度,多集群调度,在离线混部调度等多种调度能力。Volcano的设计 理念建立在15年来多种系统和平台大规模运行各种高性能工作负载的使用经验之上,并结合来自开源社区的最佳思想和实践。
  • 插件开发官方文档https://github.com/Stringxy/volcano-custom-plugin-demo/blob/main/docs/design/custom-plugin.md

新增插件说明

  • 本文新增了一个Print Action与logPrint Plugin,Job Pending&Ready时,调度器将会打印日志

环境 Environment

  • volcano: 1.11.0
  • docker: v26.1.3
  • docker buildx: v0.20.1
  • kubernetes: v1.27.1
阅读全文

Kubernetes二次开发——使用Scheduler Framework扩展调度器

云原生 2025/2/11

k8s 自定义调度器插件之 Scheduler Framework

Scheduler Extender 与 Scheduler Framework

Scheduler Framework新增调度器

优点

  • 性能好:由于不依赖外部插件或 HTTP 调用,调度流程的延迟相对较低,适合对性能要求较高的场景。
  • 复用性高:可复用现有的调度插件,如 scheduler-plugins,大大降低了开发难度,提升了开发效率。

缺点

  • 多个调度器可能会冲突:比如多个调度器同时调度了一个 Pod 到节点上,先启动的 Pod 把资源占用了,后续的 Pod 无法启动。

Scheduler Extender基于http服务扩展调度器

优点

  • 实现简单:无需重新编译调度器,通过配置 KubeSchedulerConfiguration 创建一个外部 HTTP 服务来实现自定义逻辑。
  • 零侵入性:不需要修改或重构调度器的核心代码,可快速上线新的调度逻辑。
  • 灵活性较高:原有调度器和自定义逻辑相对独立,方便维护与测试。

缺点

  • 性能差:调度请求需要经过 HTTP 调用,增加了调用延迟,对性能可能有影响。
    通过以上对比,可以根据具体场景和需求选择合适的方法。
阅读全文

Kubernetes二次开发——使用extender扩展调度器

云原生 2025/2/11

k8s 自定义调度器逻辑之 Scheduler Extender

实现一个读取Metrics-Server指标打分的简单Scheduler Extender。

功能如下:

  • 1)过滤阶段:仅调度到带有 Label filter.xy.com 的节点上
  • 2)打分阶段:读取Metrics-Server指标,CPU利用率最低的节点为优
阅读全文

Kubernetes二次开发——编写CRD及Operator

云原生 2025/2/10

kubebuilder中文文档

https://xuejipeng.github.io/kubebuilder-doc-cn/introduction.html

kubebuilder-operator-example

使用kubebuilder构建的XyDaemonset控制器,通过配置镜像、副本数、启动命令,在集群每个节点部署node,并实现根据副本数扩缩容

环境 Environment

  • kubebuilder: v4.4.0
  • kubernetes: v1.27.1
阅读全文

Ubuntu22.04搭建Kubernetes1.27集群

云原生 2025/2/8

Ubuntu22.04搭建Kubernetes1.27集群

准备工作

本文环境通过VirtualBox搭建Ubuntu集群,操作步骤见
Windows11下VirtualBox搭建Ubuntu

环境说明

1. 硬件环境

  • 虚拟机硬件规格:Master(2CPU 4G 40GB) Node(2CPU 2G 40GB)
  • 虚拟机数量: 3台
  • 虚拟机操作系统:ubuntu-22.04.5-live-server-amd64.iso
操作系统 主机名 IP
ubuntu-22.04.5 k8s-master 192.168.112.174
ubuntu-22.04.5 k8s-node1 192.168.112.175
ubuntu-22.04.5 k8s-node2 192.168.112.176
阅读全文

Windows11下VirtualBox搭建Ubuntu22.04

云原生 2025/2/8

Windows11下VirtualBox搭建Ubuntu22.04

1. 下载Ubuntu镜像

从清华大学开源软件镜像站下载Ubuntu22.04镜像:
https://mirrors.tuna.tsinghua.edu.cn/ubuntu-releases/

2. 安装Ubuntu

  • 设置节点名称:如ubuntu-master
  • 设置节点文件夹:默认C盘,可换到其他磁盘
  • 设置镜像文件:选择下载的镜像文件
阅读全文

RKE2搭建Kubernetes

云原生 2025/2/8

RKE2搭建Kubernetes

RKE2

RKE2,也称为RKE Government,是由Rancher开发的下一代Kubernetes发行版。
以下是RKE2的一些关键特点:
  • 安全性:RKE2强调了集群的安全性,提供了多种默认的安全配置,如加密的etcd数据存储、TLS证书管理等。
  • 合规性:为了满足严格的合规性要求,RKE2包含了许多有助于通过安全审计的功能和设置。
  • 简化部署:尽管注重安全性,RKE2仍然保持了相对简单的部署过程,并且易于管理和操作。
  • 高可用性支持:RKE2支持创建高可用性的Kubernetes集群,确保服务的稳定性和可靠性。
  • 轻量级:与传统的Kubernetes部署相比,RKE2更加轻量,减少了资源占用,使得在边缘计算场景中也能高效运行。
  • 兼容性:RKE2是一个完全兼容的Kubernetes发行版,这意味着它可以运行任何遵循Kubernetes标准的应用和服务。
  • 扩展性:用户可以根据需要自定义CoreDNS等组件的配置,以适应不同的网络需求和策略。
RKE2是基于RKE(Rancher Kubernetes Engine)的经验而构建的,旨在提供类似K3s的易用性同时保证企业级功能和稳定性。如果你正在寻找一种能够快速部署并易于维护的Kubernetes解决方案,同时又希望获得高级别的安全性和合规性保障,那么RKE2可能是一个很好的选择。

环境说明

1. 硬件环境

  • 虚拟机硬件规格:Master(2CPU 4G 40GB) Node(2CPU 2G 40GB)
  • 虚拟机数量: 3台
  • 虚拟机操作系统:ubuntu-22.04.5-live-server-amd64.iso
操作系统 主机名 IP
ubuntu-22.04.5 k8s-master 192.168.110.66
ubuntu-22.04.5 k8s-node1 192.168.110.67
ubuntu-22.04.5 k8s-node2 192.168.110.68

2. RKE2版本

阅读全文
1
avatar
Utada Wendic

Kuma Power