• 全部
  • 经验案例
  • 典型配置
  • 技术公告
  • FAQ
  • 漏洞说明
  • 全部
  • 全部
  • 大数据引擎
  • 知了引擎
产品线
搜索
取消
案例类型
发布者
是否解决
是否官方
时间
搜索引擎
匹配模式
高级搜索

CloudOS2.0和3.0容器固化配置

2019-10-31 发表
  • 1关注
  • 1收藏 2186浏览
粉丝:34人 关注:5人

组网及说明

1、CloudOS2.0版本:1139H06

CloudOS2.0版本对应的CAS版本:0526H11

2、CloudOS3.0 版本:3106H01

CloudOS3.0版本对应的CAS版本:0530H11


配置步骤

CloudOS 2.0版本容器固化步骤

这里以修改cloudos-openstack镜像为例。

1、备份镜像

使用“docker ps | grep cloudos-openstack”查看关键字为cloudos-openstack容器。

1 查找对应容器

查找需要修改的镜像文件,使用tag命令对标签为“E113906”cloudos-openstack镜像进行备份,备份后的标签为E113906bak。输入“docker images | grep cloudos-openstack”查看到备份的镜像和原镜像大小相同。

2 找到目标镜像,备份镜像

2、去除原镜像标签

在备份完镜像后,使用“docker rmi cloudos-openstack:E1139H06” 去除原镜像的标签。命令查看验证原来镜像的标签已经被成功去除。

3 删除原镜像标签

3、制作新镜像

      查询对应的容器,根据容器id,使用“docker exec –it [容器id] bash”命令进入容器。将/root/scripts/目录下的pre-install.sh拷贝至本地/opt/openstack-transfer

4 进入对应容器,找到目标文件

5 将目标文件拷贝至本地

      退出容器,在/root/下新建文件夹,命名为guhua,并将刚才/opt/openstack-transfer目录下的pre-install.sh拷贝至/root/guhua/下,再进行修改。

6 将目标文件拷贝至/root/guhua/

      拷贝后,验证是否拷贝成功。

7 检验拷贝是否成功

      通过“vi pre-install.sh”修改文件,使用“/openstack-cinfig”进行关键字搜索。

8 使用vi命令关键字搜索

      搜索的第一次结果如图。

9 第一次搜索结果

      多次检索后,找到要修改的位置,将firewall_typeCGSR修改为GATEWAY,将lb_type  CGSR修改为SERVICE_CHIAN,将resource_modeCORE_GATEWAY修改为 NFV

10  pre-install.sh修改前

11  pre-install.sh修改

      创建dockerfile文件(即图中的dockerfileopenstackbuild.txt)来新建镜像。

12 创建dockerfile文件

      这里的dockerfile规定了:FROM是指明当前新镜像是基于哪个镜像的;USER表示用户为rootCOPY表示拷贝文件和目录到镜像中,这里是将当前目录下修改后的pre-install.sh拷贝至/root/scripts目录下。

13 dockerfile修改内容

      检查刚刚创建的dockerfile文件是否正确。

14 检验dockerfile文件

      通过“docker build”命令构建新的镜像,成功后显示“Successfully built [新镜像id]”

15 新建镜像

      查看是否新增镜像。

16 查看是否新增镜像

4、删除当前容器

      查找当前openstack容器,获得容器名称“openstackrc”,并进行删除。

17 查找当前容器

检查容器是否已经删除成功,可以看到,已经没有“openstackrc”

18 检查容器删除是否成功

5、使用新镜像创建容器

      重新创建容器前需要先检查openstack-rc.yaml文件中的image字段是否与上一步build出来的tag一致。

19 找到openstack-rc.yaml文件

从图中可以看到,openstack-rc.yaml文件中的image字段与上一步build出来的tag一致,镜像信息为cloudos-openstack:E1139H06

20 检验文件中镜像的tag

通过“/opt/bin/kubectl --server=127.0.0.1:8888 create –f /opt/bin/conFile/openstack-rc.yaml”创建新容器。

21 创建新容器

      查看是否拉起openstackdocker,以及其运行状态是否为正常的Running状态。

22 看容器是否拉起,正常运行

6、查看容器固化操作是否成功

通过查找对应容器id进入cloudos-openstack容器,检验对应的参数是否固化。

23 查找并进入目标容器

      找到/root/scripts/下的pre-install.sh找到刚刚修改的位置,可以看到,参数和修改时一样,即固化成功。

24 找到目标文件

25 查看是否固化成功

 

CloudOS 3.0版本容器固化步骤

这里以修改cloudos-openstack-sahara镜像为例。

1、修改镜像文件

      查找要修改的容器镜像,这里选择cloudos-openstack-sahara,进入该容器。

26 找到目标容器并进入

      找到该容器的/root/scripts/目录下的health-check.sh,将该文件拷贝至本地/opt/openstack-transfer/sahara/目录下。

27 找到目标文件,拷贝至本地

      对该文件进行修改,如图中新增一行注释,写上“#hello”

28 修改目标文件

      检验修改是否成功。

29 检验修改是否成功

      退出容器,查找到/opt/openstack-transfer/sahara/目录下的health-check.sh,可以看到是刚才修改的文件。

30 本地目录下检验修改的文件

2、利用固化工具替换镜像

将修改后的health-check.sh拷贝到固化工具(固化工具事先拷贝至/root/下,并进行解压)解压出来的目录/root/update_image/patchs/replace_files/files/目标文件在镜像中的目录,在该示例中为/root/update_image/patchs/replace_files/files/root/scripts/

31 将目标文件拷贝至特定目录

      查找要替换文件的镜像名称和镜像的tag。如图中本地镜像cloudos-openstack-saharatagE3107-V300R001B01D030SP01-RC4。然后进入/root/update_image目录,使用 “sh main.sh [镜像名称]:[镜像tag] patchs/replace_files/”命令执行替换镜像文件脚本。

32 执行替换镜像脚本

      执行完成后会进行二次确认,输入“Y”则开始执行脚本。

33 替换镜像过程

      最终显示镜像替换完成。

34 替换镜像成功

3、查看容器固化操作是否成功

      使用“pod | grep [镜像名称]”命令查找由该镜像启动的pod。图中所示“59s”表示该容器是59秒前创建的。

35 查看新建镜像

进入容器中,找到/root/scripts/目录下目标文件health-check.sh,查看文件是否替换成功。使用cat命令查看,如图,可以看到之前增加的注释“#hello”,说明容器固化操作成功。

36 查看容器固化是否成功

 





配置关键点

1、CloudOS2.0版本中使用“docker rmi cloudos-openstack:E1139H06”命令并没有风险,该命令只是去除原镜像的标签,并没有将原镜像删除,因此只要记住原镜像的名称和uuid即可。

该案例对您是否有帮助:

您的评价:1

若您有关于案例的建议,请反馈:

0 个评论

该案例暂时没有网友评论

编辑评论

举报

×

侵犯我的权益 >
对根叔知了社区有害的内容 >
辱骂、歧视、挑衅等(不友善)

侵犯我的权益

×

泄露了我的隐私 >
侵犯了我企业的权益 >
抄袭了我的内容 >
诽谤我 >
辱骂、歧视、挑衅等(不友善)
骚扰我

泄露了我的隐私

×

您好,当您发现根叔知了上有泄漏您隐私的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您认为哪些内容泄露了您的隐私?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)

侵犯了我企业的权益

×

您好,当您发现根叔知了上有关于您企业的造谣与诽谤、商业侵权等内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到 zhiliao@h3c.com 邮箱,我们会在审核后尽快给您答复。
  • 1. 您举报的内容是什么?(请在邮件中列出您举报的内容和链接地址)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
  • 3. 是哪家企业?(营业执照,单位登记证明等证件)
  • 4. 您与该企业的关系是?(您是企业法人或被授权人,需提供企业委托授权书)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

抄袭了我的内容

×

原文链接或出处

诽谤我

×

您好,当您发现根叔知了上有诽谤您的内容时,您可以向根叔知了进行举报。 请您把以下内容通过邮件发送到zhiliao@h3c.com 邮箱,我们会尽快处理。
  • 1. 您举报的内容以及侵犯了您什么权益?(请在邮件中列出您举报的内容、链接地址,并给出简短的说明)
  • 2. 您是谁?(身份证明材料,可以是身份证或护照等证件)
我们认为知名企业应该坦然接受公众讨论,对于答案中不准确的部分,我们欢迎您以正式或非正式身份在根叔知了上进行澄清。

对根叔知了社区有害的内容

×

垃圾广告信息
色情、暴力、血腥等违反法律法规的内容
政治敏感
不规范转载 >
辱骂、歧视、挑衅等(不友善)
骚扰我
诱导投票

不规范转载

×

举报说明

提出建议

    +

亲~登录后才可以操作哦!

确定

亲~检测到您登陆的账号未在http://hclhub.h3c.com进行注册

注册后可访问此模块

跳转hclhub

你的邮箱还未认证,请认证邮箱或绑定手机后进行当前操作