Yum repo 서버를 아카이브 캐시로 사용

Yum repo 서버를 아카이브 캐시로 사용

우리 소프트웨어 스택에는 특정 버전의 RPM 패키지가 필요합니다. 불행히도 이러한 패키지 중 일부는 시간이 지남에 따라 더 이상 사용되지 않으며 관리자가 아카이브(EPEL, Percona 등)를 보관하지 않기 때문에 저장소에서 제거됩니다.

구성 관리에 문제가 있습니다. 우리는 이전 컴퓨터와 동일한 소프트웨어를 사용하여 새 컴퓨터를 프로비저닝하고 싶습니다(우리는 Puppet을 사용합니다).

표준 솔루션은 우리가 직접 설정한 개인 YUM 저장소에서 이러한 패키지를 호스팅하는 것 같습니다. 이는 소스에서 컴파일해야 하는 패키지에도 유용합니다.

내 질문은 다음과 같습니다모든 에이전트가 거기에서 패키지를 다운로드하고 repo 서버가 외부 원본 소스에서 패키지를 다운로드한 다음 로컬로 캐시할 수 있도록 Yum repo 서버에 대한 "프록시 도구"에 대해 알고 계십니까? (원래 저장소에서 사라지는 경우)

Java 세계의 비유는 Maven 리포지토리 서버인 Archiva이지만 공개 리포지토리에 대한 요청을 프록시하고 로컬로 캐시하는 데에도 사용할 수 있습니다.

OS: 센토스 6.4

감사합니다

답변1

나는 mrepo이것이 훌륭한 도구라고 생각합니다. 업스트림 저장소를 가리키면 로컬로 미러링됩니다. 구성 옵션 lftp-cleanup = norhnget-cleanup = no은 패키지가 업스트림에서 삭제될 때 로컬 미러에서 패키지가 삭제되는 것을 방지합니다.

다그의 mrepo

답변2

원하는 특정 RPM 버전을 다운로드하세요. 원하는 패키지만 포함하는 로컬 저장소를 만드세요. 클라이언트가 새 로컬 저장소를 가리키도록 하세요. 원하는 대로 작동하지 않는 공개 기능 사용을 중지하세요.

시작하려면:

yum -y install createrepo && man createrepo

답변3

우주 유영이것을 처리할 수 있습니다. (EL7에서는 다음으로 대체됩니다.펄프그리고 아마도카텔로.)

관련 정보