ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • PaaS-TA 간략한 개념
    클라우드 2022. 1. 21. 10:22

    파스-타(PaaS-TA)는 해외 벤더 중심의 클라우드 플랫폼 시장에서 국내 IT 서비스 경쟁력 강화를 목표로, 한국지능정보사회진흥원(NIA)의 지원으로 다양한 국내 업체와 협업을 통해 만든 개방형 클라우드 플랫폼에 대해

    간략하게 개념적으로 설명하는 자료입니다.

     

    상세 내용은 http://playpark.paas-ta.org/ 를 참조해 주세요.

     

    1. PaaS-TA Application Platform (AP)Architecture
       PaaS-TA AP는 개발자 프레임워크 및 앱 서비스를 선택할 수 있는 PaaS(Platform as a Service) 플랫폼이다.

       PaaS-TA AP를 사용하면 어플리케이션을 더 빠르고 쉽게 구축, 테스트 배포 및 확장할 수 있다.

     

    PaaS-TA Architecture

                        - 일반적으로 15~16VM 구성요소 필요 함.

     

    2. 주요 기능 설명

    •  Router
      사용자 Http 요청 트래픽을 목적지로 라우트하는 역할을 수행합니다. 주 목적지는 Cloud Controller이나 응용애플리케이션을 실행하고 있는 Garden Container 가 됩니다. Router의 라우터 정보는 Diego가 서비스하고 있는 애플리케이션 인스턴스 정보를 Nats 에서 수신하며 Route-emitter를 통해 업데이트 받습니다. route-emitter 모듈은 Diego-Cell에 통합 되었습니다.
    • Tcp Router사용자 Tcp요청 트래픽을 목적지로 라우트하는 역할을 수행합니다. 주 목적지는 응용애플리케이션을 실행하고 있는 Garden Container 가 됩니다. Router의 라우터 정보는 Diego가 서비스하고 있는 애플리케이션 인스턴스 정보를 Nats에서 수신하며 Route-emitter를 통해 업데이트 받습니다. route-emitter 모듈은 Diego-Cell에 통합 되었습니다.
    • API (Cloud Controller)
    • 플리케이션 스테이징과 실행을 위한 API를 제공합니다. 빌드팩 선정, 서비스와 바인딩, 접근 인가처리와 같은 애플리케이션의 전반적인 관리를 담당합니다. 개발자가 CLI를 통해 애플리케이션을 Cloud Foundry로 전송하면 Cloud Controller 가 수신하게 되며, Cloud Controller 는 애플리케이션 바이너리를 저장 후 애플리케이션 메타 데이터 기록을 생성하고 Diego와 통신하여 Stage 상태 준비 및 애플리케이션 실행을 지시합니다. Cloud Controller는 서비스를 위해 조직, 스페이스, 서비스, 서비스 인스턴스, 사용자 역할 등의 정보 유지를 위한 데이터베이스와 애플리케이션 코드 및 빌드팩 저장 등을 위한 Blob 저장소를 유지합니다.
    • UAA
      OAuth2 서버 및 로그인 서버로 동작하여 사용자 인증 관리를 제공합니다.
    • CC-Worker
      Api에서 요청받은 Task작업(App LifeCycle)BackGround에서 실행합니다.
    • Scheduler (Auctioneer)
      기존 Auction이 들어간 VM으로 App Container를 어떤 Cell에 배포할지 결정합니다.
    • DataBase
      파스-타의 Tennant, App, 인증정보등이 저장된 Database저장소로 Postgres/MySql로 구성되어 있다.
    • Diego-cell (Rep)
      Cell을 대표하며 BBS를 통해 다양한 서비스를 수행합니다. , BBSTask ActualLRP 정보가 Cell 내의 실제하고 있는 컨테이너와 일치하는지 확인하고, BBS Cell이 실재하도록 유지합니다. 특정 Cell 이 실패할 경우, Converger 가 자동으로 해당 인스턴스를 다른 Cell로 이전시킵니다. 또한 Tasks/LRP 수신을 위해 Auction 에 참여하며, Executor에 요청, Tasks/LRPs를 실행하여 컨테이너를 생성하고 컨테이너 내에서 수행될 액션을 실행합니다.
    • Diego-cell (Executor)
      컨테이너의 생성 및 컨테이너 내 액션 수행, 컨테이너 삭제를 위한 HTTP API를 제공합니다. Task LRP를 구분하지 않으며, 수행 액션을 위한 Action API를 구현합니다. ExecutorCell에서 실행중인 metron-agentStdout Stderr 스트림을 전송하며, 해당 스트림은 Loggregator로 전달됩니다.
    • Diego-cell (Garden)
      컨테이너 관리를 위한 플랫폼 독립적인 서버 및 클라이언트 인터페이스를 제공합니다. 인터페이스는 다음의 액션 수행을 위한 메소드를 정의합니다.
      - 컨테이너의 생성 및 삭제
      - 컨테이너의 리소스 제약 적용
      - 컨테이너에 네트워크 포트 연결 및 개발
      - 컨테이너 내부/외부로 파일 복사
      - 컨테이너 내 프로세스 실행과 Stdout Stderr 데이터 스트리밍 처리
      - 컨테이너에 임의 메타데이터
      - 다운타임 없이 재배포하기 위한 컨테이너 스냅샷 생성
      현재 Garden 인터페이스를 구현한 Linux 구현체로 Garden-linux 가 제공됩니다.
    • Diego-cell (Route-emitter)
      rep로부터 실제 LRP(ActualLRP) 상태를 모니터링하여, 목표 LRP(DesiredLRP) 와 비교하여 변경이 발생한 경우 nats를 통해 Router route 정보 등록/해제 요청 메시지를 보냅니다. 주기적으로 전체 라우팅 테이블을 Router로 보냅니다.
    • Nats
      파스타에서 실행중인 App domain 정보를 route-emitter에서 받아 router에 전달한다.
    • Doppler
      Doppler는 애플리케이션 로그를 개발자에게 스트림으로 제공합니다.
    • Diego-api
      기존 BBS가 실행되는 VM으로 Container가 실행되는 상태를 체크 한다.
    • singleton-blobstore
      파스-타의 어플리케이션 패키지, 스테이징된 어플리케이션 droplet, 빌드팩 캐시 등이 저장된 오브제트 저장소입니다. internal 또는 external 로 구성할 수 있습니다.
    • log-api
      어플리케이션 플랫폼 각 구성 요소에서 는 시스템 로그를 생성하고 배포된 어플리케이션에서는 앱 로그를 생성합니다.
    • Loggregator
      Loggregator 시스템은 각 구성 요소 메트릭과 앱 로그를 구조화하여 Firehose로 수집하고, Firehose의 모든 출력은 사용할 수 있고 모니터링 시스템 , 경고시스템 트리거, 사용자 행동 분석과 같은 특정 용도로 출력을 내보낼 수 있습니다.
    • credhub
      CredHub는 어플리케이션 플랫폼의 중앙 집중식 자격 증명 관리를 위해 설계된 구성 요소입니다. 최고 수준에서 CredHub는 자격 증명 생성, 저장, 수명주기 관리 및 액세스를 중앙 집중화하고 보호합니다.
    3. PaaS-TA Application Platform (AP) - minArchitecture
     
    PaaS-TA 경량화 Architecture

    PaaS-TA AP - minPaaS-TA AP의 경량화 버전으로
    기존 15~16VM 구성요소를 필요에 따라 4VM이나 7VM로 배포가 가능합니다.

     
Designed by Tistory.