Поделиться через


Устранение распространенных проблем с конфиденциальными контейнерами

В этой статье приводятся решения распространенных проблем с конфиденциальными контейнерами на Экземпляры контейнеров Azure.

Распространенные проблемы

При развертывании конфиденциальных контейнеров могут возникнуть следующие проблемы и ошибки:

  • Сбои политики:

    Deployment Failed.
    ErrorMessage=failed to create containerd task: failed to create shim task:
    uvm::Policy: failed to modify utility VM configuration: guest modify: guest RPC failure:
    error creating Rego policy: rego compilation failed: rego compilation failed: 4 errors occurred:
    
    Deployment Failed.
    ErrorMessage=failed to create containerd task: failed to create shim task:
    uvm::Policy: failed to modify utility VM configuration: guest modify:guest RPC failure:
    error creating Rego policy: rego compilation failed: rego compilation failed: 1 error occurred:
    policy.rego:48 rego_parse_error: non-terminated string;
    
    Container creation denied due to policy: create_container not allowed by policy. 
    Errors: [invalid command].
    
    Denied by policy: rule for mount_device is missing from policy: unknown.
    
    Failed to create containerd task: failed to create shim task: failed to mount container storage:
    failed to add LCOW layer: failed to add SCSI layer: failed to modify UVM with new SCSI mount:
    guest modify: guest RPC failure: mounting scsi device controller 3 lun 2 onto /run/mounts/m4
    denied by policy: mount_device not allowed by policy. Errors: [deviceHash not found].
    
    Container creation denied due to policy: create_container not allowed by policy. 
    
  • Политика применяет новую платформу:

    Failed to create containerd task: failed to create shim task: failed to mount container storage:
    guest modify: guest RPC failure: overlay creation denied by policy: mount_overlay not allowed by policy.
    Errors: [framework_svn is ahead of the current svn: 1.1.0 > 0.1.0].
    
  • Недопустимая политика применения конфиденциальных вычислений base64 (CCE):

    The CCE Policy is not valid Base64.
    
  • Ограничение — 120 килобайт (КБ) для политики CCE:

    Failed to create containerd task: failed to create shim task: error while creating the compute system:
    hcs::CreateComputeSystem <compute system id>@vm: The requested operation failed.: unknown.\r\n;
    The container group provisioning has failed. Refer to 'DeploymentFailedReason' event for more details.;
    
    Failed to create containerd task: failed to create shim task: task with id: '<task id>' cannot be created in pod: '<pod>'
    which is not running: failed precondition.\r\n;The container group provisioning has failed.
    Refer to 'DeploymentFailedReason' event for more details.
    
  • Хэш устройства не найден:

    Denied by policy: rule for mount_device is missing from policy: unknown.
    
    Failed to create containerd task: failed to create shim task: failed to mount container storage:
    failed to add LCOW layer: failed to add SCSI layer: failed to modify UVM with new SCSI mount:
    guest modify: guest RPC failure: mounting scsi device controller 3 lun 2 onto /run/mounts/m4
    denied by policy: mount_device not allowed by policy. Errors: [deviceHash not found]
    
  • Другие проблемы:

    • Журналы не отображаются.
    • Функциональные возможности exec не работают.
    • Время ожидания развертывания подписки истекает через 30 минут.
    • Проба liveness с запрещенной политикой.
    • Код выхода 139.

Причина

В большинстве случаев эти проблемы возникают из-за политики CCE.

Решение

  • При возникновении ошибок политики повторно создайте политику CCE и повторите развертывание.

  • Если политика CCE применяет платформу, вернитесь к более старой платформе svn.

  • Если хэш устройства не найден или возникла проблема с изображением, снимите кэш и повторно создайте политику CCE.

    Чтобы очистить кэш, выполните docker rmi <image_name>:<tag> команду. Чтобы очистить все образы в кэше, выполните docker rmi $(docker images -a -q) команду. Чтобы проверить отсутствующий хэш, выполните docker inspect <image_name>:<tag> команду.

Свяжитесь с нами для получения помощи

Если у вас есть вопросы или вам нужна помощь, создайте запрос в службу поддержки или обратитесь за поддержкой сообщества Azure. Вы также можете отправить отзыв о продукте в сообщество отзывов Azure.