Kolla-Ansible deploy部署报错 KeyError: \\‘KernelMemory

2023-05-16

问题复现

执行部署命令,在 TASK [common : Check common containers] 阶段报错

 kolla-ansible -i multinode deploy

 报错信息如下

The full traceback is:
  File "/tmp/ansible_kolla_docker_payload_d27r44yb/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py", line 381, in main
  File "/tmp/ansible_kolla_docker_payload_d27r44yb/ansible_kolla_docker_payload.zip/ansible/module_utils/kolla_docker_worker.py", line 114, in compare_container
    self.check_container_differs() or
  File "/tmp/ansible_kolla_docker_payload_d27r44yb/ansible_kolla_docker_payload.zip/ansible/module_utils/kolla_docker_worker.py", line 135, in check_container_differs
    self.compare_dimensions(container_info) or
  File "/tmp/ansible_kolla_docker_payload_d27r44yb/ansible_kolla_docker_payload.zip/ansible/module_utils/kolla_docker_worker.py", line 330, in compare_dimensions
    elif current_dimensions[key2]:
failed: [control01] (item={'key': 'cron', 'value': {'container_name': 'cron', 'group': 'cron', 'enabled': True, 'image': 'quay.nju.edu.cn/openstack.kolla/ubuntu-source-cron:yoga', 'environment': {'DUMMY_ENVIRONMENT': 'kolla_useless_env', 'KOLLA_LOGROTATE_SCHEDULE': 'daily'}, 'volumes': ['/etc/kolla/cron/:/var/lib/kolla/config_files/:ro', '/etc/localtime:/etc/localtime:ro', '/etc/timezone:/etc/timezone:ro', 'kolla_logs:/var/log/kolla/'], 'dimensions': {}}}) => {
    "ansible_loop_var": "item",
    "changed": true,
    "invocation": {
        "module_args": {
            "action": "compare_container",
            "api_version": "auto",
            "auth_email": null,
            "auth_password": null,
            "auth_registry": "quay.nju.edu.cn",
            "auth_username": null,
            "cap_add": [],
            "cgroupns_mode": null,
            "client_timeout": 120,
            "command": null,
            "detach": true,
            "dimensions": {},
            "environment": {
                "DUMMY_ENVIRONMENT": "kolla_useless_env",
                "KOLLA_CONFIG_STRATEGY": "COPY_ALWAYS",
                "KOLLA_LOGROTATE_SCHEDULE": "daily"
            },
            "graceful_timeout": 10,
            "healthcheck": null,
            "ignore_missing": false,
            "image": "quay.nju.edu.cn/openstack.kolla/ubuntu-source-cron:yoga",
            "labels": {},
            "name": "cron",
            "privileged": false,
            "remove_on_exit": true,
            "restart_policy": "unless-stopped",
            "restart_retries": 10,
            "security_opt": [],
            "state": "running",
            "tls_cacert": null,
            "tls_cert": null,
            "tls_key": null,
            "tls_verify": false,
            "tmpfs": null,
            "tty": false,
            "volumes": [
                "/etc/kolla/cron/:/var/lib/kolla/config_files/:ro",
                "/etc/localtime:/etc/localtime:ro",
                "/etc/timezone:/etc/timezone:ro",
                "kolla_logs:/var/log/kolla/"
            ],
            "volumes_from": null
        }
    },
    "item": {
        "key": "cron",
        "value": {
            "container_name": "cron",
            "dimensions": {},
            "enabled": true,
            "environment": {
                "DUMMY_ENVIRONMENT": "kolla_useless_env",
                "KOLLA_LOGROTATE_SCHEDULE": "daily"
            },
            "group": "cron",
            "image": "quay.nju.edu.cn/openstack.kolla/ubuntu-source-cron:yoga",
            "volumes": [
                "/etc/kolla/cron/:/var/lib/kolla/config_files/:ro",
                "/etc/localtime:/etc/localtime:ro",
                "/etc/timezone:/etc/timezone:ro",
                "kolla_logs:/var/log/kolla/"
            ]
        }
    },
    "msg": "'Traceback (most recent call last):\\n  File \"/tmp/ansible_kolla_docker_payload_d27r44yb/ansible_kolla_docker_payload.zip/ansible/modules/kolla_docker.py\", line 381, in main\\n  File \"/tmp/ansible_kolla_docker_payload_d27r44yb/ansible_kolla_docker_payload.zip/ansible/module_utils/kolla_docker_worker.py\", line 114, in compare_container\\n    self.check_container_differs() or\\n  File \"/tmp/ansible_kolla_docker_payload_d27r44yb/ansible_kolla_docker_payload.zip/ansible/module_utils/kolla_docker_worker.py\", line 135, in check_container_differs\\n    self.compare_dimensions(container_info) or\\n  File \"/tmp/ansible_kolla_docker_payload_d27r44yb/ansible_kolla_docker_payload.zip/ansible/module_utils/kolla_docker_worker.py\", line 330, in compare_dimensions\\n    elif current_dimensions[key2]:\\nKeyError: \\'KernelMemory\\'\\n'"
}

PLAY RECAP ***************************************************************************************************************************************************************************************************************************
control01                  : ok=17   changed=0    unreachable=0    failed=1    skipped=1    rescued=0    ignored=0   
localhost                  : ok=4    changed=0    unreachable=0    failed=0    skipped=0    rescued=0    ignored=0   

Command failed ansible-playbook -e @/etc/kolla/globals.yml  -e @/etc/kolla/passwords.yml -e CONFIG_DIR=/etc/kolla  -e kolla_action=deploy /path/to/venv/share/kolla-ansible/ansible/site.yml  --verbose --verbose --verbose --verbose --inventory multinode

问题分析

查看docker版本:docker version

(venv) root@ubuntu:~# docker version
Client: Docker Engine - Community
 Version:           23.0.0
 API version:       1.42
 Go version:        go1.19.5
 Git commit:        e92dd87
 Built:             Wed Feb  1 17:47:51 2023
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          23.0.0
  API version:      1.42 (minimum version 1.12)
  Go version:       go1.19.5
  Git commit:       d7573ab
  Built:            Wed Feb  1 17:47:51 2023
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.16
  GitCommit:        31aa4358a36870b21a992d3ad2bef29e1d693bec
 runc:
  Version:          1.1.4
  GitCommit:        v1.1.4-0-g5fd4c4d
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

如果你的版本也是23.0.0及以上,那么需要更新kolla-ansible版本,或者降低docker版本

Do not support dimensions:kernel_memory on Docker API 1.42

It is deprecated in 20.10 and removed in 23.0 (and 23.0 is out) [1], [2].

[1]: https://docs.docker.com/engine/deprecated/#kernel-memory-limit
[2]: https://docs.docker.com/engine/api/version-history/#v142-api-changes

出处:

Do not support dimensions:kernel_memory on Docker API 1.42 · openstack/kolla-ansible@f253f99 · GitHub

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Kolla-Ansible deploy部署报错 KeyError: \\‘KernelMemory 的相关文章

  • Ansible 中的角色和任务(和标签)有什么区别?

    我发现自己很困惑roles and tasks每时每刻 我知道标签是标记单个项目的一种方式 但我很困惑如何使用它们 假设我必须执行以下操作 Users Create a user named deploy Add ssh key for d
  • 将整数变量传递给任务而不丢失整数类型

    我有一个我不拥有的任务 实际上是一个角色 但在这里使用任务是为了使示例更容易 它对变量进行一些操作 它假设变量是整数 我需要以某种方式向它传递一个变量并将其作为 int 传递 但我没有任何运气 这是我不拥有的任务的超级简化版本 frob y
  • 从列表创建变量并全局访问

    我正在编写一个程序 从数据库中提取部门列表 我想避免对此进行硬编码 因为列表可能会发生变化 我想为每个部门创建一个变量 将问题填充到 GUI 中 我遇到的问题是我可以使用 vars 函数从数据库列表中创建变量 然后 我存储变量名称列表 以便
  • 如何在 YAML 中使用 IF ELSE 和变量?

    我正在使用 Ansible Tower 的 YAML 文件 其中包含以下信息 name Package Deployment block name Update package package yum update cache True u
  • 从 dict 列表中删除一个项目并分割 stdout_lines

    我试图从字典列表中删除一个项目 即 未找到结果 的项目 validar LPARNAME No results were found LPARNAME server1 server2 server4 LPARNAME server3
  • 如何将 ansible_become_pass 存储在保管库中以及如何使用它?

    我是 ansible 的新手 我正在使用一个非常简单的剧本来发布sudo apt get update and sudo apt get upgrade在几台服务器上 这是我正在使用的剧本 name Update Servers hosts
  • Ansible sudo 在执行 5 个任务后挂起

    设置要求 本地用户 goagent1 ansible从GoCD启动 远程用户 myadmin myadmin 是一个需要密码的 sudoer 我们在剧本级别启用了 sudo Problem 该剧本似乎在执行了大约 5 个任务后停止了 发生得
  • 如何在 playbook 中使用 Ansible Tower 登录凭据?

    是否可以使用我用来直接在剧本中登录 Ansible Tower 的凭据 是的 您可以通过使用 保存您的凭据 来完成此操作安西布尔塔 Ansible Tower 上的凭证类型 从 Ansible Tower UI 中 转至 Credentia
  • python字典日期时间作为键,keyError

    我正在尝试在 Linux 中使用 cron 运行 Python 脚本 它应该构建一个数据字典 我正在尝试使用datetime now time 作为字典中的键 但它似乎会引发错误 不可以datetimetype 可以用作Python 中的字
  • Ansible 手册:错误! “command”不是 Play 的有效属性[重复]

    这个问题在这里已经有答案了 我只是想写一个基本的剧本 并不断收到下面的错误 尝试了很多东西但仍然无法做到正确 我知道这一定是语法问题 但不知道在哪里 这是我的代码 This playbook runs a basic DF command
  • Cygwin - 如何安装 ansible?

    如何使用 Cygwin 获取 安装 ansible 我尝试了以下步骤 但在第 5 条期间 运行时 python setup py 安装 步骤取自 取自https servercheck in blog running ansible wit
  • Ansible:即使成为 sudo 用户,也无法配置 sudo 命令

    testuser 是 sudo 用户 sudo cat etc sudoers d 90 cloud init testuser testuser ALL ALL NOPASSWD ALL 我可以手动登录 testuser 并在没有密码的情
  • 使用 with_items 连接字符串并分配给 Ansible 中的变量

    启动 ec2 实例时 我需要将两个 2 IP 保存到 vars 文件中的变量中 以便稍后在部署期间使用 这就是我保存单个服务器 IP 的方式 name Save server public IP to vars file lineinfil
  • 连接到上游时 Nginx 错误:(13:权限被拒绝)

    我在我的中收到此错误nginx error log file 2014 02 17 03 42 20 crit 5455 0 1 connect to unix tmp uwsgi sock failed 13 Permission den
  • 使用 ansible 'Docker login' 和 _json_key Docker 登录到 GCE

    我正在尝试编写一个 ansible 角色 首先执行以下操作docker login从容器注册表中提取映像之前 将其复制到 GCE 实例 由于提到的问题 我需要这样做here https stackoverflow com questions
  • 如何更改 ansible_default_ipv4?

    我想将 ansible default ipv4 更改为指向 eth1 而不是 eth0 我可以在剧本中或通过 extra vars 选项来执行此操作吗 ansible 使用命令 https github com ansible ansib
  • ansible 重新启动 2.1.1.0 失败

    我一直在尝试创建一个非常简单的 Ansible 剧本 它将重新启动服务器并等待它回来 我过去在 Ansible 1 9 上有一个可以运行的 但我最近升级到 2 1 1 0 并且失败了 我正在重新启动的主机名为 idm IP 为 192 16
  • Ansible local_action 指令

    我对 Ansible 很陌生 有一个简单的问题来了解我的理解local action指示 这是否意味着该命令完全在本地执行 假设你有这样的东西 local action command which nginx register check
  • Ansible bitbucket 克隆存储库配置 ssh 错误

    我之前发布过这个问题 但那里的答案不再有效 总之 当使用 Ansible 配置我的 vagrant box 时 在尝试使用 ssh 克隆我的 bitbucket 私有存储库时 我遇到了一个神秘的错误 该错误指出 权限被拒绝 公钥 然而 如果
  • if else 在 ansible 打印语句中

    我需要有关具有多个条件的打印语句的语法的帮助 目前 报价为 inventory hostname 导致错误 如果我删除剧本运行的引号 但列出文本 inventory hostname 而不是变量 我想知道如何打印变量以及 if else 语

随机推荐