GitOps安装配置

领域知识 homelab PaaS简介 工具链 选择 Kubernetes发行版 Docker Docker在Desktop版包含了Kubernetes,给开发人员提供了开箱即用的体验。 OpenShift OpenShift 是红帽的产品,采用了 Kubernetes 作为 OpenShift 中的编排技术。 Rancher 一个开源的 Kubernetes 管理平台,能够实现多 Kubernetes 集群的统一纳管。 K3s Rancher推出的轻量级的 Kubernetes 发行版,专为在资源有限的环境中运行,每个服务器实例仅需 512MB RAM 以及 200MB 的磁盘空间。 Homelab一般会有资源有限的设备(例如树莓派),所以选择K3s GitOps Flux ArgoCD Gitea ArgoCD的前提是依赖一个Git仓库,在家庭场景中考虑隐私安全,需要先安装一个Git服务,然后创建仓库进行应用的配置管理。 个人感觉ArgoCD简单一些,不代表其他的工具不好或不适合。 k3s 安装工具 K3s的官方和开源社区都有提供简化的一键安装工具。两个都支持K3s的普通/高可用两种方式。 AutoK3s 用于简化 K3s 集群管理的轻量级工具,您可以使用 AutoK3s 在任何地方运行 K3s 服务。 k3sup is a light-weight utility to get from zero to KUBECONFIG with k3s on any local or remote VM. k3sup仅安装K3s本身,而AutoK3s可以在安装时指定自动部署清单(能同时部署GitOps),所以选择AutoK3s。 前提条件 树莓派 配置代码 AutoK3s 安装AutoK3s ...

February 21, 2025 · afterain

homelab PaaS简介

什么是PaaS PaaS是面向开发人员,围绕应用为中心的平台。提供了应用开发、部署、运行和管理所需的服务,而无需构建和维护。 有什么优势 包括:中间件(数据库/分布式缓存/消息队列等)、开发语言和工具(运行时/框架等)、运维(日志/监控等)、容器部署等等。 如果采用云原生,那么容器即服务CaaS的基础Kubernetes是较好的选择(能跨多云服务商、提供兼容性和一致性API) 解决用户什么问题 主要是实现降本增效和高可用性: 提高效率 缩短开发周期,减少应用部署时间。不必担心底层基础架构的维护和更新,例如使用 DevOps 和持续交付(CD)等敏捷实践。 降低成本 无需担心中间件服务的容量问题,服务按需使用,只需为实际用量付费。 高可用性 面对复杂系统,构建弹性强且高可用的应用。 homelab期望一个什么样的PaaS homelab主要是使用应用而不是开发应用,所以关注的主要软件的运行,需要有足够灵活性支持不同运行时/开发语言/框架/工具。 Kubernetes有两个核心理念:声明式编程和面向终态。软件的部署、运行和管理等工作主要就是编写声明式配置文件,然后结合GitOps,后续的工具链能直接满足一切皆代码原则。 根据最小依赖和一切皆代码原则,选择:Kubernetes + GitOps 工具链 Kubernetes Docker Docker在Desktop版包含了Kubernetes,给开发人员提供了开箱即用的体验。 OpenShift OpenShift 是红帽的产品,采用了 Kubernetes 作为 OpenShift 中的编排技术。 Rancher 一个开源的 Kubernetes 管理平台,能够实现多 Kubernetes 集群的统一纳管。 K3s Rancher推出的轻量级的 Kubernetes 发行版,专为在资源有限的环境中运行,每个服务器实例仅需 512MB RAM 以及 200MB 的磁盘空间。 GitOps 主要功能是监听Git Repositories变化和自动拉取变更,对比当前应用运行状态与期望运行状态的差异,执行自我修复和自我调整,达到期望的状态。 Flux ArgoCD 目标 根据最小依赖和一切皆代码原则,选择的方案:Kubernetes + GitOps

January 1, 2025 · afterain