1.4. 설치하는 동안 디스크 암호화 및 미러링
OpenShift Container Platform을 설치하는 동안 클러스터 노드에서 부팅 디스크 암호화 및 미러링을 활성화할 수 있습니다.
1.4.1. 디스크 암호화 정보 링크 복사링크가 클립보드에 복사되었습니다!
설치 시 컨트롤 플레인 및 컴퓨팅 노드에서 부팅 디스크에 대한 암호화를 활성화할 수 있습니다. OpenShift Container Platform은 Trusted Platform Module (TPM) v2 및 Tang 암호화 모드를 지원합니다.
- TPM v2
- 기본 모드입니다. TPM v2는 서버의 보안 암호화 프로세서에 암호를 저장합니다. 디스크가 서버에서 제거된 경우 이 모드를 사용하여 클러스터 노드에서 부팅 디스크 데이터의 암호 해독을 방지할 수 있습니다.
- Tang
- Tang 및 Clevis는 NBDE(네트워크 바인딩 디스크 암호화)를 활성화하는 서버 및 클라이언트 구성 요소입니다. 클러스터 노드의 부팅 디스크 데이터를 하나 이상의 Tang 서버에 바인딩할 수 있습니다. 이렇게 하면 노드가 Tang 서버에 액세스할 수 있는 보안 네트워크에 있지 않는 한 데이터의 암호 해독이 방지됩니다. Clevis는 클라이언트 측에서 암호 해독을 구현하는 데 사용되는 자동화된 암호 해독 프레임워크입니다.
Tang 암호화 모드를 사용하여 디스크를 암호화하는 것은 사용자 프로비저닝 인프라의 베어 메탈 및 vSphere 설치에만 지원됩니다.
이전 버전의 RHCOS(Red Hat Enterprise Linux CoreOS)에서는 Ignition 구성에 /etc/clevis.json 을 지정하여 디스크 암호화를 구성했습니다. 해당 파일은 OpenShift Container Platform 4.7 이상으로 생성된 클러스터에서 지원되지 않습니다. 다음 절차를 사용하여 디스크 암호화를 구성합니다.
TPM v2 또는 Tang 암호화 모드가 활성화되면 RHCOS 부팅 디스크는 LUKS2 형식을 사용하여 암호화됩니다.
이는 다음과 같은 기능을 제공합니다:
- 설치 관리자 프로비저닝 인프라, 사용자 프로비저닝 인프라 및 지원 설치 관리자 배포에서 사용 가능
지원 설치 프로그램 배포의 경우:
- 각 클러스터에는 Tang 또는 TPM 단일 암호화 방법만 있을 수 있습니다.
- 일부 또는 모든 노드에서 암호화를 활성화할 수 있습니다.
- Tang 임계값이 없습니다. 모든 서버가 유효하고 작동해야 합니다.
- 암호화는 워크로드 디스크가 아닌 설치 디스크에만 적용됩니다.
- RHCOS (Red Hat Enterprise Linux CoreOS) 시스템에서만 지원됨
- 매니페스트 설치 단계에서 디스크 암호화를 설정하여 첫 번째 부팅부터 디스크에 기록된 모든 데이터를 암호화합니다.
- 사용자 개입없이 암호 제공 가능
- FIPS 모드가 활성화된 경우 AES-256-XTS 암호화 또는 AES-256-CBC 사용
1.4.1.1. 암호화 임계값 구성 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform에서는 둘 이상의 Tang 서버에 대한 요구 사항을 지정할 수 있습니다. TPM v2 및 Tang 암호화 모드를 동시에 구성할 수도 있습니다. 이렇게 하면 TPM 보안 암호화 프로세서가 있고 Tang 서버에 보안 네트워크를 통해 액세스할 수 있는 경우에만 부팅 디스크 데이터 암호 해독이 활성화됩니다.
Butane 구성에서 threshold 속성을 사용하여 암호 해독에 필요한 최소 TPM v2 및 Tang 암호화 조건을 정의할 수 있습니다.
선언된 조건의 조합을 통해 명시된 값에 도달하면 임계값이 충족됩니다. 오프라인 프로비저닝의 경우 오프라인 서버는 포함된 광고를 사용하여 액세스되며 온라인 서버의 수가 설정 임계값을 충족하지 않는 경우에만 제공된 광고를 사용합니다.
예를 들어 다음 구성의 임계값 2 는 오프라인 서버를 백업으로 사용할 수 있는 두 개의 Tang 서버에 액세스하거나 TPM 보안 암호화 프로세서와 Tang 서버 중 하나에 액세스하여 도달할 수 있습니다.
디스크 암호화를 위한 Butane 구성의 예
- 1
- 이 필드를 클러스터 노드의 명령어 세트 아키텍처로 설정합니다. 일부 예로는
x86_64,aarch64또는ppc64le이 있습니다. - 2
- Trusted Platform Module (TPM)을 사용하여 root 파일 시스템을 암호화하려면 이 필드를 포함합니다.
- 3
- 하나 이상의 Tang 서버를 사용하려면 이 섹션을 포함합니다.
- 4
- 선택 사항: 오프라인 프로비저닝을 위해 이 필드를 포함합니다. Ignition은 런타임 시 서버에서 광고를 가져오는 대신 Tang 서버 바인딩을 프로비저닝합니다. 이렇게 하면 프로비저닝 시 서버를 사용할 수 없습니다.
- 5
- 암호 해독을 수행하는 데 필요한 최소 TPM v2 및 Tang 암호화 조건을 지정합니다.
기본 threshold는 1입니다. 구성에 여러 암호화 조건을 포함하지만 임계값을 지정하지 않을 경우 조건이 하나라도 충족되면 암호 해독이 발생할 수 있습니다.
복호화를 위해 TPM v2 와 Tang이 필요한 경우 임계 값 속성 값은 명시된 Tang 서버의 총 수에 1을 더한 값과 같아야 합니다. 임계값 이 낮으면 단일 암호화 모드를 사용하여 임계값에 도달할 수 있습니다. 예를 들어 tpm2 를 true 로 설정하고 두 개의 Tang 서버를 지정하는 경우 TPM 보안 암호화 프로세서를 사용할 수 없는 경우에도 두 Tang 서버에 액세스하여 임계값 2 를 충족할 수 있습니다.
1.4.2. 디스크 미러링 정보 링크 복사링크가 클립보드에 복사되었습니다!
컨트롤 플레인 및 작업자 노드에 OpenShift Container Platform을 설치하는 동안 부팅 디스크를 두 개 이상의 중복 스토리지 장치로 미러링할 수 있습니다. 하나의 장치를 계속 사용할 수 있는 경우 스토리지 장치 오류 후에도 노드가 계속 작동합니다.
미러링은 실패한 디스크 교체를 지원하지 않습니다. 미러를 성능이 저하되지 않은 초기 상태로 복원하도록 노드를 다시 프로비저닝합니다.
사용자 프로비저닝 인프라 배포의 경우 RHCOS 시스템에서만 미러링을 사용할 수 있습니다. 미러링 지원은 BIOS 또는 UEFI 및 ppc64le 노드에서 부팅된 x86_64 노드에서 사용할 수 있습니다.
1.4.3. 디스크 암호화 및 미러링 구성 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform을 설치하는 동안 암호화 및 미러링을 활성화하고 구성할 수 있습니다.
사전 요구 사항
- 설치 노드에 OpenShift Container Platform 설치 프로그램이 다운로드되어 있습니다.
설치 노드에 Butane이 설치되어 있습니다.
참고Butane은 OpenShift Container Platform에서 머신 구성을 작성하고 검증하기 위해 편리한 단기 구문을 제공하는 데 사용하는 명령줄 유틸리티입니다. 자세한 내용은 " Butane을 사용하여 머신 구성 생성"을 참조하십시오.
- Tang 교환 키의 지문을 생성하는 데 사용할 수 있는 RHEL (Red Hat Enterprise Linux) 8 시스템에 액세스할 수 있습니다.
프로세스
- TPM v2를 사용하여 클러스터를 암호화하려면 각 노드의 호스트 펌웨어에서 TPM v2 암호화를 활성화해야 하는지 확인합니다. 이는 대부분의 Dell 시스템에서 필요합니다. 특정 시스템에 대한 설명서를 확인합니다.
Tang을 사용하여 클러스터를 암호화하려면 다음 준비 단계를 수행하십시오.
- Tang 서버를 설정하거나 기존 서버에 액세스합니다. 자세한 내용은 Network-bound disk encryption에서 참조하십시오.
아직 설치되지 않은 경우 RHEL 8 시스템에
clevis패키지를 설치합니다.sudo yum install clevis
$ sudo yum install clevisCopy to Clipboard Copied! Toggle word wrap Toggle overflow RHEL 8 시스템에서 다음 명령을 실행하여 교환 키의 지문을 생성합니다.
http://tang1.example.com:7500를 Tang 서버의 URL로 바꿉니다.clevis-encrypt-tang '{"url":"http://tang1.example.com:7500"}' < /dev/null > /dev/null$ clevis-encrypt-tang '{"url":"http://tang1.example.com:7500"}' < /dev/null > /dev/null1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이 예에서
tangd.socket은 Tang 서버의 포트7500에서 수신 대기 중입니다.
참고clevis-encrypt-tang명령은 교환 키의 지문을 생성합니다. 이 단계에서 암호화 명령에 데이터가 전달되지 않습니다./dev/null은 일반 텍스트 대신 입력으로 존재합니다. 이 프로세스에 필요하지 않으므로 암호화된 출력은/dev/null에도 전송됩니다.출력 예
The advertisement contains the following signing keys: PLjNyRdGw03zlRoGjQYMahSZGu9
The advertisement contains the following signing keys: PLjNyRdGw03zlRoGjQYMahSZGu91 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 교환 키의 지문입니다.
Do you wish to trust these keys? [ynYN]프롬프트가 표시되면Y를 입력합니다.선택 사항: 오프라인 Tang 프로비저닝의 경우:
curl명령을 사용하여 서버에서 광고를 가져옵니다.http://tang2.example.com:7500를 Tang 서버의 URL로 바꿉니다.curl -f http://tang2.example.com:7500/adv > adv.jws && cat adv.jws
$ curl -f http://tang2.example.com:7500/adv > adv.jws && cat adv.jwsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 예상 출력
{"payload": "eyJrZXlzIjogW3siYWxnIjogIkV", "protected": "eyJhbGciOiJFUzUxMiIsImN0eSI", "signature": "ADLgk7fZdE3Yt4FyYsm0pHiau7Q"}{"payload": "eyJrZXlzIjogW3siYWxnIjogIkV", "protected": "eyJhbGciOiJFUzUxMiIsImN0eSI", "signature": "ADLgk7fZdE3Yt4FyYsm0pHiau7Q"}Copy to Clipboard Copied! Toggle word wrap Toggle overflow 암호화를 위해 Clevis에 알림 파일을 제공합니다.
clevis-encrypt-tang '{"url":"http://tang2.example.com:7500","adv":"adv.jws"}' < /dev/null > /dev/null$ clevis-encrypt-tang '{"url":"http://tang2.example.com:7500","adv":"adv.jws"}' < /dev/null > /dev/nullCopy to Clipboard Copied! Toggle word wrap Toggle overflow
노드가 고정 IP 주소 지정으로 구성된 경우
coreos-installer iso customize --dest-karg-append를 실행하거나 RHCOS 노드를 설치할 때coreos-installer--append-karg옵션을 사용하여 설치된 시스템의 IP 주소를 설정합니다. 네트워크에 필요한ip=및 기타 인수를 추가합니다.중요정적 IP를 구성하는 일부 방법은 첫 번째 부팅 후 initramfs에 영향을 미치지 않으며 Tang 암호화에서는 작동하지 않습니다. 여기에는
coreos-installer--copy-network옵션,coreos-installer iso customize--network-keyfile옵션,coreos-installer pxe customize--network-keyfile옵션이 포함되어 있으며 설치 중에 라이브 ISO 또는 PXE 이미지의 커널 명령줄에ip=인수를 추가합니다. 잘못된 고정 IP 구성으로 노드의 두 번째 부팅이 실패합니다.
설치 노드에서 설치 프로그램이 포함된 디렉터리로 변경하고 클러스터에 대한 Kubernetes 매니페스트를 생성합니다.
./openshift-install create manifests --dir <installation_directory>
$ ./openshift-install create manifests --dir <installation_directory>1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<installation_directory>를 설치 파일을 저장하려는 디렉토리의 경로로 바꿉니다.
디스크 암호화, 미러링 또는 둘 다를 구성하는 Butane 구성을 생성합니다. 예를 들어 컴퓨팅 노드의 스토리지를 구성하려면
$HOME/clusterconfig/worker-storage.bu파일을 생성합니다.부팅 장치의 butane config 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1 2
- 컨트롤 플레인 구성의 경우 두 위치 모두에서
worker를master로 바꿉니다. - 3
- 이 필드를 클러스터 노드의 명령어 세트 아키텍처로 설정합니다. 일부 예로는
x86_64,aarch64또는ppc64le이 있습니다. - 4
- root 파일 시스템을 암호화하려면 이 섹션을 포함합니다. 자세한 내용은 "디스크 암호화 정보"를 참조하십시오.
- 5
- Trusted Platform Module (TPM)을 사용하여 root 파일 시스템을 암호화하려면 이 필드를 포함합니다.
- 6
- 하나 이상의 Tang 서버를 사용하려면 이 섹션을 포함합니다.
- 7
- Tang 서버의 URL을 지정합니다. 이 예에서
tangd.socket은 Tang 서버의 포트7500에서 수신 대기 중입니다. - 8
- 이전 단계에서 생성된 교환 키 지문을 지정합니다.
- 9
- 선택 사항: 오프라인 Tang 서버의 알림을 유효한 JSON 형식으로 지정합니다.
- 10
- 암호 해독을 수행하려면 충족해야 하는 최소 TPM v2 및 Tang 암호화 조건 수를 지정합니다. 기본값은
1입니다. 이 항목에 대한 자세한 내용은 "암호 임계값 구성"을 참조하십시오. - 11
- 부팅 디스크를 미러링하려면 이 섹션을 포함합니다. 자세한 내용은 "디스크 미러링 정보"를 참조하십시오.
- 12
- RHCOS가 설치될 디스크를 포함하여 부트 디스크 미러에 포함해야 하는 모든 디스크 장치를 나열합니다.
- 13
- 클러스터에서 FIPS 모드를 활성화하려면 이 지시문을 포함합니다.
중요클러스터의 FIPS 모드를 활성화하려면 FIPS 모드에서 작동하도록 구성된 RHEL(Red Hat Enterprise Linux) 컴퓨터에서 설치 프로그램을 실행해야 합니다. RHEL에서 FIPS 모드 구성에 대한 자세한 내용은 FIPS 모드에서 시스템 설치를 참조하십시오. 디스크 암호화 및 미러링을 모두 사용하도록 노드를 구성하는 경우 두 기능을 동일한 Butane 구성 파일에서 구성해야 합니다. FIPS 모드가 활성화된 노드에서 디스크 암호화를 구성하는 경우 별도의 매니페스트에서 FIPS 모드도 활성화된 경우에도 동일한 Butane 구성 파일에
fips지시문을 포함해야 합니다.해당 Butane 구성 파일에서 컨트롤 플레인 또는 컴퓨팅 노드 매니페스트를 생성하여 <
installation_directory>/openshift디렉터리에 저장합니다. 예를 들어 컴퓨팅 노드에 대한 매니페스트를 생성하려면 다음 명령을 실행합니다.butane $HOME/clusterconfig/worker-storage.bu -o <installation_directory>/openshift/99-worker-storage.yaml
$ butane $HOME/clusterconfig/worker-storage.bu -o <installation_directory>/openshift/99-worker-storage.yamlCopy to Clipboard Copied! Toggle word wrap Toggle overflow 디스크 암호화 또는 미러링이 필요한 각 노드 유형에 대해 이 단계를 반복합니다.
- 나중에 매니페스트를 업데이트해야 하는 경우 Butane 구성 파일을 저장합니다.
나머지 OpenShift Container Platform 설치를 계속합니다.
작은 정보디스크 암호화 또는 미러링과 관련된 오류 메시지가 설치 중에 RHCOS 노드에서 콘솔 로그를 모니터링할 수 있습니다.
중요추가 데이터 파티션을 구성하면 암호화가 명시적으로 요청되지 않는 한 암호화되지 않습니다.
검증
OpenShift Container Platform을 설치한 후 클러스터 노드에서 부팅 디스크 암호화 또는 미러링이 활성화되어 있는지 확인할 수 있습니다.
설치 호스트에서 디버그 Pod를 사용하여 클러스터 노드에 액세스합니다.
노드의 디버그 Pod를 시작합니다. 예를 들면 다음과 같습니다.
oc debug node/compute-1
$ oc debug node/compute-1Copy to Clipboard Copied! Toggle word wrap Toggle overflow 디버그 쉘 내에서
/host를 root 디렉터리로 설정합니다. 디버그 Pod는 Pod 내의/host에 노드의 root 파일 시스템을 마운트합니다. root 디렉토리를/host로 변경하면 노드의 실행 경로에 포함된 바이너리를 실행할 수 있습니다.chroot /host
# chroot /hostCopy to Clipboard Copied! Toggle word wrap Toggle overflow 참고Red Hat Enterprise Linux CoreOS (RHCOS)를 실행하는 OpenShift Container Platform 클러스터 노드는 변경할 수 없으며 Operator를 통해 클러스터 변경 사항을 적용합니다. SSH를 사용하여 클러스터 노드에 액세스하는 것은 권장되지 않습니다. 그러나 OpenShift Container Platform API를 사용할 수 없거나
kubelet이 대상 노드에서 제대로 작동하지 않는 경우oc작업이 영향을 받습니다. 이러한 상황에서 대신ssh core @ <node>.<cluster_name>.<base_domain>을 사용하여 노드에 액세스할 수 있습니다.
부팅 디스크 암호화를 구성한 경우 활성화되어 있는지 확인합니다.
디버그 쉘에서 노드의 root 매핑 상태를 검토합니다.
cryptsetup status root
# cryptsetup status rootCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 암호화된 장치에 바인딩된 Clevis 플러그인을 나열합니다.
clevis luks list -d /dev/sda4
# clevis luks list -d /dev/sda41 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이전 단계의 출력에서
device필드에 나열된 장치를 지정합니다.
출력 예
1: sss '{"t":1,"pins":{"tang":[{"url":"http://tang.example.com:7500"}]}}'1: sss '{"t":1,"pins":{"tang":[{"url":"http://tang.example.com:7500"}]}}'1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 예제 출력에서 Tang 플러그인은
/dev/sda4장치의 Shamir's Secret Sharing (SSS) Clevis 플러그인에서 사용합니다.
미러링을 구성한 경우 활성화되어 있는지 확인합니다.
디버그 쉘에서 노드의 소프트웨어 RAID 장치를 나열합니다.
cat /proc/mdstat
# cat /proc/mdstatCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이전 명령의 출력에 나열된 각 소프트웨어 RAID 장치의 세부 정보를 검토합니다. 다음 예제에서는
/dev/md126장치의 세부 정보를 나열합니다.mdadm --detail /dev/md126
# mdadm --detail /dev/md126Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 소프트웨어 RAID 장치에 마운트된 파일 시스템을 나열합니다.
mount | grep /dev/md
# mount | grep /dev/mdCopy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예제 출력에서
/boot파일 시스템은dev/md126소프트웨어 RAID 장치에 마운트되고 root 파일 시스템은/dev/md127에 마운트됩니다.
- 각 OpenShift Container Platform 노드 유형에 대한 확인 단계를 반복합니다.
1.4.4. RAID 지원 데이터 볼륨 구성 링크 복사링크가 클립보드에 복사되었습니다!
소프트웨어 RAID 파티셔닝을 활성화하여 외부 데이터 볼륨을 제공할 수 있습니다. OpenShift Container Platform은 데이터 보호 및 내결함성을 위해 RAID 0, RAID 1, RAID 4, RAID 5, RAID 6 및 RAID 10을 지원합니다. 자세한 내용은 "디스크 미러링 정보"를 참조하십시오.
OpenShift Container Platform 4.16은 설치 드라이브에서 소프트웨어 RAID를 지원하지 않습니다.
사전 요구 사항
- 설치 노드에 OpenShift Container Platform 설치 프로그램이 다운로드되어 있습니다.
설치 노드에 Butane이 설치되어 있습니다.
참고butane은 OpenShift Container Platform이 머신 구성 작성에 편리한 단기 구문을 제공하고 머신 구성에 대한 추가 검증을 수행하는 데 사용하는 명령줄 유틸리티입니다. 자세한 내용은 Butane을 사용하여 머신 구성 생성 섹션을 참조하십시오.
프로세스
소프트웨어 RAID를 사용하여 데이터 볼륨을 구성하는 Butane 구성을 만듭니다.
미러링된 부팅 디스크에 사용되는 것과 동일한 디스크에 RAID 1을 사용하여 데이터 볼륨을 구성하려면
$HOME/clusterconfig/raid1-storage.bu파일을 생성합니다. 예를 들면 다음과 같습니다.미러링된 부팅 디스크의 RAID 1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 보조 디스크에서 RAID 1을 사용하여 데이터 볼륨을 구성하려면
$HOME/clusterconfig/raid1-alt-storage.bu파일을 생성합니다. 예를 들면 다음과 같습니다.보조 디스크에서 RAID 1
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
이전 단계에서 생성한 Butane 구성에서 RAID 매니페스트를 생성하여 <
installation_directory>/openshift디렉터리에 저장합니다. 예를 들어 컴퓨팅 노드에 대한 매니페스트를 생성하려면 다음 명령을 실행합니다.butane $HOME/clusterconfig/<butane_config>.bu -o <installation_directory>/openshift/<manifest_name>.yaml
$ butane $HOME/clusterconfig/<butane_config>.bu -o <installation_directory>/openshift/<manifest_name>.yaml1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- <
;butane_config> 및 <manifest_name>을 이전 단계의 파일 이름으로 바꿉니다. 예를 들어 보조 디스크의 경우raid1-alt-storage.bu및raid1-alt-storage.yaml입니다.
- 나중에 매니페스트를 업데이트해야 하는 경우 Butane config를 저장합니다.
- 나머지 OpenShift Container Platform 설치를 계속합니다.
1.4.5. CPU(VROC) 데이터 볼륨에서 Intel® 가상 RAID 구성 링크 복사링크가 클립보드에 복사되었습니다!
Intel® VROC는 하이브리드 RAID 유형으로, 유지 관리의 일부는 하드웨어로 오프로드되지만 운영 체제에 소프트웨어 RAID로 표시됩니다.
다음 절차에서는 Intel® VROC 지원 RAID1을 구성합니다.
사전 요구 사항
- Intel® Volume Management Device(VMD)가 활성화된 시스템이 있어야 합니다.
프로세스
다음 명령을 실행하여 Intel® Matrix Storage Manager(IMSM) RAID 컨테이너를 생성합니다.
mdadm -CR /dev/md/imsm0 -e \ imsm -n2 /dev/nvme0n1 /dev/nvme1n1
$ mdadm -CR /dev/md/imsm0 -e \ imsm -n2 /dev/nvme0n1 /dev/nvme1n11 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- RAID 장치 이름입니다. 이 예제에는 두 개의 장치가 나열되어 있습니다. 두 개 이상의 장치 이름을 제공하는 경우
-n플래그를 조정해야 합니다. 예를 들어 세 개의 장치를 나열하면-n3플래그가 사용됩니다.
컨테이너 내부에 RAID1 스토리지를 생성합니다.
다음 명령을 실행하여 실제 RAID1 볼륨 앞에 더미 RAID0 볼륨을 생성합니다.
mdadm -CR /dev/md/dummy -l0 -n2 /dev/md/imsm0 -z10M --assume-clean
$ mdadm -CR /dev/md/dummy -l0 -n2 /dev/md/imsm0 -z10M --assume-cleanCopy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 실제 RAID1 배열을 생성합니다.
mdadm -CR /dev/md/coreos -l1 -n2 /dev/md/imsm0
$ mdadm -CR /dev/md/coreos -l1 -n2 /dev/md/imsm0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 사용하여 RAID0 및 RAID1 멤버 배열을 중지하고 dummy RAID0 배열을 삭제합니다.
mdadm -S /dev/md/dummy \ mdadm -S /dev/md/coreos \ mdadm --kill-subarray=0 /dev/md/imsm0
$ mdadm -S /dev/md/dummy \ mdadm -S /dev/md/coreos \ mdadm --kill-subarray=0 /dev/md/imsm0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 RAID1 배열을 다시 시작합니다.
mdadm -A /dev/md/coreos /dev/md/imsm0
$ mdadm -A /dev/md/coreos /dev/md/imsm0Copy to Clipboard Copied! Toggle word wrap Toggle overflow
RAID1 장치에 RHCOS를 설치합니다.
다음 명령을 실행하여 IMSM 컨테이너의 UUID를 가져옵니다.
mdadm --detail --export /dev/md/imsm0
$ mdadm --detail --export /dev/md/imsm0Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 RHCOS를 설치하고
rd.md.uuid커널 인수를 포함합니다.coreos-installer install /dev/md/coreos \ --append-karg rd.md.uuid=<md_UUID> ...
$ coreos-installer install /dev/md/coreos \ --append-karg rd.md.uuid=<md_UUID>1 ...Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- IMSM 컨테이너의 UUID입니다.
RHCOS를 설치하는 데 필요한 추가
coreos-installer인수를 포함합니다.