K-PaaS

  • github
    K-PaaS github
    Millions of developers use Github to build personal projects, support businesses, and collaborate with open source technologies.
  • K-PaaS incubator
    K-PaaS Incubator
    We are helping companies utilize K-PaaS.
  • cloudfoundry
    Cloud Foundry
    Cloud Foundry gives businesses the speed, simplicity, and control they need to quickly and easily develop and deploy applications.
  • youtube
    Youtube
    We support open cloud platform K-PaaS related videos.
닫기

Container Platform - v1.4.1 Exclusive Deployment

Container platform configuration diagram of open cloud platform K-PaaS.

Architecture

Kubernetes Cluster는 기본 1개의 master와 n개의 worker로 구성된다. 구성된 클러스터에는 영구한 볼륨으로 Storage Class에 의해 Dynamic Provisioning 되는 외부 스토리지가 추가로 연결된다. 컨테이너플랫폼을 구성하는 요소는 클러스터 내의 논리적인 그룹인 namespace로 구분하여 Pod로 배포된다. 인증에 필요한 KeyCloak, 머신 러닝 워크플로우를 배포할 수 있는 MI-pipeline을 포함한 Kubeflow, 기밀성이 요구되는 데이터를 저장하는 Vault, 데이터 저장을 위한 Database,  Chartmuseum, Core, Portal, JobService, Nginx, Database, Redis 등을 포함한 이미지 및 차트 저장소인 Harbor, 클러스터를 관리할수 있는 구성요소로 Portal-API, Common-API, Web-UI, Terraman, Metrics-API, Portal-Broker를 포함한 Portal,  DevOps를 위한 서비스인 Pipeline-API, Common-API, Web-Pipeline, Inspection-API, Pipeline-Broker, Inspection-Svr, CI-Server, Config-Server, PostgresSQL을 포함한 Pipeline,  DevOps를 위한 서비스인 SC-API, Web-SC, SC-Broker, SCM-Server를 포함한 Source Control로 구성된다.

Functions and Roles of the components

Kubernetes Environment (Control Plane, Worker Node)
  • 1 kube-apiserver
    A Kubernetes control plane component that exposes the Kubernetes API.
  • 2 kube-controller-manager
    A component on the master that drives the controller.
  • 3 kube-scheduler
    A control plane component that detects newly created Pods that have no node assigned to them and selects a node to run.
  • 4 etcd
    A Kubernetes repository to keep all the highly available key-value
  • 5 kubelet
    An agent that runs on each node in the cluster and manages containers to operate correctly in Pods.
  • 6 cAdvisor
    It is a basic monitoring agent used in Kubernetes and is installed on all nodes to collect information about nodes and metrics about Pods.
  • 7 kube-proxy
    A network proxy that runs on each node in the cluster.
  • 8 Pod
    The smallest deployable computing unit that can be created and managed in Kubernetes.
Container Platform Application
  • 1 Portal-API
    Portal API- Provides REST API required from Container Platform.
  • 2 Common-API
    It provides a REST API required for DBMS metadata control of a container platform.
  • 3 Portal-UI
    Container Platform Portal is a web application that allows using of Container Platform using a web interface.
  • 4 Portal-Broker
    A Broker that allows to register and use Portal-UI as a K-PaaS service.
  • 5 Harbor
    A repository that can store Docker images and helm charts.
  • 6 NFS-provisioner
    provisioner- It supports auto-binding of NFS Volumes.
  • 7 Mariadb
    MariaDB DBMS that manages container platform-related metadata.
  • 8 Keycloak
    Responsible for authenticating SSO between Container Platform Services.
  • 9 Terraman
    An application that allows deploying and managing of Multi-Cluster.
  • 10 Metric-API
    Provides the REST-API required for checking the status of Cluster and Node.
  • 11 Ingress-nginx-controller
    An ingress controller needed for operating an Nginx-based Ingress resource.
  • 12 Istio
    A configurable service mesh that executes connecting, monitoring, and security of the container at the cluster.
  • 13 Kubeflow
    A tool-kit that allows to easily deploy machine-running workflow.
  • 14 Vault
    Safely saves and manages the secret information of the Container Platform.
  • 15 Rook
    Configures Ceph storage into Pod form.

Deployment flow chart

클러스터는 기본 1개의 MasterNode와 n개의 WorkerNode로 구성된다. 
					구성된 클러스터에는 영구한 볼륨으로 사용할 수 있는 외부스토리지가 추가로 연결된다.
					컨테이너플랫폼을 구성하는 요소는 클러스터내의 논리적인 그룹인 namespace로 구분하여 Pod로 배포된다.
					인증에 필요한 KeyCloak, 볼륨 프로비져닝을 위한 NFS-Provisioner, 데이터 저장을 위한 MariaDB, 이미지 및 차트 저장소인 Harbor, 클러스터를 관리할수 있는 포탈로 구성된다.

Open Source List

Open Source List
Service Group Service Name Opensource Name License Remark
Container
Platform
- kubernetes Apache 2.0  
kubespray Apache 2.0  
harbor Apache 2.0  
mariadb GPL v2  
keycloak Apache 2.0  
terraform MLP 2.0  
ingress-nginx-controller Apache 2.0  
istio Apache 2.0  
kubeflow Apache 2.0  
vault MLP 2.0  
rook Apache 2.0