메모

cent os 7 eos에 따른 repo 이슈 해결

4567은 소수 2025. 2. 23. 21:45

k8s한지 너무 오래되서 복습 겸 전에 봤던 책을 다시 보고 있다. 환경 구성부터 다시하고 있는데 vagrant로 centos vm 인스턴스 설치하는 도중 아래 에러가 발생해서 정리해본다. 

 

Could not retrieve mirrorlist http://mirrorlist.centos.org/?release=7&arch=x86_64&repo=os&infra=stock error was

curl#6 - "Could not resolve host: mirrorlist.centos.org; Unknown error"

 

현재 사용 중인 vm이 centos7 버전으로 만든 건데, centos7이 EOS되어 발생하는 에러이다. 따라서 yum repo의 url을 아래와 같이 변경하면 된다. 

vagrant 기준으로, 프로비저닝할 때 패키지 설치할 shell 파일 이름을 centos_vault_pkg.sh 이라 하고 Vagrant 파일에 아래 내용을 추가한다. 

cfg.vm.provision "shell", path: "./centos_vault_pkg.sh"

 

centos_vault_pkg.sh은 아래와 같다.

(vagrant 뿐만 아니라 centos7 EOS에 따른 repo 문제 해결은 아래 명령어를 그대로 하면 된다.)

(참고 : https://developer-woong.tistory.com/112)

# yum 백업
cd /etc/yum.repos.d
mkdir old_repo
mv CentOS* old_repo

# Vault 저장소 설정
sudo tee /etc/yum.repos.d/CentOS-Vault.repo <<EOF

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

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

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

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

EOF

# yum cache 삭제
yum clean all

# 테스트
yum install -y libtool

# pkg 설치
yum install epel-release -y

 

이전 프로비저닝이 하다 말았으므로 vagrant destroy -f 로 싹 밀어주고 vagrant up 해주면 깔끔하게 프로비저닝이 완료된다.