연락처 정보

코스 개요

1일차 - 컨테이너 및 이미지 관리

컨테이너 플랫폼 소개

  • 전통적인 애플리케이션 배포와 컨테이너 기반 배포 비교
  • 컨테이너와 가상 머신
  • 컨테이너 런타임 및 컨테이너 엔진
  • Docker, Kubernetes 및 OpenShift의 역할
  • 일반적인 컨테이너 플랫폼 아키텍처
  • 개발, 테스트 및 프로덕션 워크플로우

컨테이너 작업

  • 컨테이너 실행 및 관리
  • 컨테이너 수명 주기
  • 컨테이너 시작, 중지 및 제거
  • 컨테이너 내부에서 명령 실행
  • 환경 변수
  • 포트 매핑
  • 컨테이너 로그
  • 리소스 사용량 및 프로세스 검사

컨테이너 이미지 빌드

  • 이미지 구조 및 레이어
  • Dockerfile 및 Containerfile 생성
  • 베이스 이미지 선택
  • 애플리케이션 종속성 추가
  • 엔트리포인트 및 명령 구성
  • 이미지 캐싱
  • 이미지 크기 줄이기
  • 재현 가능한 이미지 빌드

컨테이너 레지스트리

  • 공개 및 비공개 레지스트리
  • 이미지 태깅 및 버전 관리
  • 이미지 푸시 및 풀
  • 이미지 인증
  • 이미지 보존 및 정리
  • 기본 이미지 보안 고려 사항

컨테이너 네트워킹 및 저장소

  • 컨테이너 네트워크 개념
  • 브리지 네트워킹
  • 포트 노출
  • 컨테이너 간 통신
  • 바인드 마운트 및 볼륨
  • 컨테이너 외부 영구 데이터
  • 백업 고려 사항

실습 연습

  • 컨테이너 실행 및 검사
  • 애플리케이션 이미지 빌드
  • 포트 및 환경 변수 구성
  • 레지스트리에 이미지 게시
  • 컨테이너 외부에 영구 데이터 저장

2일차 - Kubernetes 아키텍처 및 워크로드

Kubernetes 기본 사항

  • 컨테이너 오케스트레이션의 목적
  • Kubernetes 아키텍처
  • 제어 플레인 구성 요소
  • 워커 노드
  • API 서버
  • 스케줄러
  • 컨트롤러
  • 클러스터 상태 및 desired state
  • kubectl를 사용하여 클러스터와 통신

Kubernetes 리소스

  • Pod
  • ReplicaSet
  • Deployment
  • 네임스페이스
  • 라벨 및 어노테이션
  • 선택자(Selectors)
  • 선언형 리소스 정의
  • YAML 매니페스트

애플리케이션 배포

  • Deployment 생성 및 관리
  • 워크로드 확장
  • 컨테이너 이미지 업데이트
  • 롤링 업데이트
  • 롤백
  • 배포 기록
  • 워크로드 다시 시작
  • 애플리케이션 리플리카 관리

애플리케이션 구성

  • ConfigMap
  • Secrets
  • 환경 변수
  • 구성 파일
  • 애플리케이션 코드와 구성 분리
  • 환경별 설정 관리

리소스 관리

  • CPU 및 메모리 요청
  • CPU 및 메모리 한도
  • 리소스 할당량
  • 한도 범위(Limit Ranges)
  • 스케줄링 영향
  • 리소스 관련 실패 진단

실습 연습

  • 컨테이너화된 애플리케이션 배포
  • Kubernetes 매니페스트 생성 및 업데이트
  • 애플리케이션 확장
  • 롤링 업데이트 및 롤백 수행
  • ConfigMap 및 Secrets를 사용하여 애플리케이션 구성
  • 리소스 요청 및 한도 적용

3일차 - Kubernetes 네트워킹, 저장소 및 보안

Kubernetes 네트워킹

  • 클러스터 네트워킹 모델
  • Pod 간 통신
  • 서비스 발견
  • 클러스터 내부 DNS
  • ClusterIP 서비스
  • NodePort 서비스
  • LoadBalancer 서비스
  • Ingress 개념
  • 애플리케이션 노출 패턴

네트워크 정책(Network Policies)

  • 워크로드 간 트래픽 제어
  • Ingress 및 Egress 규칙
  • 네임스페이스 기반 트래픽 제어
  • 네트워크 연결성 테스트
  • 서비스 통신 문제 해결

영구 저장소(Persistent Storage)

  • 일시적 및 영구 저장소
  • 볼륨(Volumes)
  • PersistentVolume
  • PersistentVolumeClaim
  • StorageClass
  • 동적 프로비저닝
  • 액세스 모드
  • 회수 정책(Reclaim Policies)
  • 상태 유지형 애플리케이션을 위한 저장소

Kubernetes 액세스 제어

  • 인증 및 권한 부여 개념
  • 역할 기반 액세스 제어(RBAC)
  • 역할(Roles) 및 클러스터 역할(ClusterRoles)
  • 역할 바인딩(RoleBindings) 및 클러스터 역할 바인딩(ClusterRoleBindings)
  • 서비스 계정(Service Accounts)
  • 최소 권한 원칙
  • 유효 권한 검사

워크로드 보안

  • 보안 컨텍스트(Security Contexts)
  • 비 root 사용자로 컨테이너 실행
  • Linux 기능(Capabilities)
  • 읽기 전용 파일 시스템
  • Secret 처리
  • 이미지 기원(Image Provenance)
  • 일반적인 구성 위험

실습 연습

  • Kubernetes 서비스를 사용하여 애플리케이션 노출
  • Ingress 구성
  • 네트워크 정책을 사용하여 트래픽 제한
  • 영구 저장소 프로비저닝
  • RBAC 권한 구성
  • 적절한 보안 컨텍스트로 워크로드 실행

4일차 - OpenShift 환경 작업

OpenShift 소개

  • Kubernetes 기반 애플리케이션 플랫폼으로서의 OpenShift
  • OpenShift 환경에서의 Kubernetes 리소스
  • OpenShift 클러스터 아키텍처
  • 프로젝트 및 네임스페이스
  • 플랫폼 사용자 및 서비스 계정
  • 웹 콘솔 작업
  • OpenShift CLI 작업

프로젝트 및 액세스 관리

  • 프로젝트 생성 및 관리
  • 사용자 권한 할당
  • 프로젝트 수준 역할
  • 관리자 액세스
  • 리소스 할당량
  • 한도 범위(Limit Ranges)
  • 서비스 계정
  • 프로젝트 리소스 검토

애플리케이션 배포

  • 컨테이너 이미지 배포
  • 애플리케이션 워크로드 생성
  • 배포 관리
  • 애플리케이션 확장
  • 애플리케이션 버전 업데이트
  • 롤백
  • 애플리케이션 구성 관리
  • Secrets 작업

애플리케이션 노출

  • OpenShift의 서비스
  • 라우트(Routes)
  • TLS 개념
  • 내부 및 외부 애플리케이션 액세스
  • 호스트명 및 인증서
  • 라우트 및 서비스 문제 진단

OpenShift의 저장소

  • Persistent Volume Claims
  • StorageClass
  • 워크로드에 저장소 연결
  • 상태 유지형 워크로드
  • 저장소 액세스 권한
  • 볼륨 마운트 문제 해결

스케줄링 및 노드 관리

  • 라벨 및 선택자(Selectors)
  • 노드 선택기(Node Selectors)
  • 티인트(Taints) 및 허용 조건(Tolerations)
  • 친화성(Affinity) 및 반-친화성(Anti-Affinity) 개념
  • 워크로드 배치
  • 노드 고립(Cordoning) 및 배수(Draining)
  • 노드 유지보수 고려 사항

실습 연습

  • OpenShift 환경에 접속
  • 프로젝트 생성 및 구성
  • 애플리케이션 배포 및 노출
  • 사용자 및 서비스 계정 액세스 구성
  • 영구 저장소 연결
  • 실행 중인 워크로드 확장 및 업데이트

5일차 - 운영, 모니터링 및 문제 해결

플랫폼 모니터링

  • 클러스터 및 애플리케이션 상태 모니터링
  • 리소스 메트릭
  • 노드 상태
  • 워크로드 상태
  • 용량 및 리소스 활용도
  • 성능 제약 요소 식별

로그 및 이벤트

  • 컨테이너 로그
  • Pod 로그
  • 이전 컨테이너 로그
  • Kubernetes 이벤트
  • 애플리케이션 및 플랫폼 메시지
  • 운영 데이터 필터링 및 해석

상태 확인(Health Checks)

  • 시작 프로브(Startup Probes)
  • 준비 상태 프로브(Readiness Probes)
  • 활성 프로브(Liveness Probes)
  • 유용한 상태 엔드포인트 설계
  • 프로브 실패 진단
  • 불필요한 애플리케이션 재시작 방지

워크로드 문제 해결

  • 대기 중인 Pods
  • 이미지 풀 실패
  • 크래시 루프(Crash Loops)
  • 잘못 구성된 환경 변수
  • 마운트 실패
  • 부족한 리소스
  • 권한 오류
  • 서비스 및 라우트 연결성 문제
  • DNS 문제
  • 애플리케이션 시작 실패

운영 보안

  • 권한 검토
  • 서비스 계정 사용
  • 자격 증명의 안전한 처리
  • 이미지 보안 관행
  • 네트워크 격리
  • 플랫폼 액세스 감사
  • 최소 권한 원칙 적용

유지보수 및 수명 주기 관리

  • 일상 플랫폼 검사
  • 노드 유지보수
  • 애플리케이션 백업 고려 사항
  • 구성 백업
  • 업데이트 계획
  • 변경 관리
  • 업데이트 테스트
  • 롤백 계획
  • 재난 복구 개념

최종 실습 워크숍

참가자들은 종단 간 운영 시나리오를 완료합니다:

  • 컨테이너 이미지 빌드 및 태깅
  • 이미지를 레지스트리에 게시
  • Kubernetes 또는 OpenShift에 애플리케이션 배포
  • 애플리케이션 설정 및 자격 증명 구성
  • 애플리케이션 노출
  • 영구 저장소 연결
  • 액세스 권한 구성
  • 상태 확인 추가
  • 애플리케이션 확장 및 업데이트
  • 심어진 실패 원인 진단 및 해결

과정 형식

  • 인터랙티브 강의 및 기술 토론
  • 강사 시연
  • 광범위한 실습 연습
  • 시나리오 기반 관리 및 문제 해결 워크숍
  • 컨테이너, Kubernetes 및 OpenShift 환경에서의 실용적 작업

과정 맞춤화 옵션

  • 이 과정은 참가자의 기존 인프라, 클라우드 공급자 및 컨테이너 도구set에 맞게 조정할 수 있습니다.
  • Docker, Kubernetes 및 OpenShift 주제 간의 균형을 팀의 경험에 따라 조정할 수 있습니다.
  • 실습 연습은 조직의 애플리케이션, 배포 프로세스 및 운영 요구 사항에 맞게 맞춤화할 수 있습니다.

상표 공지

OpenShift는 Red Hat, Inc.의 상표입니다. 이 독립적으로 개발된 교육 과정은 Red Hat과 제휴하지 않았으며, 승인받거나 인가받은 것도 아닙니다.

요건

참가자는 다음을 갖추어야 합니다:

  • Linux 명령줄 사용 경험
  • 기본 시스템 관리 또는 DevOps 지식
  • 네트워킹 개념에 대한 일반적인 이해
  • 소프트웨어 배포 프로세스에 대한 친숙함

Docker, Kubernetes 또는 OpenShift에 대한 이전 경험이 도움이 되지만 필수 사항은 아닙니다.

 35 시간

참가자 수


참가자별 가격

회원 평가 (7)

예정된 코스

관련 카테고리