충돌하는 패키지가 포함된 사용자 정의 채널 문제 해결

부트스트랩 리포지토리 생성과 같은 충돌하는 패키지 기능으로 사용자 정의 채널을 설정할 때 정의되지 않은 동작이 발생하고 클라이언트 등록이 실패할 수 있습니다.

예를 들어, 버전 번호가 더 높은 충돌하는 패키지가 부트스트랩 리포지토리에 포함될 수 있습니다. 이러한 패키지(예: python3-zmq 또는 zeromq)는 부트스트랩 리포지토리의 생성을 손상시키거나 클라이언트 부트스트랩 중에 문제를 일으킬 수 있습니다.

사용자 정의 채널(예: EPEL 채널)이 상위 벤더 채널 아래에 추가되면 충돌하는 패키지 문제를 직접 해결할 수 없습니다. 이를 해결하는 방법은 사용자 정의 채널을 벤더 채널과 분리하는 것입니다. 사용자 정의 채널은 별도의 트리에서 생성해야 합니다. 사용자 정의 채널이 하위로 전달되어야 하는 경우 CLM(컨텐트 라이프싸이클 관리)을 사용하여 이러한 환경을 생성할 수 있습니다. 다른 트리에서 CLM 프로젝트의 소스를 추가할 수 있습니다. 이러한 접근법을 사용하면 사용자 정의 채널이 빌드 환경 내에서 상위 아래에 유지됩니다. 그러나 벤더 채널 트리는 사용자 정의 채널 및 부트스트랩 리포지토리 없이 유지됩니다. 그러면 클라이언트 등록이 올바르게 작동합니다.

충돌하는 패키지(salt, zeromq 등)가 포함된 사용자 정의 채널이 하위 채널로 생성되는 경우 다음 단계를 통해 문제를 방지할 수 있습니다.

절차: 사용자 정의 채널에서 패키지 충돌 방지
  1. 상위 채널에서 하위 채널로 사용자 정의 채널을 제거합니다. 자세한 내용은 administration:custom-channels.adoc#_manage_custom_channels에서 확인할 수 있습니다.

  2. 별도의 트리에 사용자 정의 채널을 생성합니다. 자세한 내용은 administration:custom-channels.adoc#_creating_custom_channels_and_repositories에서 확인할 수 있습니다.

  3. CLM(컨텐트 라이프싸이클 관리)에서 사용자 정의 채널을 하위 채널로 임포트하려면 다음을 실행합니다.

    • SUSE Manager Web UI에서 컨텐트 라이프싸이클로 이동하고 프로젝트 생성을 클릭합니다. 이름레이블을 입력합니다.

    • 프로젝트에 소스를 연결합니다. 필요한 벤더 채널과 사용자 정의 채널을 사용합니다. // (CentOS8을 이용한 공유 예)

    • 프로젝트에 환경을 추가합니다. // CentOS8을 사용한 예

    • 환경을 빌드하려면 빌드 버튼을 클릭합니다. 이 작업을 수행하면 활성화 키와 연결되고 클라이언트를 부트스트랩하기 위해 사용할 수 있는 벤더 및 사용자 정의 채널이 포함된 환경이 생성됩니다.

  4. 중요 참고: CLM 프로젝트에서, 문제가 있거나 충돌하는 패키지를 제외하는 필터를 추가하는 것이 좋습니다. 그렇지 않으면 클라이언트 업데이트 중에 버전 번호가 더 높은 충돌하는 패키지가 설치됩니다. 필터링에 대한 자세한 내용은 administration:content-lifecycle-examples.adoc#exclude-higher-kernel-version에서 확인할 수 있습니다.

  5. CLM 환경(벤더 및 사용자 정의 채널 포함)에 최신 패치를 패치하려면 프로젝트에서 빌드 버튼을 클릭합니다. 이는 환경을 다시 빌드하기 위해 필요합니다.