挂载点:三种Jelastic容器的数据分享

  ---

  【编者的话】如何挂载主容器、数据容器、外部服务器三类容器中的数据?作者给出了简洁明了的图解介绍。

  在之前的文章中,我们开始挖掘 数据存储容器 的关键潜能,分享了 五种用容器存储数据的方式 ,之后又进一步深入,谈到了Jelastic 专用贮存容器 。

  以下我们将描述如何简捷地使用容器挂载数据。

  挂载点本来是用于管理服务器 数据存储 容器链接的。在内置的 配置管理器 的同名部分,你可以定义当前容器可以获取到的其他远程节点的目录。

  存储数据时,可以使用你的账户中或者外部NFS服务器中的任意容器。如果选择Jelastic容器 ,所有必要的配置(如安装NFS的相关软件、为指定文件设置输出参数)都可以自动实现,对人工操作零要求。

  注意:

  挂载点的功能是为Jelastic节点提供的;但如果使用基于Docker的容器操作,还可以使用 数据卷 来管理挂载,并且本地存储的选项也可用。这样,在容器的生命周期中,即使是存储在同一个容器中的数据也不会受到任何影响。

  基于 alpine 或 Ubuntu 14.04版本以下 操作系统发行版的Docker容器,由于NFS服务器功能不受支持,只能用作数据存储客户机(如仅可使用远程数据但不能分享自身数据)。

  将数据挂载到容器中,点击已选定容器或层的 Config 按钮,在打开的 配置管理器(Configuration Manager)选项卡中,切换到左边菜单的 挂载点 (Mount Points)部分。

物联网

  然后在顶部窗格中选择 挂载 (Mount)按钮,并选择下列类型之一:

  - 主容器

  - 数据容器

  提示:除此之外,在 导出 (Export)选项(左下菜单项),你可以管理文件夹和审查文件的列表,这些文件由当前服务器共享(即其他节点可以访问的数据)。

  下面,我们将深入探讨上述操作类型以及他们各自最适合的分享类型。

  挂载主容器

  主容器(Master Container)挂载适合于分享单层同类节点的内容。主节点(Master Node),也就是最初创建的容器,可以定义同一层中其他节点的数据。

  1.在“ 添加挂载点 ”窗体中,可以看到所需的 主容器 选项默认为开。

物联网

  这里需要指定:

  挂载点 :主容器所在文件夹路径,该路径同时被同层的所有节点共享(也被客户机自动识别为远程路径)

  只读 :限制在客户端节点对挂载数据的编辑权限(默认提供读写权限)

  剩下的数据可以被自动读取和替换,只要点 添加 (add)就行了。

  请注意,如果同时建立多个相同节点的环境(但没有 添加 ),某层的主容器是被随机选取的。因此,该节点的id未必是最小的,进行手动操作的时候一定要注意这一点。主节点标识可以在上述界面的NFS服务器中看到。

  2.相应的记录会显示在客户端节点的挂载点列表以及主容器的的 导出 (export)部分。

  现在,就可以开始利用链接文件夹作为该层的数据存储——举个例子,在里面创建一个新的文件/目录,然后去其他节点中查看是否可以获取的到。

  挂载数据容器

  最常见的数据挂载的例子是,客户端和服务器位于同一Jelastic平台内。

  提示:如果需要从运行在另外一个Jelastic上的容器挂载数据,必须预先将其设置为外部NFS服务器 。

  1.在添加挂载点的窗口中,切换 数据容器 选项卡,填写需要的字段。

物联网

  如下参数需被定义:

  挂载点:显示挂载内容的本地文件夹路径。

  注意:如果指定目录不存在,将会自动创建。同时,路径不能以 /proc, /dev, /sys, /run 开头,也不能与如下名重复/, /bin, /lib, /lib64, /lib32, /usr, /usr/bin,/usr/sbin, /usr/lib or /usr/lib64(这些名字可能与使用者提供的设置相关)

  - NFS服务器:账户中可扩展的节点列表,可以用作数据存储容器

  注意:不能从导出(exported)过的同一节点挂载数据,例如,创建交叉挂载。这条限制也同样适用于多个节点组成闭环的情况。