上一次向 v 友们询问了关于云服务的选择,我们小组还是没有确定买什么,我们决定先利用本地机器搭建一个 k8s 集群进行测试,但是本地机器都是 windows 机器,我们通过 tailscale 能够让几台电脑互相通信,但是网上并没有找到 windows 搭建集群的教程,有知道的 v 友可以帮忙解答一下吗,不胜感激!

在测试阶段给自己提升难度,挺好的。

VM + Ubuntu Server

你这测不出来, k8s 底层依赖的容器化技术是用 linux 的 cgropu 和 namespace 实现的,window 没有类似的机制

哪些抢占式的服务器便宜的很 随便开几台测下就是

Rancher ,但我好像记得 control plane 貌似需要架在 Linux 上面。但整体 windows 比较折腾

感谢大家,我大概知道了大概是不可行的吧,不过可能搭个 es 和 redis 集群还是可行的?

只测试功能的话,单机都可以啊,多开几台 linux 虚拟机。如果要多机集群,那每个 windows 上都开 linux 虚拟机,虚拟机网卡选择桥接呗。搭建方法就直接参考网上的 k8s 部署即可啊。多说一句,你们开发干嘛一直折腾运维的活啊

虚拟机多开几个 linux 就行了,windows 肯定不能直接部署

因为我们的非功能需求对高并发有比较高的要求,但是我们不太清楚多少的配置能抗的住,一台电脑开虚拟机的话可能只是练习搭建 k8s ,我们比较想知道实现一个万级 QPS 的机器或者集群的配置大概是多少

这个时候,你需要 vagrant 。配置起来还算方便

单机可以用 rancher k3s ,或者多买内存挂多个 vm 开也可以模拟。

  1. 建议如果 Windows 性能够的话使用 VM ,或者直接 VM2. tailscale 不一定能满足网络需求,redis 、es 集群,这种集群要求实时性很高的,会影响测试结果的。3. 可以通过单点性能推算集群性能。

把电脑格式化成 Linux🐶

Docker Desktop Windows 自带 K8s 了呀,直接启动它的这个插件然后 cmd 敲 kubectl 一把梭

你需要用 Windows Server ,当然 Windows 10 也不是不能用。K8S 是支持 Windows 节点的。只不过不建议在测试的时候就给自己找麻烦。你可以找几个云厂商的销售,让他们给你点免费额度,你去开几个云服务试试。比如 AWS 就有托管的 EKS 。但是这东西,如果你们都没什么经验的话,那么搭建起来是最容易的一步。后面出问题的 debug ,性能调优,伸缩扩容,部署等等,每一步都是坑。当然等你把他们都解决了,技术水平能上一大步不说,架构的容错和负载能力也能提升一大截。

最好先分析一下业务,常态化并发还是瞬时并发、什么技术架构、CPU 密集型还是 I/O 密集型、业务瓶颈在什么位置、是否是真的需要并发,可不可以做假并发。才万级 QPS 搭个锤子的 K8s ,业务效益能不能覆盖增加的 K8s 维护成本?并且消费级的 PC 和服务器完全是两码事,你本地测出来的结果参考意义也不大。

我单机 windows 玩 k8s 就用的这套方案 github.com/rootsongjc/kubernetes-vagrant-centos-cluster ,建议你试试。

RunHCS 了解一下。

Windows 是完全支持 k8s 集群的,但你可能需要 Windows Server 。直接参考 k8s 文档就行: kubernetes.io/docs/concepts/windows/user-guide/

你各种云厂商搞一个机器一个月也就几百,没必要给自己添堵吧

可以,我用 virtualbox+ vagrant 先虚拟化了几个节点,在上面搭 k8s

可以啊,我就 Win 搭建的测试线

可能因为还是学生党的原因,有的名词都没有什么概念,不过还是很感谢大家的帮助!

用 windows 搭建也可以,开虚拟机,你想用多台 windows 电脑测试的话,就把虚拟机设置为桥接网卡,然后多台 win 电脑开多个 Debian 虚拟机,在一个子网下通过虚拟机分配的 IP 通信

k8s 支持 windows但是 windows 上只能跑 win 容器啊,除非你用虚拟机