1. 私有云实战之基础环境搭建

文章目录

  • 服务器搭建准备
  • 基础环境介绍
  • 展示效果
    • iKuai展示效果
    • iStroreOS展示效果
    • ESXI展示效果
    • 群辉展示效果
    • JumpServer展示
    • kubesphere展示
  • 环境搭建
    • ESXI系统安装及基础网络环境配置
      • ESXI系统安装
      • 基础网络环境配置
        • 配置虚拟交换机
        • 配置端口组
      • ESXI中虚拟机安装
    • ikuai安装及配置
      • ikuai安装
      • 拨号、DDNS、端口映射
    • iStroreOS安装及配置
      • iStroreOS安装
      • iStroreOS配置旁路由
      • 安装openclash
    • 群辉安装及配置
      • 群辉nas配置
    • jumpserver安装配置
      • 单机部署
      • k8s中helm部署
      • jumpserver安装到容器中应用发布问题

服务器搭建准备

小编准备了一台塔式服务器,配置如下:

处理器 内存 硬盘 显卡 网卡
E5-2696V2*2
2.5G主频 24核48线程
256G 3TB*6 集成显卡 千兆网卡*2

若不运行大模型无需显卡,显卡比较贵;购买服务器可以叫卖家安装好ESXI系统并制作好磁盘整列

基础环境介绍

系统 ip/内网域名 主要用途
主路由 iKuai 192.168.31.2 1、DDNS
2、端口映射
3、流量监控
nas 群辉 192.168.31.3 1、nfs
2、云盘
3、DNS
4、磁盘整列
虚拟化系统 ESXI 192.168.31.4 类似虚拟机
旁路由 iStroreOS 192.168.31.5 全设备科学上网
堡垒机 CentOs7.5 192.168.31.8 管理服务器、数据库、web等资产
kubesphere CentOs7.5 192.168.31.11 master, etcd
CentOs7.5 192.168.31.12 master, etcd
CentOs7.5 192.168.31.13 master, etcd
CentOs7.5 192.168.31.14 worker
CentOs7.5 192.168.31.15 worker
CentOs7.5 192.168.31.16 worker

展示效果

iKuai展示效果

1. 私有云实战之基础环境搭建_第1张图片

iStroreOS展示效果

1. 私有云实战之基础环境搭建_第2张图片

ESXI展示效果

1. 私有云实战之基础环境搭建_第3张图片

群辉展示效果


JumpServer展示

1. 私有云实战之基础环境搭建_第4张图片

kubesphere展示

1. 私有云实战之基础环境搭建_第5张图片

环境搭建

ESXI系统安装及基础网络环境配置

ESXI系统安装

建议在购买塔式服务器器让商家安装ESXI系统,手动安装参考 vSphere ESXI 7.0部署

基础网络环境配置

  1. 配置直通网卡,后续用于双软路由系统

1. 私有云实战之基础环境搭建_第6张图片

  1. ESXI安装好后配置基础网络环境,登录ESXI后台配置网络:

1. 私有云实战之基础环境搭建_第7张图片


端口组 虚拟交换机 物理网卡 VMkernel网卡 TCP/IP堆栈 防火墙规则
定义 一组用于连接虚拟机和外部网络的端口 用于连接虚拟机和物理网络的虚拟交换机 用于连接物理网络和ESXi主机的物理网卡 用于连接ESXi主机和虚拟网络的虚拟网卡 用于处理网络通信的协议栈 用于控制网络流量的规则
功能 提供虚拟机的网络连接和流量控制 提供虚拟机和物理网络之间的通信和流量控制 提供ESXi主机和物理网络之间的通信和流量控制 提供ESXi主机和虚拟机之间的通信和流量控制 处理网络通信和数据传输 控制网络流量和保护网络安全
配置方式 创建并配置端口组,并将其分配给虚拟机 创建并配置虚拟交换机,并将其连接到物理网卡 将物理网卡连接到交换机,并配置网络设置 创建并配置VMkernel网卡,并将其连接到物理网卡或虚拟交换机 配置网络协议和参数,如IP地址、子网掩码、网关等 创建并配置防火墙规则,以控制网络流量和保护网络安全
使用场景 用于虚拟机的网络通信和流量控制 用于虚拟机和物理网络之间的通信和流量控制 用于ESXi主机和物理网络之间的通信和流量控制 用于ESXi主机和虚拟机之间的通信和流量控制 用于处理网络通信和数据传输 用于控制网络流量和保护网络安全
相关技术 vSphere Distributed Switch、vSphere Standard Switch vSphere Distributed Switch、vSphere Standard Switch vSphere Distributed Switch、vSphere Standard Switch TCP/IP、VLAN、QoS等 防火墙、安全策略、VPN等
相关概念 端口组、虚拟端口、物理网卡、虚拟交换机 虚拟端口、物理网卡、虚拟交换机 物理网卡、MAC地址、VLAN VMkernel端口、物理网卡、虚拟交换机 IP地址、子网掩码、网关、路由 规则、策略、应用程序过滤、网络地址转换等

配置虚拟交换机

image.png
添加上行链路,及将物理网卡和虚拟交换机绑定
1. 私有云实战之基础环境搭建_第8张图片

配置端口组

1. 私有云实战之基础环境搭建_第9张图片
跟交换机绑定,端口组下虚拟机可以通过虚拟交换机【绑定的物理网卡】上网
1. 私有云实战之基础环境搭建_第10张图片

ESXI中虚拟机安装

1. 私有云实战之基础环境搭建_第11张图片
接下来安装步骤跟VMware Workstation Pro中操作基本一样

ikuai安装及配置

ikuai安装

根据官网自行安装:真实机-爱快 iKuai-商业场景网络解决方案提供商
安装完成后配置后台地址、LAN和WAN
1. 私有云实战之基础环境搭建_第12张图片
其中wan1为直通网卡(网卡),用于连接光猫,进行ppoe拨号上网;lan1为网卡用于局域网上网
下面是WAN和LAN的介绍,以表格形式输出:

对比 WAN(广域网) LAN(局域网)
定义 跨越较大地理范围,连接多个局域网或单个计算机的网络 限于较小的地理范围,连接同一地点的多个计算机的网络
范围 跨越城市、地区、国家甚至跨越全球 局限于同一建筑物、校园、企业或家庭
传输速率 通常较慢,传输速率受到带宽、距离和网络拥堵等因素的影响 通常较快,传输速率受到网络设备和电缆质量等因素的影响
连接方式 使用公共或专用的传输媒介,如电话线、光缆、卫星等 使用局域网技术,如以太网、Wi-Fi、蓝牙等
拓扑结构 点对点、星型、环型等 总线型、星型、树型等
安全性 面临更多的安全威胁,需要采取更多的安全措施 相对较为安全,可以采取较简单的安全措施
应用场景 用于连接不同地点的计算机或网络,如互联网、VPN等 用于连接同一地点的计算机或网络,如家庭网络、企业内部网络等

拨号、DDNS、端口映射

系统概况-爱快 iKuai-商业场景网络解决方案提供商

  1. 配置WAN进行ppoe拨号上网

1. 私有云实战之基础环境搭建_第13张图片
1. 私有云实战之基础环境搭建_第14张图片

  1. DDNS配置

由于家庭ppoe拨号公网ip会改变,需配置DDNS绑定域名,域名建议购买国外域名(不需备案)并将域名迁移到Just a moment…上进行管理
1. 私有云实战之基础环境搭建_第15张图片
1. 私有云实战之基础环境搭建_第16张图片

  1. 配置端口映射

当有需要暴露的服务,可以配置端口映射,通过域名+端口就能访问暴露到公网的服务
1. 私有云实战之基础环境搭建_第17张图片

iStroreOS安装及配置

iStroreOS安装

  • 下载固件:下载地址

1. 私有云实战之基础环境搭建_第18张图片
虚拟机中添加现有硬盘,启动配置静态ip

vi /etc/config/network

iStroreOS配置旁路由

1. 私有云实战之基础环境搭建_第19张图片
1. 私有云实战之基础环境搭建_第20张图片

安装openclash

可参考旁路由配置OpenClash
openclash下载地址:https://github.com/vernesong/OpenClash/releases
其他梯子插件:https://github.com/AUK9527/Are-u-ok/tree/main/x86
下载好后上传手动安装:
1. 私有云实战之基础环境搭建_第21张图片
命令行安装参考:https://fugary.com/?p=419

# 升级核心,不升级可能会提示 pkg_hash_check_unresolved: cannot find dependency kernel
opkg install /tmp/upload/kernel_5.15.86-1-9f9e11a5e946333b83ba37f6864e5c49_x86_64.ipk
# 升级
opkg update
# 安装依赖
opkg install coreutils-nohup bash dnsmasq-full curl ca-certificates ipset ip-full libcap libcap-bin ruby ruby-yaml kmod-tun kmod-inet-diag unzip kmod-nft-tproxy luci-compat luci luci-base
# 安装OpenClash
opkg install /tmp/upload/luci-app-openclash_0.45.78-beta_all.ipk


#上传IPK文件至您路由器的 /tmp 目录下

#假设安装包名字为
luci-app-openclash_0.33.7-beta_all.ipk

#执行安装命令
opkg install /tmp/luci-app-openclash_0.33.7-beta_all.ipk

#执行卸载命令
#插件在卸载后会自动备份配置文件到 /tmp 目录下,除非路由器重启,在下次安装时将还原您的配置文件
opkg remove luci-app-openclash

安装完成后刷新LUCI页面,在菜单栏 -> 服务 -> OpenClash 进入插件页面

要卸载 OpenWrt 上安装的插件,您可以通过以下步骤进行操作:

  1. 使用 SSH 或串口等工具登录到 OpenWrt 路由器。
  2. 在命令行界面中输入 opkg list-installed 命令,列出已经安装的所有软件包。
  3. 找到您要卸载的插件的名称,并记录下来。
  4. 在命令行界面中输入 opkg remove 插件名称 命令,将插件卸载掉。

例如,如果您想卸载名为 “luci-app-ssr-plus” 的插件,可以使用以下命令:

opkg remove luci-app-ssr-plus

卸载完成后,您可以使用 opkg list-installed 命令确认插件是否已被成功卸载。

群辉安装及配置

安装参考:ESXi7.0 安装(黑)群晖 DSM7.1(arpl引导)
官网教程:https://github.com/fbelavenuto/arpl/blob/main/README-Zh.md
洗白参考:对采用aprl引导的黑群辉进行洗白

群辉nas配置

  1. 新增共享文件夹

1. 私有云实战之基础环境搭建_第22张图片

  1. 编辑配置nfs规则

1. 私有云实战之基础环境搭建_第23张图片
1. 私有云实战之基础环境搭建_第24张图片

jumpserver安装配置

官网安装参考:离线安装 - JumpServer 文档

单机部署

离线下载:开源社区 - FIT2CLOUD 飞致云

# 启动
./jmsctl.sh start

# 停止
./jmsctl.sh down

# 卸载
./jmsctl.sh uninstall

# 帮助
./jmsctl.sh -h

该方式安装简单,自己玩建议使用该方式
官网单机部署提供的docker-compose方式部署,若要通过该方式部署可以考虑部署到kubesphere的master节点上,这样方便管理kubesphere内部资源
若是怕对ks集群master有影响,可在ks集群加入一个节点,然后停止调度,驱逐pod,然后部署

k8s中helm部署

在线安装 - JumpServer 文档

  1. 在ks后台创建企业空间

1. 私有云实战之基础环境搭建_第25张图片

  1. 在企业空间中添加应用仓库

1. 私有云实战之基础环境搭建_第26张图片
1. 私有云实战之基础环境搭建_第27张图片

  1. 创建项目

1. 私有云实战之基础环境搭建_第28张图片

  1. 进入项目创建应用

1. 私有云实战之基础环境搭建_第29张图片 1. 私有云实战之基础环境搭建_第30张图片

  1. 查看安装配置

总览

参数 描述 默认值
nameOveride name override nil
fullNameOveride full name override nil
global.imageRegistry 仓库地址 docker.io
global.imagePullSecrets 私有仓库认证凭据 nil
global.storageClass 存储 sc nil
ingress.enabled 开启 ingress true
core.enabled 开启 core true
koko.enabled 开启 koko true
lion.enabled 开启 lion true
magnus.enabled 开启 magnus true
chen.enabled 开启 chen true
kael.enabled 开启 kael true
web.enabled 开启 web true
xpack.enable 开启 xpack false

必填

参数 描述 默认值
global.storageClass 持久化存储 nil
core.config.secretKey 加密秘钥 生产环境中请修改为随机字符串,请勿外泄 nil
core.config.bootstrapToken 预共享 Token 组件注册需要使用 nil
externalDatabase.engine 数据库引擎 mysql
externalDatabase.host 数据库 IP 地址 nil
externalDatabase.port 数据库端口 3306
externalDatabase.user 数据库用户名 jumpserver
externalDatabase.password 数据库密码 nil
externalDatabase.database 数据库名称 nil
externalRedis.host redisIP 地址 nil
externalRedis.port redis 端口 6379
externalRedis.password redis 密码 nil

其他

参数 描述 默认值
log.level 日志等级 INFO
replicaCount 副本数量 1
persistence 持久化存储相关设置 nil
  1. 修改docker进行仓库

values.yaml进行地址修改使用如下地址:

镜像仓库 地址
阿里云 https://registry.cn-hangzhou.aliyuncs.com
如已有账号=>[系统分配前缀].mirror.aliyuncs.com
腾讯云 https://mirror.ccs.tencentyun.com
华为云 https://[系统分配前缀].mirror.swr.myhuaweicloud.com
docker中国 https://registry.docker-cn.com
网易 http://hub-mirror.c.163.com
daocloud http://f1361db2.m.daocloud.io
Docker Toolbox 镜像源站 https://developer.aliyun.com/…
Docker CE 镜像源站 https://developer.aliyun.com/…

修改全局配置即可
1. 私有云实战之基础环境搭建_第31张图片


nameOverride: ""
fullnameOverride: ""

global:
	# 修改为阿里镜像仓库
  imageRegistry: "xxx.mirror.aliyuncs.com"
  imagePullSecrets: []
  storageClass: ""

externalDatabase:
  engine: mysql
  host: localhost
  port: 3306
  user: root
  password: ""
  database: jumpserver

externalRedis:
  host: localhost
  port: 6379
  password: ""

serviceAccount:
  create: false
  name:

ingress:
  enabled: true
  annotations:
    # kubernetes.io/tls-acme: "true"
    kubernetes.io/ingress.class: nginx
    nginx.ingress.kubernetes.io/proxy-body-size: "4096m"
    nginx.ingress.kubernetes.io/server-snippets: |
      proxy_set_header Upgrade "websocket";
      proxy_set_header Connection "Upgrade";
      proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

  hosts:
    - "test.jumpserver.org"
  tls: []

core:
  enabled: true

  labels:
    app.jumpserver.org/name: jms-core

  config:
    ## 生成随机秘钥 `cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 50`
    secretKey: "Km4MII9FifRJQKII46vzx3DyyiYS2uMI2jIF7lUPQmFp8oKzzK"
    ## 生成随机token `cat /dev/urandom | tr -dc A-Za-z0-9 | head -c 24`
    bootstrapToken: "wTYAmOf1En6B0byOOmwa9Nmm"
    ## Enabled it for debug
    debug: false
    log:
      level: ERROR

jumpserver安装到容器中应用发布问题

应用发布依赖windows server2019系统,若ws2019裸机部署ks集群中jumpserver core pod和ws2019会出现网络互通问题,此时需要将ws2019也部署到ks集群中。docker部署ws参考:https://www.jianshu.com/p/4d02f7f84cf2

你可能感兴趣的:(私有云搭建实战,网络)