docker - 使用 Docker 和 Kubernetes 集群编排的 VM 上的容器
问题描述
我可以了解在裸机运行的 Docker 引擎和 Kubernetes Orchestration 上容器的基本管理和操作。我想知道虚拟机(VM)上容器的管理和编排如何?任何熟悉 VM 上容器工作的人,与裸机上的容器相比是否难以管理和编排?
- VM 上的容器资源,据我了解,VM 实例本身已经映射到特定的风格(例如 2vCPU 和 8G 内存),这是否意味着 VM 上的容器是否会受到定义的 VM 风格的限制?
- K8s 将如何管理 VM 上的容器,它将 VM 视为 VM 还是 POD?
感谢您分享您的意见和意见。请指教并赐教。
解决方案
如果您期待将VM用作Kubernetes集群的工作节点并在其上管理 POD(容器),这没有什么区别。Kubernetes 将 VM 视为节点并将其管理。
如果您希望在没有任何编排工具的情况下使用简单的docker在VM上运行独立容器,那么将很难管理
- 部署选项
- 缩放容器
- 资源管理
- 跨容器负载均衡流量
- 处理路由
- 监控容器和主机的健康状况
如果您仍然期待仅在 VM上运行容器顶部,那么AWS 和 GCP提供的托管服务很少。
- 云跑
- ECS
以上是托管容器编排服务,使用它您可以管理VM的容器顶部。
如果您希望自己简单地运行容器,您也可以使用简单的docker或docker-compose来完成。但一开始,您将面临跨多个容器路由流量的问题。
K8s 将如何管理 VM 上的容器,它将 VM 视为 VM 还是 POD?
它将虚拟机视为一个节点,并首先在虚拟机上运行必要的服务并对其进行管理。
推荐阅读
- firebase - 代码:'auth/argument-error',消息:'属性参数必须是非空对象。'
- swift - iOS UITableViewCell 和 UIImageView 在视图外显示图像
- go - 如何通过空接口
- discord.js - Discord.js 语音,播放器完成事件
- exchange-server - Microsoft Exchange 背压
- python-3.x - 单击时如何禁用Tkinter按钮
- android - 我可以通过遥控器控制我的 Android 应用程序吗?
- react-native - 使用 React Native Navigation 时如何向上移动状态
- rust - 如何在 Arc 中使用 TcpStream
- ios - 手势不再适用于 MHFacebookImageViewer