본문 바로가기

전체 글109

MariaDB 1. 개요 - MariaDB MariaDB is a fast, reliable, scalable, and easy to use open-source relational database system. MariaDB Server is intended for mission-critical, heavy-load production systems as well as for embedding into mass-deployed software. https://mariadb.com/ - MariaDB helm chart This chart bootstraps a MariaDB replication cluster deployment on a Kubernetes cluster using the Helm package ma.. 2021. 10. 4.
Redis - corrupted cluster config file 1. Environment - helm chart redis-cluster-6.0.3 / redis 6.2.3 - Helm 3.3.1 / Kubernetes 1.16.15 - Kubernetes 1.16.15 2. Problem - ptts-redis-cluster-1 error : CrashLoopBackOff $ k get pod -n ptts -l app.kubernetes.io/name=redis-cluster -o wide NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES ptts-redis-cluster-0 2/2 Running 0 25d 10.244.4.203 iap10 ptts-redis-cluster-1 1/2 C.. 2021. 10. 2.
K8s - No more than 110 pods per node 1. Node limit - https://kubernetes.io/docs/setup/best-practices/cluster-large/ ✓ Considerations for large clusters A cluster is a set of nodes (physical or virtual machines) running Kubernetes agents, managed by the control plane. Kubernetes v1.22 supports clusters with up to 5000 nodes. More specifically, Kubernetes is designed to accommodate configurations that meet all of the following criter.. 2021. 10. 2.
K8s - Master node의 role이 '<none>' 일 때 1. Environments - Kubernetes 1.16.15 - Master node list : iap01, iap02, iap03 2. Problem - iap02 Master node(Control plane)의 Role이 master가 아닌 상태로 되어 있음 $ k get nodes iap01 iap02 iap03 NAME STATUS ROLES AGE VERSION iap01 Ready master 421d v1.16.15 iap02 Ready 6d21h v1.16.15 iap03 Ready master 420d v1.16.15 $ 3. Cause analysis - iap02 노드는 'node-role.kubernetes.io/master=' 라벨이 누락되어 있음 - 일시적으로 리소스가 .. 2021. 9. 30.
Dex 인증 / 우회 1. 개요 - Dex ? (https://github.com/dexidp/dex) Dex is an identity service that uses OpenID Connect to drive authentication for other apps. - Dex 구성 'kfctl_istio_dex.v1.2.0.yaml'를 이용하여 Kubeflow(v1.2)를 구성할 경우 dex(v2.22)가 포함되어 설치 된다. - Dex 인증 범위 다음과 같은 유형의 자원에 호출할 경우 Dex 인증을 요구 한다. ✓ Kubeflow dashboard login ✓ KFServing (Knative 기반에서 동작) ✓ Knative serving (Istio 기반에서 동작) ✓ Istio Virtual service - 적용.. 2021. 9. 29.
Distributed training 사례 #4 (From KF Jupyter, PyTorch) 2021.06.30 1. Kubeflow Jupyter 환경에서 Distributed training (PyTorch) - Environments ✓ Remote - 개발 환경 Kubeflow Jupyter (CPU) ✓ Remote - 학습 환경 Kubeflow 1.2 (The machine learning toolkit for Kubernetes) / Kubernetes 1.16.15 Nexus (Private docker registry) Nvidia V100 / Driver 450.80, cuda 11.2, cuDNN 8.1.0 - Flow (PyTorch) ✓ Remote (Kubeflow Jupyter) a. Docker Image build b. Docker Image Push c. Kube.. 2021. 9. 27.
Distributed training 사례 #3 (In Jupyter) 2021.06.25 1. Kubeflow Jupyter(GPU 할당) 환경에서 Distributed training (Tensorflow) - Environments ✓ Remote - 개발 환경 Kubeflow Jupyter (GPU) ✓ Remote - 학습 환경 Kubeflow 1.2 (The machine learning toolkit for Kubernetes) / Kubernetes 1.16.15 Harbor 2.2.1 (Private docker registry) Nvidia V100 / Driver 450.80, cuda 11.2, cuDNN 8.1.0 CentOS 7.8 - 관련 기술 - Tensorflow MirroredStrategy (Data parallelism) 2. 사전작업 a.. 2021. 9. 26.
Distributed training 사례 #2 (From KF Jupyter, Tensorflow) 2021.06.24 1. Kubeflow Jupyter 환경에서 Distributed training (Tensorflow) - Environments ✓ Remote - 개발 환경 Kubeflow Jupyter ✓ Remote - 학습 환경 Kubeflow 1.2 (The machine learning toolkit for Kubernetes) / Kubernetes 1.16.15 Nexus (Private docker registry) Nvidia V100 / Driver 450.80, cuda 11.2, cuDNN 8.1.0 CentOS 7.8 - Flow (Tensorflow) ✓ Remote (Kubeflow Jupyter) a. Docker Image build b. Docker Image P.. 2021. 9. 26.
Distributed training 사례 #1 (From MacOS) 2021.06.24 1. Local 환경에서 Distributed training (Tensorflow) - Environments ✓ Local - 개발 환경 Python 3.8.5, Jupyter / PyCharm (option) ✓ Remote - 학습 환경 Kubeflow 1.2 (The machine learning toolkit for Kubernetes) / Kubernetes 1.16.15 Master node: 3ea, Worker node: 4ea Harbor 2.2.1 (Private docker registry) Nvidia V100 / Driver 450.80, cuda 11.2, cuDNN 8.1.0 CentOS 7.8 - Flow (Tensorflow 기준) ✓ Local (M.. 2021. 9. 26.
Distributed training 개요 2021.6.28 1. Distributed training ? a. Distributed training 분류 (https://ettrends.etri.re.kr/ettrends/172/0905172001/) - Data Parallelism ✓ 대량의 데이터를 다수의 컴퓨터에서 데이터를 분산하여 학습하는 방법 - Model Parallelism ✓ 딥러닝 모델의 크기가 증가되어 하나의 컴퓨터에서 처리하지 못 하는 경우 모델을 분할하여 학습하는 방법 ▷ 레이어 분할 ▷ 학습 피처 분할 b. Distributed training을 위해 필요한 것 - Tensorflow/PyTorch 분산 학습 API - Kubeflow/Kubernetes 기반의 분산 학습 환경 2. Tensorflow distribut.. 2021. 9. 26.
CI/CD 적용 가이드 #3 (CD-Gitops 편) 2021.04.06 1. CD (Continuous Deployment) & Gitops - CD ✓ 개발자의 변경 사항을 레포지토리에서 개발/프로덕션 환경으로 자동으로 릴리스 ✓ 지속적 배포가 제대로 이루어지려면 테스트 자동화가 제대로 설계되어 있어야 함 - Gitops ✓ 클라우드 네이티브 애플리케이션을 대상으로 한 지속적 배포(Continuous Deployment)에 초점 ✓ 애플리케이션의 배포와 운영에 관련된 모든 요소를 코드화하여 깃(Git)에서 관리(Ops)하는 것이 핵심 2. Kubernetes Configuration Management - popular config tools ✓ Kustomize applications ▷ a template-free way to customize ap.. 2021. 9. 26.
CI/CD 적용 가이드 #2 (CI 편) 2021.03.24 1. CI (Continuous Integration) - In software engineering, continuous integration (CI) is the practice of merging all developers' working copies to a shared mainline several times a day - Each integration is verified by an automated build and automated unit testing. 2. Create and configure a project in Gitlab a. Create Users & Groups - Login URL: http://gitlab.14.52.244.138.sslip.io/ U.. 2021. 9. 26.
CI/CD 적용 가이드 #1 (개요) 2021.04.09 1. CI/CD 개념 a. CI(Continuous Integration) / CD(Continuous Deployment) - 개념 ✓ CI/CD CI/CD는 애플리케이션 개발 단계를 자동화하여 애플리케이션을 보다 짧은 주기로 고객에게 제공하는 방법 ✓ CI 애플리케이션에 대한 코드 변경 사항이 정기적으로 빌드 및 테스트되어 공유 레포지토리로 통합 여러 명의 개발자가 동시에 애플리케이션 개발과 관련된 코드 작성을 할 경우 서로 충돌 문제를 해결 ✓ CD 개발자의 변경 사항을 레포지토리에서 개발/프로덕션 환경으로 자동으로 릴리스 지속적 배포가 제대로 이루어지려면 테스트 자동화가 제대로 설계되어 있으야 함 - 참고: https://www.redhat.com/ko/topics/devops.. 2021. 9. 26.
TFX 살펴보기 2020.03.09 1. What is TensorFlow Extended ? - TensorFlow Extended (TFX) is a TensorFlow-based platform for performant machine learning in production, first designed for use within Google, but now mostly open sourced - 프로덕션 ML 파이프라인을 배포하기 위한 End to End 플랫폼 - 사이트: https://www.tensorflow.org/tfx/ 2. TFX 기본 라이브러리 - TFX components as building blocks: Tensorflow Data Validation, TensorFlow Transform, .. 2021. 9. 26.
Kubeflow 1.0 기능 #6 (Metadata) 2020.03.23 1. Kubeflow Metadata ? - Tracking and managing metadata of machine learning workflows in Kubeflow - metadata means information about executions (runs), models, datasets, and other artifacts. Artifacts are the files and objects that form the inputs and outputs of the components in your ML workflow 2. Try the Metadata SDK in a sample Jupyter notebook - demo.ipynb download from Github Te.. 2021. 9. 25.