Uploaded image for project: 'Project Quay'
  1. Project Quay
  2. PROJQUAY-5061

Clair can't scan image vulnerability when quay use Nutanix Object storage

XMLWordPrintable

    • Icon: Bug Bug
    • Resolution: Done
    • Icon: Normal Normal
    • None
    • quay-v3.7.11, quay-v3.8.1, quay-v3.8.6
    • quay
    • False
    • None
    • False

      Description:

      This is an issue when deployed Quay 3.8.1 with operator using Nutanix Object Storage, after pushed image to Quay, found Clair can't scan the image vulnerability, checked Clair logs get error message as following, more detailed logs see attachments.

      Note:

      • This issue can be reproduced in Quay 3.8.1 and 3.7.11
      • This issue only existed when enabled "Proxy storage via Quay "
      {"level":"warn","component":"indexer/controller/Controller.Index","manifest":"sha256:11b75612febb90ba0315dc90d9f5a1c62806b659680f8863779e7bd508d19d5a","state":"FetchLayers","error":"encountered error while fetching a layer: error realizing layer sha256:735bcfbfe54d91ba5b32637542e7275f35d349a7efb28bee50dc5ebf9759dbe2: fetcher: unexpected status code: 400 Bad Request (body starts: \"\")","time":"2023-02-08T07:19:32Z","message":"layers fetch failure"}

      Quay Version: Quay 3.8.1

      Quay Image:

      Quay Logs:

      nginx stdout | 10.131.0.2 (-) - - [08/Feb/2023:07:30:36 +0000] "GET /_storage_proxy/ZXlKMGVYQWlPaUpLVjFRaUxDSmhiR2NpT2lKU1V6STFOaUlzSW10cFpDSTZJakIxVFZBdE1FdFJXVkZtWjB0Q2FqaEpVbGR5Vmt4UlpIWmpaMU10V25Ga2N6Qnhja05IYkROMVowRWlmUS5leUpwYzNNaU9pSnhkV0Y1SWl3aVlYVmtJam9pY1hWaGVUTTRNUzF4ZFdGNUxYRjFZWGt6T0RFdVlYQndjeTV4ZFdGNWJuVjBZVzVwZUM1eFpTNWtaWFpqYkhWemRHVnlMbTl3Wlc1emFHbG1kQzVqYjIwaUxDSnVZbVlpT2pFMk56VTROREUwTXpVc0ltbGhkQ0k2TVRZM05UZzBNVFF6TlN3aVpYaHdJam94TmpjMU9EUXhORFkxTENKemRXSWlPaUp6ZEc5eVlXZGxjSEp2ZUhraUxDSmhZMk5sYzNNaU9sdDdJblI1Y0dVaU9pSnpkRzl5WVdkbGNISnZlSGtpTENKMWNta2lPaUp4ZFdGNUwzRjFZWGt6T0RFdmMyaGhNalUyTHpsbUx6bG1aRFk1WlRobFkyWmpNamRsTldZNE1UWmhOMlZsTVRZeFpUUmtaak15TTJVMU56UTJabVpoWXpreFl6WTFNRGhsWXpnek9UQmxZMlpoWlROa1pUWV9RVmRUUVdOalpYTnpTMlY1U1dROVMxOTBjR2t3VW5SUWVYSnNVa2QzV2psdldVaHFOWFZTWTBjMU1tRllaRTRtVTJsbmJtRjBkWEpsUFZsUVV6WTNNU1V5Um10MGQxTjFhMVEwWldoeVUyWTNVSFZDT1dGekpUTkVKa1Y0Y0dseVpYTTlNVFkzTlRnME1qQXpOU0lzSW1odmMzUWlPaUp2Y3k1c2RITXRZMngxYzNSbGNpNXBiblJsY201aGJDNXVkWFJoYm1sNExXUmxkaTVrWlhaamJIVnpkR1Z5TG05d1pXNXphR2xtZEM1amIyMDZORFF6SWl3aWMyTm9aVzFsSWpvaWFIUjBjSE1pZlYwc0ltTnZiblJsZUhRaU9udDlmUS5yWEVHZjgzdlFGbUc2aVg4T25EMHV4bW9scV9tM2JocDZBZ1BJWnlQN1Q0Y3FoYm1RcmZic0RvOXdzR1hfMDZpcFkyUkFNa09aNlRLLTJKN3dOa3d4ZTFYRVpWdG1aR0dhWnJySU55R2M0NVktTkNrTVF6REg5Y2J4dkpxc2dXck5MTVAyNTNpSXNmX2NCTGNra05vR21qcUluUHhnZC1VZVZzX1dZOHhveTJTWHNQRW5KUFkyWHA5SDVYNktCX296TWhTaVJUVnJ5Y0ExNWpFSXR1Szk0YU9GQU5qTG9yZHZDWTctTWxlQ1Q5S3FGTlpla05wQ3ZKaTl6eU1EMktJajIwQ1hFYUJvQ1dFQTJVSC1lSWtkNWphOTZENFBZdVhucDFsdmVoVWpNSmItOHNPZzFmSlMyVTRqN29PQWplcS1TY1ZodTZ6TmZGcTJua1Z5LXRNRVE=/https/os.lts-cluster.internal.nutanix-dev.devcluster.openshift.com:443/quay/quay381/sha256/9f/9fd69e8ecfc27e5f816a7ee161e4df323e5746ffac91c6508ec8390ecfae3de6?AWSAccessKeyId=K_tpi0RtPyrlRGwZ9oYHj5uRcG52aXdN&Signature=YPS671%2FktwSukT4ehrSf7PuB9as%3D&Expires=1675842035 HTTP/1.1" 400 5 "-" "clair/v4" (0.024 2223 0.015) 

      Clair Logs:

      {"level":"warn","component":"indexer/controller/Controller.Index","manifest":"sha256:11b75612febb90ba0315dc90d9f5a1c62806b659680f8863779e7bd508d19d5a","state":"FetchLayers","error":"encountered error while fetching a layer: error realizing layer sha256:735bcfbfe54d91ba5b32637542e7275f35d349a7efb28bee50dc5ebf9759dbe2: fetcher: unexpected status code: 400 Bad Request (body starts: \"\")","time":"2023-02-08T07:19:32Z","message":"layers fetch failure"}
      {"level":"info","component":"indexer/controller/Controller.Index","manifest":"sha256:11b75612febb90ba0315dc90d9f5a1c62806b659680f8863779e7bd508d19d5a","state":"FetchLayers","time":"2023-02-08T07:19:32Z","message":"layers fetch done"}
      {"level":"error","component":"indexer/controller/Controller.Index","manifest":"sha256:11b75612febb90ba0315dc90d9f5a1c62806b659680f8863779e7bd508d19d5a","state":"FetchLayers","error":"failed to fetch layers: encountered error while fetching a layer: error realizing layer sha256:735bcfbfe54d91ba5b32637542e7275f35d349a7efb28bee50dc5ebf9759dbe2: fetcher: unexpected status code: 400 Bad Request (body starts: \"\")","time":"2023-02-08T07:19:32Z","message":"error during scan"}

      Quay config.yaml:

      ALLOW_PULLS_WITHOUT_STRICT_LOGGING: false
      AUTHENTICATION_TYPE: Database
      AVATAR_KIND: local
      BUILDLOGS_REDIS:
        host: quay381-quay-redis
        port: 6379
      DATABASE_SECRET_KEY: qUMoTdrZQBxDBPo5oMyHbnkdic931PsSiAva2B5-AjddIB7qBM1Q4qgRrYX15KxnqMMKeW48vuNEw4df
      DB_CONNECTION_ARGS:
        autorollback: true
        threadlocals: true
      DB_URI: postgresql://quay381-quay-database:QdeB882-ZUp8e25dglGRDg0iXnqwmPkI4rhBP2okfl3N3Tz84Tb5kAeglUFmGYBIORtSFARVWfdCgn3M@quay381-quay-database:5432/quay381-quay-database
      DEFAULT_TAG_EXPIRATION: 2w
      DISTRIBUTED_STORAGE_CONFIG:
        local_us:
        - RadosGWStorage
        - access_key: K_tpi0RtPyrlRGwZ9oYHj5uRcG52aXdN
          bucket_name: quay
          hostname: os.lts-cluster.internal.nutanix-dev.devcluster.openshift.com
          is_secure: true
          port: "443"
          secret_key: bjRuc_t45wFry2DjdTJz7i0xn_BiI6AP
          storage_path: /quay381
      DISTRIBUTED_STORAGE_DEFAULT_LOCATIONS:
      - local_us
      DISTRIBUTED_STORAGE_PREFERENCE:
      - local_us
      ENTERPRISE_LOGO_URL: /static/img/RH_Logo_Quay_Black_UX-horizontal.svg
      EXTERNAL_TLS_TERMINATION: true
      FEATURE_ACTION_LOG_ROTATION: false
      FEATURE_ANONYMOUS_ACCESS: true
      FEATURE_APP_SPECIFIC_TOKENS: true
      FEATURE_BITBUCKET_BUILD: false
      FEATURE_BLACKLISTED_EMAILS: false
      FEATURE_BUILD_SUPPORT: false
      FEATURE_CHANGE_TAG_EXPIRATION: true
      FEATURE_DIRECT_LOGIN: true
      FEATURE_EXTENDED_REPOSITORY_NAMES: true
      FEATURE_FIPS: false
      FEATURE_GITHUB_BUILD: false
      FEATURE_GITHUB_LOGIN: false
      FEATURE_GITLAB_BUILD: false
      FEATURE_GOOGLE_LOGIN: false
      FEATURE_INVITE_ONLY_USER_CREATION: false
      FEATURE_MAILING: false
      FEATURE_NONSUPERUSER_TEAM_SYNCING_SETUP: false
      FEATURE_PARTIAL_USER_AUTOCOMPLETE: true
      FEATURE_PROXY_STORAGE: true
      FEATURE_REPO_MIRROR: true
      FEATURE_SECURITY_NOTIFICATIONS: true
      FEATURE_SECURITY_SCANNER: true
      FEATURE_STORAGE_REPLICATION: false
      FEATURE_TEAM_SYNCING: false
      FEATURE_USER_CREATION: true
      FEATURE_USER_LAST_ACCESSED: true
      FEATURE_USER_LOG_ACCESS: false
      FEATURE_USER_METADATA: false
      FEATURE_USER_RENAME: false
      FEATURE_USERNAME_CONFIRMATION: true
      FRESH_LOGIN_TIMEOUT: 10m
      GITHUB_LOGIN_CONFIG: {}
      GITHUB_TRIGGER_CONFIG: {}
      GITLAB_TRIGGER_KIND: {}
      LDAP_ALLOW_INSECURE_FALLBACK: false
      LDAP_EMAIL_ATTR: mail
      LDAP_UID_ATTR: uid
      LDAP_URI: ldap://localhost
      LOGS_MODEL: database
      LOGS_MODEL_CONFIG: {}
      MAIL_DEFAULT_SENDER: support@quay.io
      MAIL_PORT: 587
      MAIL_USE_AUTH: false
      MAIL_USE_TLS: false
      PREFERRED_URL_SCHEME: https
      REGISTRY_TITLE: Red Hat Quay
      REGISTRY_TITLE_SHORT: Red Hat Quay
      REPO_MIRROR_INTERVAL: 30
      REPO_MIRROR_TLS_VERIFY: true
      SEARCH_MAX_RESULT_PAGE_COUNT: 10
      SEARCH_RESULTS_PER_PAGE: 10
      SECRET_KEY: JH6Tuww2OYpc0d5kJCWDyg83TUEAdLh2ttVIUEbfx6j9DSawgwXrRvJ8kJIhhA-BeyIJG1Vp9OVIuQWC
      SECURITY_SCANNER_INDEXING_INTERVAL: 30
      SECURITY_SCANNER_V4_ENDPOINT: http://quay381-clair-app.quay381.svc.cluster.local
      SECURITY_SCANNER_V4_NAMESPACE_WHITELIST:
      - admin
      SECURITY_SCANNER_V4_PSK: VGxmb3UxRmhBNVlURmo4VnhtbHp1UktaR1BGd2FZNlM=
      SERVER_HOSTNAME: quay381-quay-quay381.apps.quaynutanix.qe.devcluster.openshift.com
      SETUP_COMPLETE: true
      TAG_EXPIRATION_OPTIONS:
      - 2w
      TEAM_RESYNC_STALE_TIME: 60m
      TESTING: false
      USER_EVENTS_REDIS:
        host: quay381-quay-redis
        port: 6379
      USER_RECOVERY_TOKEN_LIFETIME: 30m 

        1. clair_app1.logs
          784 kB
        2. clair_app2.logs
          917 kB
        3. image-2023-02-08-16-25-27-991.png
          image-2023-02-08-16-25-27-991.png
          224 kB
        4. image-2023-05-04-17-42-40-092.png
          image-2023-05-04-17-42-40-092.png
          625 kB
        5. image-2023-05-04-17-43-50-840.png
          image-2023-05-04-17-43-50-840.png
          323 kB
        6. quay381_app1.logs
          1.70 MB
        7. quay381_app2.logs
          3.87 MB

              Unassigned Unassigned
              lzha1981 luffy zhang
              Votes:
              0 Vote for this issue
              Watchers:
              2 Start watching this issue

                Created:
                Updated:
                Resolved: