Rocky Linux 9 계열에 Foreman 3.17·Katello 4.19를 설치하는 원노트를 정리했습니다. 기존 서비스가 없는 전용 호스트를 기준으로 하며 DNS·시간 동기화·자원 요구 사항과 해당 버전 지원 OS를 공식 설치 문서에서 먼저 확인합니다.
FQDN과 네트워크 준비
Foreman 서버 이름은 foreman.example.com 같은 FQDN으로 정하고 정방향·역방향 이름 해석을 확인합니다. 임시 hosts 등록만으로 모든 관리 호스트의 DNS가 준비됐다고 보지 않습니다. 조직·위치 이름과 필요한 콘텐츠·클라이언트 연결 경로도 계획합니다.
관리망에서 필요한 80·443 포트와 설치 문서의 추가 포트를 확인해 방화벽을 구성합니다. 원본의 accpet 오타는 사용하지 않습니다. 설치를 위해 SELinux나 방화벽 전체를 끄지 않습니다.
버전별 저장소와 설치
서로 맞는 Foreman·Katello 저장소를 사용합니다. 아래는 원본 버전 조합이며 업그레이드 시에는 지원 경로를 별도로 따릅니다.
sudo dnf install https://yum.theforeman.org/releases/3.17/el9/x86_64/foreman-release.rpm
sudo dnf install https://yum.theforeman.org/katello/4.19/katello/el9/x86_64/katello-repos-latest.rpm
sudo dnf install https://yum.puppet.com/puppet8-release-el-9.noarch.rpm
sudo dnf install foreman-installer-katello
sudo foreman-installer --scenario katello --foreman-initial-organization 'lieper' --foreman-initial-location 'Lab' --foreman-initial-admin-username 'lieper'관리자 초기 암호는 설치 출력과 해당 버전의 지원되는 입력 방식으로 안전하게 설정·보관합니다. 명령 이력에 실제 암호를 남기지 않습니다. 설치 완료 전 출력되는 실패와 로그를 확인합니다.
Ansible·원격 실행 활성화
sudo foreman-installer --enable-foreman-plugin-ansible --enable-foreman-proxy-plugin-ansible
sudo foreman-installer --enable-foreman-plugin-remote-execution --enable-foreman-proxy-plugin-remote-execution-script각 플러그인의 버전 호환성과 Smart Proxy 기능을 확인합니다. HTTPS 콘솔에 접속해 인증서·로그인·조직·위치가 맞는지 확인하고, 설치 로그의 경고와 서비스 상태를 검토합니다. 호스트 등록과 실제 원격 작업 시험은 별도 절차로 진행합니다.
참고: https://docs.theforeman.org/release/3.17/