EX358: Red Hat Certified Specialist in Services Management and Automation 시험 후기

Specialist 시험으로는 5번째(RHEL 관련 시험 중 4번째) 도전한 과목입니다. RHCA로 넘어가기 위한 길목에서 선택한 과목이구요. Identity 볼까 고민하다, 이게 좀 더 현실적(?)일 것 같아 선택했습니다. 시험 소개에는 다음과 같이 나와 있습니다.

표준 Linux 서비스의 구성 및 관리는 물론 서비스 구성의 자동화에 대한 지식을 테스트합니다. 이 시험에서 테스트하는 기술은 모든 Red Hat® 제품 전반에서 시스템 관리의 기반이 됩니다. 이 시험은 Red Hat Enterprise Linux 9.4와 Ansible Automation Platform 2.4를 기반으로 합니다.

  • https://www.redhat.com/en/services/training/ex358-red-hat-certified-specialist-services-management-automation-exam

시험 목표에 정리되어 있는 내용을 항목만 보면 다음과 같습니다.

  • 네트워크 서비스 관리
    • 동적으로 또는 정적으로 할당된 주소를 사용하도록 네트워크 클라이언트 구성
    • IPv4 및 IPv6 모두 사용
  • 방화벽 서비스 관리
    • 특정 서비스 또는 포트에 대한 액세스를 허용하도록 시스템 방화벽 구성
  • SELinux 관리
    • 지정된 서비스에 대한 SELinux 부울 구성
    • 파일 또는 디렉터리의 SELinux 컨텍스트 구성
  • 시스템 프로세스 관리
    • 부팅 시 시스템 프로세스가 시작되도록 구성
    • 시스템 프로세스 시작 방지
  • 링크 집계 관리
    • 두 개의 네트워크 인터페이스로 구성된 네트워크 본딩 인터페이스 생성
    • 부팅 시 영구적인 네트워크 본딩 인터페이스 설정
    • 네트워크 본딩 인터페이스에 네트워크 주소 할당
    • 본딩 러너 구성
  • DNS 관리
    • 캐싱 네임 서버 구성
    • 부분적으로 완료된 영역 파일을 사용하여 권한 있는 네임 서버 구성
    • IPv4 및 IPv6 주소 모두에 대한 정방향 및 역방향 조회 구성
  • DHCP 관리
    • 지정된 주소 범위 내에서 주소 할당 구성
    • 지정된 호스트에 대한 특정 주소 할당 구성
    • IPv4 및 IPv6 모두에 대한 주소 할당 구성
  • 프린터 관리
    • 네트워크 프린터의 프린터 대기열 생성 및 관리
    • 기존 프린터 대기열 관리
  • 이메일 서비스 관리
    • 이메일을 아웃바운드 메일 릴레이로 전달하도록 이메일 서버 구성
    • 메일 클라이언트를 사용하여 이메일 읽기 또는 전송
  • MariaDB 데이터베이스 서버 관리
    • 기본 MariaDB 서비스 설치 및 구성
    • MariaDB 서버에 대한 액세스를 특정 네트워크 주소로 제한
    • MariaDB 데이터베이스 생성
    • MariaDB 데이터베이스 사용자 및 액세스 권한 관리
    • 기존 MariaDB 데이터베이스에 레코드 추가
    • MariaDB 데이터베이스에 대해 간단한 SQL 쿼리 발행
    • MariaDB 백업 생성
    • 백업에서 MariaDB 데이터베이스 가져오기
  • HTTPD 웹 액세스 관리
    • Apache 설치 및 구성
    • NGINX 설치 및 구성
    • 대체 문서 루트 구성
    • 대체 웹 액세스 포트 구성
    • 이름 기반 가상 호스트 구성
    • 보안 웹 서버(HTTPS) 구성
    • HTTP 응답 시간 단축을 위한 정적 캐시 제공
    • HTTP HAProxy 로드 밸런서 구성
    • HTTPS 연결 종료
  • iSCSI 관리
    • iSCSI 대상 제공 및 구성
    • iSCSI 대상에 영구적으로 연결하도록 iSCSI 이니시에이터 구성
    • iSCSI 서비스에 대한 액세스를 특정 클라이언트 및 네트워크로 제한
  • NFS 관리
    • 지속적인 NFS 내보내기 구성
    • NFS 내보내기를 지속적으로 마운트하도록 NFS 클라이언트 구성
    • NFS 내보내기에 대한 액세스를 특정 클라이언트 및 네트워크로 제한
  • SMB 관리
    • SMB 공유 구성
    • SMB 사용자 생성 및 관리
    • SMB 전용 사용자 생성
    • SMB 공유에 대한 액세스 제한
    • SMB 공유 마운트
    • 다중 사용자 SMB 마운트 수행
  • Ansible을 사용하여 표준 서비스 구성

전체적으로 보면 Linux를 서버용으로 사용하면서 수시로 또는 언젠가는 한번쯤 사용 하는 기능들을 알짜만 정리해 놓은 것 같은 느낌입니다. 아~ 프린터는 제외요…

시험 준비

제 경우 시험 신청시에 시험 버전을 v8과 v9 두가지 선택할 수 있었습니다. 어차피 인터넷 뒤져도 실질적인 자료는 1도 없습니다. 빠르게 RH358 교재를 중심으로 태세전환합니다 ^^ 실제 연습은 man, ansible-doc, 9.4 매뉴얼, 패키지에 포함된 구성 예제를 보고 풀어나가는 형식으로 연습했습니다.

구입 가능한 일반 도서도 하나 있습니다. 버전이 v8 기준이긴 하지만 맥락 상으로는 큰 차이는 없습니다.

  • Red Hat Certified Specialist in Services Management and Automation EX358 Exam Guide (Packt 출판사)
    독학하시는 분들은 이 교재를 중심으로 보시면 됩니다. 공인교육 교재의 구성과 비슷하게 되어 있습니다. 순서만 좀 다르더라구요.

CLI 명령어로만 푸는 문제도 있고, 반드시 Ansible로 작성해서 지정한 파일이름으로 저장해야하는 문제도 있습니다. 제 경우 Ansible 코딩은 4 문제가 나왔습니다.
Ansible의 경우 완전 숙달되어서 코드를 문서 참조 없이 작성할 수 있다면 가장 좋을 것 같습니다. 그러나 저는 그 수준까지 안되서 다음과 같이 풀었습니다.

  • 시험 환경에 제공되는 설명서 중에 Automating system administration by using RHEL system roles 활용 <- 연습할 때도 여기서 템플릿 가져다 수정하는 식으로 함
  • 일반 문제의 경우 CLI 기반으로 처리 순서 정리 > 작업순서 기반으로 ansible-doc 이용해서 각 모듈의 예제 코드 참고해서 순서대로 작성

저 같은 초보에게 좋은 소식은 vscode가 제공됩니다. VIM 또는 nano에 익숙하지 않은 저로서는 너무 좋았습니다. 다만 아쉽게도 익스텐션은 사용할 수 없습니다.

제 경우 Ansible에 익숙하지 않아서 ansible-doc을 찾아가며 하다보니 시간이 많이 소요됐습니다. 시간 안배가 좀 필요해 보입니다.
총 시험 4시간 중에 CLI로 푸는 문제 2~2.5시간 정도에 다 마무리하고, Ansible 문제에 1.5~2시간 정도로 배분하면 될 것 같습니다.

RH358 수업을 들은 분들은 Lab 교재에 있는 예제 작성하는 기준으로 연습해보면 됩니다. Roles의 경우 설명서과 교재의 코드 스타일이 좀 다릅니다. 결과만 나오면 되니 편한 방식으로 연습하면 됩니다.
주의할 것은 Anisble 문제가 꼭 나오니 CLI만 연습하지 말고, Ansible도 함께 연습하기 바랍니다.

대략 20개의 문제(Task)

위 목표의 대분류 수준의 내용이 실제로 구성해야하는 과제로 1~4 문제 정도 출제된다고 이해하면 됩니다. 이 중에 방화벽, SELinux, 시스템 프로세스 관리 등과 관련된 내용은 독립적으로 출제된다기 보다는 다른 서비스 구성시에 함께 포함되어 있다고 보면 됩니다.
거의 모든 항목이 1문제 이상은 반드시 나오니 뭐하나 빼고 공부하기도 좀 그렇습니다. 300점 만점이어도 어쨋건 한 문제당 배점이 크기 때문에 여유가 없기 때문입니다. RH358 교재를 기준으로 전부 다봐야 봐야 합니다. 또는
마지막 항목인 Ansible 서비스 구성의 경우도 문제로 나온 것은 아니지만, 실행을 위해 환경을 설정해야하고, 이것이 채점되는 것 같습니다.

  • NIC에 IP 구성하는 문제는 SSH로 접속하지 말고, Console 창 열어서 작업하는거 추천합니다. eth0를 변경하는 상황이라 SSH로 접속하면 down 하는 순간에…
  • 스토리지 서비스용으로 특정 논리 볼륨을 사용하라고 나와 있으나, 없었습니다. 첫번째는 파일 기반으로 풀었고, 두번째는 남은 파티션 영역으로 볼륨 그룹을 확장하고 거기에 lv를 만들어서 사용했습니다. 두번째가 원하는 형태 같아요.
  • 문제를 잘 보시기 바랍니다. 자잘하게 감점된게 위의 경우 처럼 지시문에는 적혀있지 않으나, 해당 요구사항을 충족하려면 지문에 적힌 내용 외에도 작업들이 있어 보입니다. 예를 들면 방화벽, SELinux 설정 등.
  • 노드 접속시에 호스트 이름을 FQDN으로 적어야 접속 가능했습니다.
  • Ansible 코드를 작성하는 문제는 Ansible 실행 환경을 구성해야 합니다. 제 경우 ansible-core와 role을 설치하고 진행했습니다. ansible.cfg 환경, inventory의 항목은 구성된 파일이 제공된거 그대로 사용했습니다. 이게 맞는건지는 잘 모르겠습니다.

시험 결과는 보통

채점 결과는 다음과 같이 왔습니다.

  • Manage Network Services: 60%
  • Manage Firewall Services: 33%
  • Manage SELinux: 100%
  • Manage Link Aggregation: 67%
  • Manage DNS: 100%
  • Manage DHCP: 100%
  • Manage printers: 100%
  • Manage Email services: 56%
  • Manage a MariaDB database server: 71%
  • Manage HTTPD web access: 53%
  • Manage iSCSI: 100%
  • Manage NFS: 50%
  • Manage SMB: 33%
  • Use Ansible to Configure Standard Services: 50%

구성을 보면 이전에 봤던 시험들과는 조금 다른 형식으로 채점하는거로 보입니다. 예를 들어 SELinux, Firewall 같은 경우는 별도의 문제가 있는 것이 아닙니다. 다른 문제 푸는 과정에 원하는 설정이 이루어졌는지 확인해서 부분 점수가 적용되는 것 같습니다. 방화벽은 나름 꼼꼼히 확인했음에도 왜 저렇게 많이 감점 됐나 모르겠습니다 ㅠ.ㅠ

시험보면서 2문제가 원하는 결과가 안나온 상태로 끝났기에 2문제는 기본적으로 틀려서 -30점은 깔고 간다 생각했습니다. 확실히 연습과 고민을 적게한 Ansible 관련 부분에서 감점이 많았던 것 같구요. CLI로 푼 문제가 점수를 벌어줬던 것 같습니다.
결론은 300점 만점에 248점이 나왔습니다. 시험 끝나고 예상했던 점수 수준으로 나온 것 같습니다.

반성 공부를 하기는 해야할 것 같습니다. NFS는 급한 마음에 fstab 구성 잘못해서 한 문제 틀린 것 같고… bond 구성은 특별히 틀릴 부분도 없는게 같은데 감점됐고… 나머지는 정확히 기억이 안나서 정확히 뭐가 틀린건지를 모르니 좀 답답하긴 합니다. 시간 여유 있을 때 교재를 좀 천천히 읽어봐야겠습니다.

맺음말

EX358은 RHCSA(EX200) + RHCE(EX294) + @ 같은 느낌의 시험입니다. 두 시험을 합쳐서 레벨은 조금 올려 놓은 느낌이랄까요? 예를 들면 cli 명령 3~5개 쓰던걸 5~10개 정도로 늘리고, Ansible도 좀 더 길게 늘리고 뭐 그런 느낌입니다.

어쨋거나 Linux 는 서버를 위한 OS이고, 서버는 서비스를 위한 존재입니다. 그 대표적인 서비스들이 EX358의 출연진이구요. 이미 이러한 서비스들을 인터넷 검색하며 구성해 봤을 것입니다.

그래서 저는 Linux 입문을 매듭짓는 시험으로 EX358을 추천합니다!

답글 남기기

이메일 주소는 공개되지 않습니다. 필수 필드는 *로 표시됩니다

You May Also Like
Read More

Ansible vs. Terraform, clarified

출처: https://www.redhat.com/en/topics/automation/ansible-vs-terraform 개요 Red Hat® Ansible® Automation Platform과 HashiCorp Terraform은 모두 오픈 소스 기반 자동화 제품으로, IT 환경을 자동화하기…