首页
  • NAS
  • k8s
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档

︶﹌⋛⋋维💋美⋌⋚﹌︶

喝☕️、看世界、修复那些无止境的问题
首页
  • NAS
  • k8s
  • 技术文档
  • GitHub技巧
  • Nodejs
  • 博客搭建
  • 学习
  • 面试
  • 心情杂货
  • 实用技巧
  • 友情链接
关于
收藏
  • 分类
  • 标签
  • 归档
  • NAS

    • 硬件资源
    • 系统选择
    • 网络拓扑
    • 系统架构
      • 浅谈ZFS
      • ZFS存储池管理
      • ZFS文件系统管理
      • ZFS快照管理
      • 云端备份
      • SMB共享配置
      • NFS共享配置
      • Bonjour服务广播
      • rockyLinux初始化
    • K8S

    • 运维
    • NAS
    ︶﹌⋛⋋维💋美⋌⋚﹌︶
    2025-03-24
    目录

    系统架构

    # 详细系统架构方案


    # 一、整体架构设计

    核心目标:构建高可用、高性能的家庭实验室环境,集成虚拟化、容器化、存储和网络功能,支持开发测试和家庭应用。
    架构特点:分层设计、硬件资源最大化利用、网络隔离、数据高可靠。


    # 二、硬件与系统分配方案

    设备 系统 角色 关键配置
    浪潮服务器 Proxmox VE (PVE) 虚拟化宿主机 + K8s Master - 128GB ECC内存分配:PVE系统16GB,3台Rocky Linux VM各32GB(共96GB)
    - ZFS存储池:12盘位RAID-Z2,分配128GB内存专用ARC缓存
    - PCIe直通:LSI2308直通卡、万兆网卡
    闲置台式机 Rocky Linux 9 K8s Worker + GPU计算节点 - 64GB内存全分配
    - GPU直通:N卡用于转码
    - M.2 NVMe系统盘 + SATA数据盘(EXT4/Btrfs)
    蜗牛星际 多系统切换 测试/备份节点 - 飞牛NAS:媒体轻存储 + Docker测试
    - Ubuntu:K8s边缘节点测试
    - 黑群晖:冷备验证(非生产)
    工控机 ImmortalWrt 主路由 + 网络服务 - 科学上网插件(PassWall)
    - AdGuard Home DNS过滤
    - tailscale VPN服务器
    交换机 - 核心网络枢纽 - VLAN划分:K8s集群(VLAN10)、家庭设备(VLAN20)、测试环境(VLAN30)
    - 万兆光口直连浪潮服务器

    # 三、Kubernetes集群设计

    集群架构:

    • Master节点:3台Rocky Linux VM(部署于浪潮PVE)
    • Worker节点:
      • 浪潮PVE虚拟机(4台,8核/32GB/100GB)
      • 闲置台式机(裸金属,6核/64GB/1TB)
    • 网络方案:
      • CNI插件:Calico(支持Network Policies)
      • 服务暴露:MetalLB(BGP模式) + Nginx Ingress
    • 存储方案:
      • 关键服务存储:
        • 数据库:Longhorn提供高可用块存储
        • 媒体库:直接NFS共享挂载

    # 四、存储架构

    存储类型 硬件 文件系统 用途 冗余策略
    主存储 浪潮12盘位 ZFS 虚拟机磁盘/K8s持久化卷/媒体库 RAID-Z1
    高速缓存 浪潮2×SSD ZFS L2ARC 读加速 Mirror镜像
    本地存储 台式机6×SATA Btrfs GPU计算临时数据 RAID0
    备份存储 蜗牛4×HDD EXT4 Rsync增量备份/ZFS快照归档 无(冷备)

    # 五、网络架构

    关键配置:

    1. VLAN规划:
      • VLAN10(K8s集群):192.168.10.0/24,禁止外部访问
      • VLAN20(家庭设备):192.168.20.0/24,限速策略
      • VLAN30(测试环境):192.168.30.0/24,完全隔离
    2. 高性能链路:
      • 浪潮服务器 ⇄ 交换机:万兆DAC直连线(10Gbps)
      • 台式机 ⇄ 交换机:2.5G铜缆(PCIe扩展卡)
    3. 无线网络:
      • 华硕AP绑定VLAN20,双频SSID分离(IoT设备限速5Mbps)

    # 六、核心服务部署

    服务 部署位置 功能说明
    Proxmox VE集群 浪潮服务器 管理所有虚拟机,HA迁移策略(当Worker超载时自动迁移VM)
    K8s基础服务 浪潮VM + 台式机 - Prometheus + Grafana监控
    - Harbor私有镜像仓库
    - Velero备份
    媒体中心 台式机(K8s Pod) Plex + Jellyfin,GPU硬解转码,存储挂载/mnt/media
    智能家居 蜗牛星际(Docker) Home Assistant + MQTT,VLAN30隔离
    开发环境 K8s集群 GitLab + Jenkins + Registry,PVC绑定Longhorn
    网络优化 工控机 AdGuard Home(拦截广告) + WireGuard(远程访问家庭Lab)

    # 七、高可用与灾备

    1. 虚拟化层:
      • PVE HA集群:浪潮本地ZFS存储 + 台式机作为备份节点
      • 虚拟机自动重启策略(故障检测周期10s)
    2. K8s层:
      • Master节点:3节点etcd集群
      • Worker故障转移:PodDisruptionBudget保障关键服务
    3. 数据保护:
      • 每日ZFS快照(保留7天)
      • Velero备份K8s状态至蜗牛星际
      • 关键数据加密同步至公有云(Rclone + Crypt)

    # 八、性能优化点

    1. ZFS调优:
      # 浪潮服务器/etc/modprobe.d/zfs.conf
      options zfs zfs_arc_max=68719476736  # 限制ARC为64GB
      options zfs zfs_prefetch_disable=0    # 启用预读
      
      1
      2
      3
    2. K8s网络:
      • 启用IPVS负载均衡模式
      • Pod网段(10.244.0.0/16)独立于物理网络
    3. GPU虚拟化:
      # K8s DevicePlugin配置(台式机)
      resources:
        limits:
          nvidia.com/gpu: '1' # 共享N卡独显
      
      1
      2
      3
      4

    # 九、安全设计

    • 网络层:
      • 防火墙规则:VLAN30禁止出站、VLAN10仅允许K8s节点通信
      • 无线网络:WPA3加密 + MAC白名单
    • 系统层:
      • Rocky Linux:SELinux enforcing模式
      • 所有节点:Fail2ban防暴力破解
    • K8s层:
      • Pod Security Policy(限制特权容器)
      • Network Policy(按命名空间隔离)

    # 架构验证与演进计划

    1. 阶段1:
      • 部署PVE + K8s基础集群
      • 验证ZFS存储性能
    2. 阶段2:
      • 接入家庭媒体服务(emby硬解)
      • 实现跨节点备份
    3. 阶段3(持续):
      • 扩展边缘计算
      • 瞎折腾

    通过此架构,提高硬件利用率,单节点故障0服务中断,提高媒体转码性能(对比纯CPU方案)。

    #NAS
    网络拓扑
    浅谈ZFS

    ← 网络拓扑 浅谈ZFS→

    最近更新
    01
    Longhorn安装
    06-22
    02
    k8s显卡插件
    06-21
    03
    rockyLinux初始化
    03-30
    更多文章>
    Theme by Vdoing | Copyright © 2024-2025 维美 | Blog
    闽ICP备2023022769号
    • 跟随系统
    • 浅色模式
    • 深色模式
    • 阅读模式