서버 운영 관리 [ Tip ]

CentOS/Ubuntu 저장소(repository) 위치 변경

최근 Ubuntu 운영체제에서 저장소(repository) 서버와의 속도에 불편함이 있다는 지적에 이미지내 기본배포 저장소(repository) 위치를 수정하여 적용하였습니다.

수정본 이미지는 2017. 12.15. 15시 이후 생성된 인스턴스부터 적용되었으며 기존 사용자들중 저장소(repository) 속도에 불편함이 있으신 경우는 아래 내용을 참고하여 운영하시기 바랍니다.

 

변경사항은 Ubuntu 계열만 해당되며 RHEL/CentOS 사용자는 아래에 추가된 내용을 참고하시기 바랍니다.

- 저장소 위치 변경 
ftp.daumkakao.com 고정
rCore.clouods.archive.ubuntu.com --> ftp.daumkakao.com

# sed -i "s/rCore.clouds.archive.ubuntu.com/ftp.daumkakao.com/g" /etc/apt/sources.list
# apt-get update

 

 

이와는 별개로 저장소 선택에는 다양한 방법이 있으니 참고하시기 바랍니다.

테스트환경 : IWINV rCore.P1

 

 

Ubuntu 계열

1. 미러 프로토콜 사용
미러 프로토콜을 사용하여 해당 국가내 위치되어있는 미러리스트 활용

deb http://rCore.clouds.archive.ubuntu.com/ubuntu/ xenial main restricted
   --> 수정
deb mirror://mirrors.ubuntu.com/mirrors.txt xenial main restricted

# sed -i "s/http:\/\/rCore.clouds.archive.ubuntu.com\/ubuntu\//mirror:\/\/mirrors.ubuntu.com\/mirrors.txt/g" /etc/apt/sources.list
# apt-get update

 

 

2. apt 저장소 위치 고정
경험을 토태로 신뢰성있는 저장소를 선택해서 고정

# wget -qO - mirrors.ubuntu.com/mirrors.txt
http://ftp.lanet.kr/ubuntu/
http://kr.archive.ubuntu.com/ubuntu/
http://ftp.neowiz.com/ubuntu/
http://archive.ubuntu.com/ubuntu/

 

3. netselect 를 활용해서 가장 빠른 미러선택 
netselect 패키지가 우분투내 저장소에서 제공되지 않기에 데비안 저장소에서 다운로드

# wget http://ftp.au.debian.org/debian/pool/main/n/netselect/netselect_0.3.ds1-28+b1_amd64.deb
# netselect -s 20 -t 40 $(wget -qO - mirrors.ubuntu.com/mirrors.txt)

 

결과를 참고해서 저장소 위치 반영

# sed -i "s/rCore.clouds.archive.ubuntu.com/kr.archive.ubuntu.com/g" /etc/apt/sources.list
# apt-get update

 

 

RHEL/CentOS 계열

IWINV내에서 배포되는 이미지에는 이미 fastmirror 플러그인 적용되어 스스로 가장 빠른 저장소 위치를 찾아갑니다.

단, icmp latency 기준으로 저장소 위치를 찾기에 간혹...아주 간혹 해외쪽 주소로 넘어가기도 합니다.
따라서 잦은 업데이트가 필요하신분들에 경우에는 아래 1과 같은 신뢰성있는 저장소를 고정해서 사용하는것을 추천드립니다.
이외에도 아래와 같은 방법으로 저장소 위치 활용이 가능하니 참고하시기 바랍니다.

 

1. fastmirror 비활성화 -> mirror 서버고정
fastmirror disable
enabled=0 값을 1로 수정

# sed -i "s/enabled=1/enabled=0/g" /etc/yum/pluginconf.d/fastestmirror.conf



mirrorlist를 주석처리하고 주석처리된 baseurl 저장소 위치수정 (본문에서는 ftp.daumkakao.com 으로 변경)

# cat /etc/yum.repos.d/CentOS-Base.repo

[base]
name=CentOS-$releasever - Base
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=os&infra=$infra
baseurl=http://ftp.daumkakao.com/centos/$releasever/os/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#released updates
[updates]
name=CentOS-$releasever - Updates
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=updates&infra=$infra
baseurl=http://ftp.daumkakao.com/centos/$releasever/updates/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that may be useful
[extras]
name=CentOS-$releasever - Extras
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=extras&infra=$infra
baseurl=http://ftp.daumkakao.com/centos/$releasever/extras/$basearch/
gpgcheck=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

#additional packages that extend functionality of existing packages
[centosplus]
name=CentOS-$releasever - Plus
#mirrorlist=http://mirrorlist.centos.org/?release=$releasever&arch=$basearch&repo=centosplus&infra=$infra
baseurl=http://ftp.daumkakao.com/centos/$releasever/centosplus/$basearch/
gpgcheck=1
enabled=0
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-7

 


2. fastmirror 재설정
fastmirror 플러그인이 계속해서 엉뚱한 해외로 mirror 주소를 찾는다면 cache 를 삭제하고 다시설정

# yum clean all
or
# rm /var/cache/yum/timedhosts.txt

 


3. yum exclude 옵션활용
exclude 옵션을 활용해서 conf 파일내 느린 mirror 주소 예외처리 (본문에서는 centos.mirror.cdnetworks.com 제외)

# cat /etc/yum/pluginconf.d/fastestmirror.conf
[main]
enabled=1
verbose=0
always_print_best_host = true
socket_timeout=3
# Relative paths are relative to the cachedir (and so works for users as well
# as root).
hostfilepath=timedhosts.txt
maxhostfileage=10
maxthreads=15
exclude=.gov, facebook, cdnetworks
#include_only=.nl,.de,.uk,.ie