ls -l /etc/yum.repos.d/cloudera*.repo
cat /etc/yum.repos.d/cloudera-manager.repo
sudo yum clean all && sudo yum makecache
yum repolist enabled | grep -i cloudera
yum repoinfo cloudera-manager
yum --disablerepo="*" --enablerepo="cloudera-manager" list available | head
yum list available cloudera-manager-server cloudera-manager-agent cloudera-manager-daemons
정상이면 repo 목록에 cloudera-manager 가 나오고 패키지 수가 0 이 아니다. GPG 키 등록은 다음으로 본다.
rpm -qa gpg-pubkey* | xargs -I {} rpm -qi {} | grep -i cloudera
CM 7.x 의 paywall 저장소(/p/ 경로)는 인증이 필요하다. 자격증명을 명령행에 직접 넣으면 히스토리와 ps 에 남으므로 .netrc 를 쓴다.
cat > ~/.netrc <<'EOT'
machine archive.cloudera.com
login ${CLOUDERA_USER}
password ${CLOUDERA_PASSWORD}
EOT
chmod 600 ~/.netrc
curl -I --netrc https://archive.cloudera.com/p/cm7/7.13.2/redhat9/yum/repodata/repomd.xml
HTTP/2 200 이면 네트워크와 인증이 모두 정상이고, 401 이면 자격증명이 틀렸거나 라이선스가 만료된 것이다. /etc/yum.repos.d/cloudera-manager.repo 의 username= · password= 줄이 들어간 파일도 권한을 640 이하로 제한한다.
sudo chown root:root /etc/yum.repos.d/cloudera-manager.repo
sudo chmod 640 /etc/yum.repos.d/cloudera-manager.repo
ls -l /etc/apt/sources.list.d/cloudera*.list
sudo apt-get update
apt-cache policy | grep -i cloudera
apt-cache madison cloudera-manager-server
| 응답 | 원인 |
|---|---|
| 401 Unauthorized | paywall 저장소의 자격증명 누락 · 만료 |
| 403 Forbidden | 라이선스가 해당 버전 경로에 없음 |
| 404 Not Found | 버전 경로(7.x.x) 나 OS 경로(redhat8 · redhat9) 오타 |
| 이름 해석 실패 | 프록시 · 사내 DNS 설정. proxy= 를 repo 파일이나 /etc/yum.conf 에 추가 |
repo 검증이 끝나면 사전 패키지를 설치하고 CM Server 를 올린다.
sudo dnf install -y wget curl chrony python3 bash-completion which initscripts \
psmisc cyrus-sasl-plain cyrus-sasl-gssapi libxslt openssl-devel
sudo systemctl enable --now chronyd
호스트명 · /etc/hosts · 시간 동기화는 전 노드에서 일관되게 맞춘다.