Helm 설치하기 Helm 이란? helm은 Kubernetes의 패키지 매너저이다. redhat 기반 os의 yum 이나 debian 계열의 apt와 같은 개념이라고 보면 될것 같다. 이런 helm을 쓰면 Kubernetes의 설치할 수 있는 패키지(Rancher에서는 App이라고도 한다)를 쉽게 설치 할 수 있다. helm은 Docker HUB...
Ingress Controller 설치하기
Ingress Controller 설치하기 Ingress란? 서비스 앞에 두는 로드밸런서로 쿠버네티스 클러스터로 들어온 외부 접근을 클러스터 내부 서비스로 라우팅함. 사용자가 정의한 규칙(Prefix 규칙 등)에 따라 외부 접근을 라우팅함. Ingress Controller 란? Ingress를 위해서는 Ingress Controll...
K3S 설치하기
K3S 설치하기 K3S 란? K3S는 쉽게 생각하면 가벼운 버젼의 Kubernetes라고 생각하면 될 것 같다. 컨테이너 클러스터 관리를 하는 프로젝트인 Rancher를 만들 Rancher Labs에서 만들었는데 공식홈페이지를 보면 Edge device나 홈 IoT 처럼 리소스가 부족한 환경에서 쿠버네티스를 활용한 경우를 상정하고 개발한 듯하다. ...
미니버젼 MLOps 플랫폼 구축하기
미니버젼 MLOps 플랫폼 구축하기 관세청 빅데이터 플랫폼 사업을 3년간 진행하면서 제일 많이 사용했던 솔루션이 DevOps 솔루션이였던 것 같다(그중에서도 CI/CD만 엄청 돌렸다. 무한개발배포). 사용된 DevOps 솔루션은 우리가 코드를 작성하고 깃에 Push하고, 그 다음 솔루션 내에 연결된 파이프라인을 실행하면 쿠버네티스에 배포해주는 형태였는...
Hive-Python Connection
Hive Python Connect Hive odbc 드라이버 설치 hive odbc driver 설치 홈페이지 (https://www.cloudera.com/downloads/connectors/hive/odbc/2-6-1.html) 💥 impala를 사용할 경우에는 (https://www.cloudera.com/downloads/connec...
Hive 명령어
Hive 명령어 Hive 접속 Hive 마스터 노드에서 hive 를 통해서 접속! Hive LOAD DATA LOAD DATA [LOCAL] INPATH 'filepath' [OVERWRITE] INTO TABLE tablename [PARTITION (partcol1=val1, partcol2=val2 ...)] [INPUTFORMA...
MLFlow on Kubernetes
MLFlow on Kubernetes 2022년 3월 MLFlow를 회사 쿠버네티스에 올린 경험을 정리합니다~ MLFlow MLFlow 란? MLFlow는 머신러닝의 실험이나 배포를 쉽게 관리할 수 있는 오픈 소스이다. 기존에 MLFlow가 없던 시절에는 연구일지에다가 Loss 측정해서 올리고 해당 베스트 모델들을 폴더에 구조화해서 정리하는 ...
도커란?
도커와 쿠버네티스 이번 프로젝트를 진행하며 쿠버네티스에 대한 이해가 필요해져 사내 스터디를 진행한 적이 있다(아마 6~7월경에 마무리 했던것 같다). 당시 작성해둔 PT자료를 보며 복습도 하고 내 스스로 정리를 다시 해보고자 블로깅을 한다. P.S 이 글은 "시작하세요! 도커/쿠버네티스" 책을 보고 공부한 내용입니다. 도커란 무엇인가? 도커...
Chapter 10 - 스파크 SQL
Chapter 10 - Spark SQL Spark sql Spark sql은 DB에서 생성된 View나 Table에 SQL 질의문을 실행할 수 있으며 시스템 함수나 사용자 정의 함수를 사용할 수도 있다. Ansi-sql과 HiveQL을 모두 지원하는 자체 개발된 SQL Parser가 포함되어 있다. Spark sql과 Hive와의 ...
Chapter 9 - 데이터 소스
Chapter 9 - 데이터 소스 JSON 파일 읽고 쓰기 spark.read.format('json').option('mode', 'FAILFAST')\ .option('inferSchema', 'true')\ .load('dir').show(5) csvFile.write.format('json').mode('overwr...