2.3. 자동화 허브를 사용한 리포지토리 관리
플랫폼 관리자는 리포지토리 간에 자동화 콘텐츠 컬렉션을 생성, 편집, 삭제 및 이동할 수 있습니다.
2.3.1. 자동화 허브의 리포지토리 유형
자동화 허브에서는 컬렉션을 확인할지 여부에 따라 두 가지 유형의 리포지토리에 컬렉션을 게시할 수 있습니다.
- 스테이징 리포지토리
-
네임스페이스에 업로드할 권한이 있는 모든 사용자는 이러한 리포지토리에 컬렉션을 게시할 수 있습니다. 이러한 리포지토리의 컬렉션은 검색 페이지에서 사용할 수 없습니다. 대신 관리자가 확인할 승인 대시보드에 표시됩니다. 스테이징 리포지토리는
pipeline=staging
레이블로 표시됩니다. - 사용자 정의 리포지토리
- 리포지토리에 대한 쓰기 권한이 있는 모든 사용자는 이러한 리포지토리에 컬렉션을 게시할 수 있습니다. 사용자 지정 리포지토리는 모든 사용자가 볼 수 있는 퍼블릭 또는 보기 권한이 있는 사용자만 볼 수 있는 프라이빗 리포지토리일 수 있습니다. 이러한 리포지토리는 승인 대시보드에 표시되지 않습니다. 리포지토리 소유자가 검색을 활성화하면 검색 결과에 컬렉션이 표시될 수 있습니다.
기본적으로 자동화 허브에는 컬렉션을 업로드하는 데 리포지토리를 지정하지 않을 때 자동으로 사용되는 하나의 스테이징 리포지토리가 포함됩니다. 사용자는 리포지토리 생성 중에 새 스테이징 리포지토리를 생성할 수 있습니다.
2.3.2. 자동화 허브의 사용자 정의 리포지토리에 대한 승인 파이프라인
자동화 허브에서는 pipeline=approved
라벨이 표시된 모든 리포지토리에 컬렉션을 승인할 수 있습니다. 기본적으로 자동화 허브에는 승인된 콘텐츠를 위한 리포지토리가 하나 포함되어 있지만 리포지토리 생성 화면에서 더 추가할 수 있는 옵션이 있습니다. pipeline=approved
레이블이 표시된 리포지토리에 직접 게시할 수 없습니다. 컬렉션은 먼저 스테이징 리포지토리를 통해 이동하고 'pipleline=approved' 리포지토리에 게시되기 전에 승인해야 합니다.
- 자동 승인
-
자동 승인이 활성화되면 스테이징 리포지토리에 업로드하는 모든 컬렉션이
pipeline=approved
로 표시된 모든 리포지토리로 자동으로 승격됩니다. - 승인 필요
자동 승인이 비활성화되면 관리자는 승인 대시보드를 보고 스테이징 리포지토리에 업로드된 컬렉션을 확인할 수 있습니다. 승인 별 정렬에는 승인된 리포지토리 목록이 표시됩니다. 이 목록에서 관리자는 콘텐츠를 승격해야 하는 하나 이상의 리포지토리를 선택할 수 있습니다.
승인된 리포지토리가 하나만 있는 경우 컬렉션이 자동으로 승격되고 관리자가 리포지토리를 선택하라는 메시지가 표시되지 않습니다.
- 거부
- 거부된 컬렉션은 사전 설치된 거부된 리포지토리에 자동으로 배치됩니다.
2.3.3. 사용자 정의 리포지토리에 대한 액세스를 제한하는 역할 기반 액세스 제어
RBAC(역할 기반 액세스 제어)를 사용하여 사용자 역할에 따라 액세스 권한을 정의하여 사용자 지정 리포지토리에 대한 사용자 액세스를 제한합니다. 기본적으로 사용자는 자동화 허브의 모든 공용 리포지토리를 볼 수 있지만 역할에서 액세스를 허용하지 않는 한 리포지토리를 수정할 수 없습니다. 리포지토리의 다른 작업에 동일한 논리가 적용됩니다. 예를 들어 역할 권한을 변경하여 사용자 지정 리포지토리에서 콘텐츠를 다운로드할 수 있는 사용자의 기능을 제거할 수 있습니다. 자동화 허브에 대한 사용자 액세스 관리에 대한 자세한 내용은 액세스 관리 및 인증을 참조하십시오.
2.3.4. 자동화 허브에서 사용자 정의 리포지토리 생성
Red Hat Ansible Automation Platform을 사용하여 리포지토리를 생성하면 리포지토리를 비공개로 구성하거나 검색 결과에서 숨길 수 있습니다.
프로세스
- Ansible Automation Platform에 로그인합니다.
-
탐색 패널에서
를 선택합니다. - 클릭합니다.
- 리포지토리 의 이름을 입력합니다.
- Description (설명) 필드에서 리포지토리의 목적을 설명합니다.
변경할 때마다 이전 버전의 리포지토리를 유지하려면 Retained number of versions 라는 필드에 숫자를 입력합니다. 유지된 버전 수는 0에서 무제한까지 지정할 수 있습니다. 모든 버전을 저장하려면 이 값을 null로 설정합니다.
참고사용자 지정 리포지토리를 변경하는 데 문제가 있는 경우 보존한 다른 리포지토리 버전으로 되돌릴 수 있습니다.
Pipeline 필드에서 리포지토리의 파이프라인을 선택합니다. 이 옵션은 컬렉션을 리포지토리에 게시할 수 있는 사용자를 정의합니다.
- 스테이징
- 누구나 자동화 콘텐츠를 리포지토리에 게시할 수 있습니다.
- 승인됨
- 이 리포지토리에 추가된 컬렉션은 스테이징 리포지토리를 통해 승인 프로세스를 거쳐야 합니다. 자동 승인이 활성화되면 스테이징 리포지토리에 업로드된 모든 컬렉션이 승인된 모든 리포지토리로 자동으로 승격됩니다.
- 없음
- 리포지토리에 대한 권한이 있는 모든 사용자는 리포지토리에 직접 게시할 수 있으며 리포지토리는 승인 파이프라인의 일부가 아닙니다.
- 선택 사항: 검색 결과에서 리포지토리를 숨기려면 검색에서 숨기기 를 선택합니다.
- 선택 사항: 리포지토리를 비공개로 만들려면 개인용으로 만들기 를 선택합니다. 리포지토리를 볼 수 있는 권한이 없는 모든 사용자가 리포지토리를 숨깁니다.
- 원격 리포지토리의 콘텐츠를 이 리포지토리에 동기화하려면 Remote 필드에서 사용자 지정 리포지토리에 포함할 컬렉션이 포함된 원격을 선택합니다. 자세한 내용은 리포지토리 동기화를 참조하십시오.
- 클릭합니다.
다음 단계
리포지토리가 생성되면 세부 정보 페이지가 표시됩니다.
여기에서 리포지토리에 대한 액세스 권한을 제공하고, 컬렉션을 검토하거나 추가하고, 저장된 사용자 지정 리포지토리 버전에서 작업할 수 있습니다.
2.3.5. 사용자 정의 자동화 허브 리포지토리에 대한 액세스 제공
기본적으로 개인 리포지토리 및 자동화 콘텐츠 컬렉션은 시스템의 모든 사용자에게 숨겨집니다. 공용 리포지토리는 모든 사용자가 볼 수 있지만 수정할 수는 없습니다. 사용자 지정 리포지토리에 대한 액세스 권한을 제공하려면 다음 절차를 사용하십시오.
프로세스
- 프라이빗 자동화 허브에 로그인합니다.
-
탐색 패널에서
를 선택합니다. - 목록에서 리포지토리를 클릭하고 Team Access 탭을 선택합니다.
- 클릭합니다.
- 역할을 부여할 팀을 선택한 다음을 클릭합니다.
- 선택한 팀에 적용할 역할을 선택한 다음 를 클릭합니다.
- 선택을 검토하고 을 클릭합니다.
- 를 클릭하여 프로세스를 완료합니다.
사용자 액세스 구현에 대한 자세한 내용은 액세스 관리 및 인증을 참조하십시오.
2.3.6. 자동화 허브 리포지토리에 컬렉션 추가
리포지토리를 생성한 후 자동화 콘텐츠 컬렉션을 추가할 수 있습니다.
프로세스
-
탐색 패널에서
를 선택합니다. - 목록에서 리포지토리를 클릭합니다.
- 컬렉션 버전 탭을 선택합니다.
- 를 클릭하고 리포지토리에 추가할 컬렉션을 선택합니다.
- 를 클릭합니다.
2.3.7. 다른 자동화 허브 리포지토리 버전으로 되돌리기
리포지토리에서 자동화 콘텐츠 컬렉션이 추가되거나 제거되면 새 버전이 생성됩니다. 리포지토리에 변경해도 문제가 발생하면 이전 버전으로 되돌릴 수 있습니다. 되돌리기는 안전한 작업이며 시스템에서 컬렉션을 삭제하지 않고 리포지토리와 연결된 콘텐츠를 변경합니다. 저장된 버전 수는 리포지토리가 생성 될 때 Retained 버전 설정 수 에 정의되어 있습니다.
프로세스
- Ansible Automation Platform에 로그인합니다.
-
탐색 패널에서
를 선택합니다. - 목록에서 리포지토리를 클릭한 다음 버전 탭을 선택합니다.
- 되돌리려는 버전을 찾은 다음 이 버전으로 Revert를 선택합니다. 아이콘 을 클릭하고
- 선택 사항을 확인하는 상자를 선택한 다음 을 클릭합니다.
2.3.8. 자동화 허브에서 원격 구성 관리
자동화 허브를 실행하는 모든 서버에 원격 구성을 설정할 수 있습니다. 원격 구성을 사용하면 외부 컬렉션 소스에서 사용자 지정 리포지토리에 콘텐츠를 동기화할 수 있습니다.
2.3.8.1. 자동화 허브에서 원격 구성 생성
Red Hat Ansible Automation Platform을 사용하여 외부 컬렉션 소스에 대한 원격 구성을 생성할 수 있습니다. 그런 다음 해당 컬렉션의 콘텐츠를 사용자 지정 리포지토리에 동기화할 수 있습니다.
프로세스
- Ansible Automation Platform에 로그인합니다.
-
탐색 패널에서
를 선택합니다. - 클릭합니다.
- 원격 구성 의 이름을 입력합니다.
특정 리포지토리의 경로를 포함하여 원격 서버의 URL 을 입력합니다.
참고원격 서버 URL 및 리포지토리 경로를 찾으려면
로 이동하여 아이콘을 선택하고 선택합니다. 외부 컬렉션에 액세스하는 데 필요한 토큰 또는 사용자 이름 및 암호를 입력하여 원격 서버에 대한 인증 정보를 구성합니다.
참고탐색 패널에서 토큰을 생성하려면
를 클릭하고 로드된 토큰을 복사합니다. - console.redhat.com에서 컬렉션에 액세스하려면 SSO URL 을 입력하여 ID 공급자(IdP)에 로그인합니다.
요구 사항 파일을 선택하거나 생성하여 사용자 지정 리포지토리와 동기화할 컬렉션 및 버전 범위를 식별합니다. 예를 들어 kubernetes 및 AWS 컬렉션 버전 5.0.0 이상만 다운로드하려면 요구 사항 파일은 다음과 같습니다.
Collections: - name: community.kubernetes - name: community.aws version:”>=5.0.0”
참고모든 컬렉션 종속 항목은 동기화 프로세스 중에 다운로드됩니다.
선택 사항: 원격을 추가로 구성하려면 고급 옵션 표시에서 사용할 수 있는 옵션을 사용하십시오.
- 조직의 회사 프록시가 있는 경우 프록시 URL , Proxy Username 및 Proxy Password 를 입력합니다.
- TLS 검증 확인란을 사용하여 전송 계층 보안을 활성화하거나 비활성화합니다.
- 인증에 디지털 인증서가 필요한 경우 클라이언트 키 및 클라이언트 인증서 를 입력합니다.
- 서버에 자체 서명된 SSL 인증서를 사용하는 경우 CA 인증서 필드에 인증에 사용되는 PEM 인코딩 클라이언트 인증서를 입력합니다.
- 이 원격에서 컬렉션을 다운로드할 수 있는 속도를 가속화하려면 Download concurrency 필드에서 tandem에서 다운로드할 수 있는 컬렉션 수를 지정합니다.
이 원격에서 초당 쿼리 수를 제한하려면 속도 제한을 지정합니다.
참고일부 서버에는 특정 속도 제한이 있을 수 있으며, 이를 초과하면 동기화가 실패합니다.
2.3.8.2. 원격 구성에 대한 액세스 제공
원격 구성을 생성한 후 누구나 사용할 수 있으려면 액세스 권한을 제공해야 합니다.
프로세스
- Ansible Automation Platform에 로그인합니다.
-
탐색 패널에서
를 선택합니다. - 목록에서 리포지토리를 클릭한 다음 Team Access 탭을 선택합니다.
- 클릭합니다.
- 역할을 부여할 팀을 선택한 다음을 클릭합니다.
- 선택한 팀에 적용할 역할을 선택한 다음 를 클릭합니다.
- 선택을 검토하고 을 클릭합니다.
- 를 클릭하여 프로세스를 완료합니다.
2.3.9. 자동화 허브에서 리포지토리 동기화
하나의 자동화 허브에서 다른 자동화 허브로 리포지토리를 동기화하여 사용자에게 관련 자동화 콘텐츠 컬렉션을 배포할 수 있습니다. 최신 컬렉션 업데이트가 있는지 확인하려면 사용자 지정 리포지토리를 원격과 정기적으로 동기화합니다.
프로세스
- Ansible Automation Platform에 로그인합니다.
-
탐색 패널에서
를 선택합니다. 목록에서 리포지토리를 찾고 Sync repository 를 선택합니다.
아이콘을 클릭한 다음구성된 원격의 모든 컬렉션은 사용자 지정 리포지토리에 다운로드됩니다. 컬렉션 동기화 상태를 확인하려면 탐색 패널에서
를 선택합니다. 참고원격 내의 특정 컬렉션으로 리포지토리 동기화를 제한하려면 requirements.yml 파일을 사용하여 가져올 특정 컬렉션을 식별할 수 있습니다. 자세한 내용은 원격 만들기 를 참조하십시오.
추가 리소스
요구 사항 파일 사용에 대한 자세한 내용은 요구 사항 파일 생성을 참조하십시오.
2.3.10. 자동화 허브에서 컬렉션 내보내기 및 가져오기
Ansible 자동화 허브는 리포지토리 내에 자동화 콘텐츠 컬렉션을 저장합니다. 이러한 컬렉션은 자동화 콘텐츠 작성자가 버전입니다. 동일한 컬렉션의 여러 버전이 동일하거나 다른 리포지토리에 동시에 존재할 수 있습니다.
컬렉션은 가져오고 내보낼 수 있는 .tar 파일로 저장됩니다. 이 스토리지 형식을 사용하면 새 리포지토리로 가져오는 컬렉션이 원래 생성 및 내보낸 것과 동일합니다.
2.3.10.1. 자동화 허브에서 자동화 콘텐츠 컬렉션 내보내기
컬렉션이 완료되면 조직 전체의 다른 사용자에게 배포할 수 있는 위치로 가져올 수 있습니다.
프로세스
- Ansible Automation Platform에 로그인합니다.
-
탐색 패널에서
. 컬렉션 페이지에는 모든 리포지토리의 모든 컬렉션이 표시됩니다. 특정 컬렉션을 검색할 수 있습니다. - 내보낼 컬렉션을 클릭합니다. 컬렉션 세부 정보 페이지가 열립니다.
- Install 탭에서 tarball 다운로드를 선택합니다. .tar 파일은 기본 브라우저 다운로드 폴더에 다운로드됩니다. 이제 선택한 위치로 가져올 수 있습니다.
2.3.10.2. 자동화 허브에서 자동화 콘텐츠 컬렉션 가져오기
자동화 콘텐츠 작성자는 사용자 지정 리포지토리에 사용할 컬렉션을 가져올 수 있습니다. 사용자 지정 리포지토리에서 컬렉션을 사용하려면 먼저 자동화 허브 관리자가 승인할 수 있도록 컬렉션을 네임스페이스로 가져와야 합니다.
프로세스
- Ansible Automation Platform에 로그인합니다.
-
탐색 패널에서
선택합니다. 네임스페이스 페이지에는 사용 가능한 모든 네임스페이스가 표시됩니다. - 컬렉션을 추가할 네임스페이스를 선택합니다.
- 컬렉션 탭을 선택합니다.
- 을 클릭합니다.
- 컬렉션 파일을 입력하거나 찾습니다.
- 리포지토리 파이프라인을 선택하여 컬렉션을 추가합니다. 선택 사항은 파이프라인이 없는 스테이징 리포지토리 및 리포지토리 입니다.
가져오기 화면에 테스트 요약이 표시되고 컬렉션 업로드 성공 또는 실패 여부를 알립니다. 가져오기를 찾으려면 네임스페이스에서 아이콘을 클릭하고 Imports 를 선택합니다.
참고컬렉션이 승인되지 않으면 게시된 리포지토리에 표시되지 않습니다.
추가 리소스
- 컬렉션 및 리포지토리 승인에 대한 자세한 내용은 승인 파이프라인 을 참조하십시오.