검색

4.7. 사전 빌드된 드라이버 컨테이너 서명

download PDF

하드웨어 벤더에 의해 배포되거나 다른 위치에서 빌드된 이미지와 같이 사전 빌드된 이미지가 있는 경우 이 절차를 사용하십시오.

다음 YAML 파일은 공개/개인 키 쌍에 필요한 키 이름(개인 키의 키 키, 공개 키의 인증서)이 있는 시크릿으로 공개/개인 키 쌍을 추가합니다. 그러면 클러스터에서 unsignedImage 이미지를 가져와서 열고, filesToSign 에 나열된 커널 모듈에 서명하고, 다시 추가하고, 결과 이미지를 containerImage 로 푸시합니다.

그런 다음 서명된 kmods를 선택기와 일치하는 모든 노드에 로드하는 DaemonSet을 배포해야 합니다. 드라이버 컨테이너는 MOK 데이터베이스에 공개 키가 있는 노드와 보안 부팅이 활성화되지 않은 모든 노드에서 서명을 무시해야 합니다. 보안 부팅이 활성화된 상태에서 로드되지 않아야 하지만 MOK 데이터베이스에는 해당 키가 없습니다.

사전 요구 사항

  • keySecretcertSecret 시크릿이 생성되었습니다.

절차

  1. YAML 파일을 적용합니다.

    ---
    apiVersion: kmm.sigs.x-k8s.io/v1beta1
    kind: Module
    metadata:
      name: example-module
    spec:
      moduleLoader:
        serviceAccountName: default
        container:
          modprobe: 1
            moduleName: '<your module name>'
          kernelMappings:
            # the kmods will be deployed on all nodes in the cluster with a kernel that matches the regexp
            - regexp: '^.*\.x86_64$'
              # the container to produce containing the signed kmods
              containerImage: <image name e.g. quay.io/myuser/my-driver:<kernelversion>-signed>
              sign:
                # the image containing the unsigned kmods (we need this because we are not building the kmods within the cluster)
                unsignedImage: <image name e.g. quay.io/myuser/my-driver:<kernelversion> >
                keySecret: # a secret holding the private secureboot key with the key 'key'
                  name: <private key secret name>
                certSecret: # a secret holding the public secureboot key with the key 'cert'
                  name: <certificate secret name>
                filesToSign: # full path within the unsignedImage container to the kmod(s) to sign
                  - /opt/lib/modules/4.18.0-348.2.1.el8_5.x86_64/kmm_ci_a.ko
      imageRepoSecret:
        # the name of a secret containing credentials to pull unsignedImage and push containerImage to the registry
        name: repo-pull-secret
      selector:
        kubernetes.io/arch: amd64
1
modprobe - 로드할 kmod의 이름입니다.
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.