Zun - 容器服务

“Zun 是一个 OpenStack 容器服务。它的目标是在 OpenStack 上提供一个 OpenStack API,用于配置和管理容器化工作负载。” 有关 Zun 的更多详细信息,请参阅 OpenStack Zun 文档

准备和部署

默认情况下,Zun 及其依赖项已禁用。要启用 Zun,需要编辑 globals.yml 并设置以下变量

enable_zun: "yes"
enable_kuryr: "yes"
enable_etcd: "yes"
docker_configure_for_zun: "yes"
containerd_configure_for_zun: "yes"

Docker 重新配置需要在部署前进行重新引导。请确保您了解重启 Docker 的后果。请参阅 后续引导注意事项 以获取详细信息。如果是初始部署,则无需担心,因为这也是初始引导,并且没有正在运行的服务会受到影响。

$ kolla-ansible bootstrap-servers

最后部署

$ kolla-ansible deploy

验证

  1. 生成凭证文件

    $ kolla-ansible post-deploy
    
  2. 加载凭证文件

    $ . /etc/kolla/admin-openrc.sh
    
  3. 下载并创建一个 glance 容器镜像

    $ docker pull cirros
    $ docker save cirros | openstack image create cirros --public \
      --container-format docker --disk-format raw
    
  4. 创建 zun 容器

    $ zun create --name test --net network=demo-net cirros ping -c4 8.8.8.8
    

    注意

    Kuryr 不支持启用 DHCP 的网络,请禁用用于 zun 容器的子网中的 DHCP。

    $ openstack subnet set --no-dhcp <subnet>
    
  5. 验证容器是否创建

    $ zun list
    
    +--------------------------------------+------+---------------+---------+------------+------------+-------+
    | uuid                                 | name | image         | status  | task_state | addresses  | ports |
    +--------------------------------------+------+---------------+---------+------------+------------+-------+
    | 3719a73e-5f86-47e1-bc5f-f4074fc749f2 | test | cirros        | Created | None       | 172.17.0.3 | []    |
    +--------------------------------------+------+---------------+---------+------------+------------+-------+
    
  6. 启动容器

    $ zun start test
    Request to start container test has been accepted.
    
  7. 验证容器

    $ zun logs test
    PING 8.8.8.8 (8.8.8.8): 56 data bytes
    64 bytes from 8.8.8.8: seq=0 ttl=45 time=96.396 ms
    64 bytes from 8.8.8.8: seq=1 ttl=45 time=96.504 ms
    64 bytes from 8.8.8.8: seq=2 ttl=45 time=96.721 ms
    64 bytes from 8.8.8.8: seq=3 ttl=45 time=95.884 ms
    
    --- 8.8.8.8 ping statistics ---
    4 packets transmitted, 4 packets received, 0% packet loss
    round-trip min/avg/max = 95.884/96.376/96.721 ms
    

有关 zun 工作原理的更多信息,请参阅 zun, OpenStack 容器服务