我当前的使用方案是 VMWare + Docker。
没有选择 ESXi 的原因有几个:
- 相比每年双十一都打折到很便宜价格的 VMWare ,ESXi 授权比较麻烦,需要按年注册获取并限制核心数,很难确定未来不会多买几台机器用。
- 不需要浪费精力去处理虚拟机软件兼容性之类的问题,不需要消耗精力在挑选硬件的问题上。
- 虚拟机迁移十分便捷。
Docker 作为 CD 交付、程序运行环境编排工具使用很棒,但是在资源隔离和环境定制上,VMWare 显然是更好的方案。
况且保持一定的服务隔离,可以让应用维护成本降低。
- 记录好每个“容器宿主机”的网卡地址,并分配固定IP。
- 虚拟机自动启动在每个系统平台下都有可用的方案。
- 如果有超高安全诉求,可以不对宿主机进行网络地址分配,仅将虚拟机“桥接”在网卡上,单独获取IP地址。
- 大单体应用,运行在单独的虚拟机里,硬盘资源限制可以先写大一些,但是不进行提前分配,避免迁移主机后,还要做系统扩容。
- 容器版本使用最新版本 -1 的稳定版本,优先升级笔记本的软件版本,确定没有太大问题后,再升级。
- 使用 compose 进行容器编排和管理,降低对编排工具的维护成本,感兴趣可以看这里的博客文章。
- 之前曾经使用 Nginx 作为服务网关,目前已经全部迁移至 Traefik ,感兴趣可以看这里的博客文章。
- CPU: 12Core
- Mem: 64GB
- Disk: 2T SSD
TODO: 将K8S折腾内容补充上来。