使用Nginx,Kubernetes和Docker服务资产

时间:2018-10-08 05:07:20

标签: docker nginx kubernetes

需要提供将要在网站和一组移动应用程序中使用的资产,例如图像/视频/斑点。我正在考虑运行以下设置:

  1. 在docker容器中运行nginx以提供资产
  2. 运行带有自定义应用程序的侧面汽车集装箱,该应用程序将从远程位置提取这些资产并放入“本地存储”中。 Nginx从此本地存储获取资产。自定义应用将使本地存储保持最新状态。

要运行此设置,我需要确保运行这两个容器的容器具有本地存储,可从两个容器访问该存储。为此,我正在考虑将这些Pod限制为kubernetes集群中的一组节点,并在这些节点中设置本地持久卷。这有意义吗?

2 个答案:

答案 0 :(得分:0)

  

为此,我正在考虑将这些Pod限制为kubernetes集群中的一组节点,并在这些节点中提供本地持久卷。

当Sidecar容器可以随时从远程位置提取资产时,为什么要选择持久卷。使用EmptyDirVolumeSource创建一个卷并将其安装在Pod中的两个容器上。 Sidecar容器对卷具有“写”权限,而主容器具有“读”权限。

答案 1 :(得分:0)

从问题的描述来看,分布式文件系统可能正是您所需要的。

例如,Kubernetes(VolumesPersistentVolumes)支持 CephFS Glusterfs ,它们具有并发访问( 两者)和PVC扩展( Glusterfs ):

  

cephfs

     

cephfs卷允许将现有的CephFS卷挂载到您的Pod中。与emptyDir不同,emptyDir在Pod为   删除后,cephfs卷的内容将被保留,并且该卷   只是未安装。这意味着CephFS卷可以是   预先填充数据,并且可以在   豆荚。可以同时由多个编写者挂载CephFS。

     

重要提示:您必须在共享上运行自己的Ceph服务器   导出后才能使用它。

     

有关更多详细信息,请参见CephFS example

     

glusterfs

     

使用glusterfs卷可以将Glusterfs(开源网络文件系统)卷安装到Pod中。   与emptyDir不同,在删除Pod时将其清空,其内容   保留了glusterfs体积的一部分,而该体积仅仅是   已卸载。这意味着可以预先填充glusterfs体积   使用数据,并且可以在Pod之间“传递”数据。 GlusterFS   可以同时由多个作者安装。

     

重要提示:您必须运行自己的GlusterFS安装   在使用它之前。

     

有关更多详细信息,请参见GlusterFS示例。

有关这些主题的更多信息,请查看以下链接: