在 Amazon EKS 中使用静态内容预置节点的正确方法是什么?
What is the right way to provision nodes with static content in Amazon EKS?
我有一个在启动时加载 .conf 文件和一些附加文件的应用程序。现在我想在 Amazon EKS 中 运行 这个应用程序。将这些文件注入 Kubernetes 中的 pod 的最佳方法是什么?我尝试将它们复制到节点上的一个目录中,并通过主机路径将该目录安装到 pod 中。那行得通,但感觉不正确。 EKS 是否为此提供任何自动配置工具?
如果它是您应用程序的固定配置文件,您甚至可以将其刻录到 docker 映像 中,即将文件复制到您的 Dockerfile
如果它需要在部署期间进行配置(例如,它是特定于环境的),那么确实,正如上面@anmolagrawal 所提到的,ConfigMap 是正确的方法:
https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/
如果您可以修改您的应用以依赖 env vars 或 命令行参数,它会让您的生活变得更简单,您可以只在 Pod 规范中传递这些值,不需要 ConfigMap。
但您绝对不应该在 Kubernetes 节点上自行管理任何特定于应用程序的内容。
我有一个在启动时加载 .conf 文件和一些附加文件的应用程序。现在我想在 Amazon EKS 中 运行 这个应用程序。将这些文件注入 Kubernetes 中的 pod 的最佳方法是什么?我尝试将它们复制到节点上的一个目录中,并通过主机路径将该目录安装到 pod 中。那行得通,但感觉不正确。 EKS 是否为此提供任何自动配置工具?
如果它是您应用程序的固定配置文件,您甚至可以将其刻录到 docker 映像 中,即将文件复制到您的 Dockerfile
如果它需要在部署期间进行配置(例如,它是特定于环境的),那么确实,正如上面@anmolagrawal 所提到的,ConfigMap 是正确的方法:
https://kubernetes.io/docs/tasks/configure-pod-container/configure-pod-configmap/
如果您可以修改您的应用以依赖 env vars 或 命令行参数,它会让您的生活变得更简单,您可以只在 Pod 规范中传递这些值,不需要 ConfigMap。
但您绝对不应该在 Kubernetes 节点上自行管理任何特定于应用程序的内容。