공유할 서비스 선택

TECH


TECH

OS [Linux] Repository Server 구성

페이지 정보

작성자 Leesangwoo 아이디로 검색 전체게시물 댓글 0건 조회 11,857회 좋아요 2회 작성일 20-03-17 14:08

본문

1. 구성 목적

  - 폐쇠망의 경우 외부랑 통신이 어렵기 때문에 rpm 패키지를 개별로 받아서 설치해야되는 번거로움이 있다.
   이경우 Repository Server를 DMZ 망에 구성후 내부망에 서버들을 Repository Server를 바라보게 하여 yum을 사용 가능하게 할 수 있습니다.

 

 

 

 

 

 

2. Repository Server 사전 설정

 2.1 DNS 설정

   - Redhat 과 통신이 ip가 아닌 URL 통신이라 DNS 설정이 필요합니다.

     /etc/resolv.conf 파일에 nameserver 168.126.63.1 입력하여 줍니다.


    14b9ea4f1c7710f8241119f22313e1ff_1584595038_5906.jpg






 2.2 통신 테스트 
   => ping rhn.redhat.com ( redhat과 통신이 되어야 repository 구성이 가능합니다. )
   ※ 아래 리스트는 redhat 서버의 리스트입니다.
    • rhn.redhat.com on port 80 (http)
    • rhn.redhat.com on port 443 (https)
    • cdn.redhat.com on port 80 (http)
    • cdn.redhat.com on port 443 (http)
    => 상세한 자료는 https://access.redhat.com/ko/solutions/963023를 참조 부탁드립니다.








 2.3 Red Hat Subscription 등록
   • cui - subscription-manager register --username <username> --password <password> --auto-attach
     
    14b9ea4f1c7710f8241119f22313e1ff_1584595070_991.JPG


   • gui - subscription-manager-gui
     
     14b9ea4f1c7710f8241119f22313e1ff_1584596339_1703.JPG
    


   • 확인 - subscription-manager list --available --all









 2.4 repository 파일 생성
   • yum clean all ( 해당 명령어로 모든 repo 정보를 지웁니다. )
   • yum repolist ( Redhat repo config 를 받아옵니다. )
   • repository 파일 생성 완료 후 수정이 필요합니다.






  1) 명령어를 통한 설정
    • subscription-manager repos --enable=rhel-7-server-extras-rpms ( 가이드
    • yum-config-manager --enable rhel-7-server-extras-rpms ( 가이드 )
      위 2개의 명령어로도 활성화가 되지만 파일 수정으로도 활성화가 가능합니다.





  2) config 파일 수정을 통한 설정 
    vim /etc/yum.repos.d/redhat.repo 파일에서 enabled 부분 수정합니다.
9fdbfabafc2199d8cb12e5cf63ebb7fd_1584432069_9744.png







 2.5 web server 설치
   yum install httpd 로 apache 웹서버 설치를 합니다.
   웹서버를 설치하는 이유는 yum을 가져오는 방식이 web인 80 port로 통신하기 때문입니다.






 2.6 서버 디스크 공간 확인
   Repository 서버를 구성할 때 Redhat으로 받아오는 패키지가 31000개 가까이 되며 용량도 최소 50GB가 필요합니다.










3 Repository Server 구성
 3.1 패키지 ( rpm ) 다운
   apache 웹서버의 폴더인 /var/www/html 경로에 Redhat 서버로부터 패키지를 다운 받습니다.
   패키지 다운로드 명령어는 reposync -l --download_path=/var/www/html 입니다.
   패키지 확인은 ls /var/www/html/rhel-7-server-rpms/Packages/ 가능합니다.

   14b9ea4f1c7710f8241119f22313e1ff_1584595599_3.jpg






 3.2 repository 생성
   Redhat 서버로부터 패키지를 받으면 각 repoid 폴더 별로 받아집니다.
   repoid 폴더 하위에 Packages라는 폴더가 있지만, repoid 별로 xml 형식의 repo matadata가 생성되어 있어야 repository 정보를 가져올 수 있습니다.
   명령어는 createrepo /var/www/html/rhel-7-server-rpms(repoid)/ 입니다.
   확인해보면 ls /var/www/html/rhel-7-server-rpms/ 폴더 아래 repodata 폴더가 생성된 것을 확인할 수 있습니다.
   
   14b9ea4f1c7710f8241119f22313e1ff_1584596226_7861.jpg






 3.3 apache 서버 시작 및 접속 
   systemctl start httpd ( systemctl enable httpd
   apache 서버 시작 후 웹브라우저로 http://127.0.0.1/rhel-7-server-rpms 접속하면 Packages와 repodata 가 보이면 서버 구성은 완료가 되었습니다.

   14b9ea4f1c7710f8241119f22313e1ff_1584595957_8013.JPG








4. Client repository 설정
 4.1 repository config 설정
    /etc/yum.repos.d/repo.repo 파일에 아래 config를 입력해 줍니다.
9fdbfabafc2199d8cb12e5cf63ebb7fd_1584434451_3445.JPG







 4.2 repository matadata를 받아오기
   • yum clean all ( 해당 명령어로 모든 repo 정보를 지웁니다. )
   • yum repolist ( repo config 정보를 기준으로 repository 서버에서 repo matadata를 받아옵니다. )
9fdbfabafc2199d8cb12e5cf63ebb7fd_1584434647_9904.jpg









 4.3 repository 정보 확인
    yum list ( 현재 yum으로 설치 가능한 리스트입니다. )
9fdbfabafc2199d8cb12e5cf63ebb7fd_1584434935_5615.jpg

댓글목록

등록된 댓글이 없습니다.


주식회사 클럭스| 대표 : 이찬호| 사업자등록번호 : 107-87-27655
주소 : 서울특별시 영등포구 국회대로 800, 여의도파라곤
E-mail : sales@chlux.co.kr
Copyright © 클럭스 chlux.co.kr All rights reserved.
상단으로Top