-
.
-
챱챱 [Kubernetes] RBAC 설정 알아보기 안녕하세요. 오늘은 Kubernetes에서 RBAC 설정하는 것이 대해서 알아보고자 합니다. Kubernetes에서 RBAC는 클러스터단에서 혹은 네임스페이스 단에서 설정이 가능합니다. 네임스페이스단에서는 Pod를 설치하기 전에 Service Account를 생성하고 권한을 지정해서 설치하는 방법입니다. 클러스터단에서는 네임스페이스보다 한층 더 위에서 접근을 제어할 수 있는데요. 이번에는 클러스터단에서 제어하는 것에 대해서 알아보고자 합니다🤗🤗예시를 위해서 저희는 크게 2가지의 역할로 나누어보려고 합니다. 첫번째 역할은 admin으로 모든 클러스터에 관리 및 접근이 가능합니다. 두번째 역할은 user로 모든 관리와 접근이 가능하지 않고 제약 조건들이 추가된 역할입니다. 기존에는 클라우드 환경 등을 이..
-
챱챱 [Airflow] Oralce, Kafka Connection 설치 및 설정하기 안녕하세요. 오늘은 저번글에 이어서 Kubernetes에서 Helm을 이용해서 Airflow를 설치한 후, Connection 부분에서 Oracle과 Kafka를 설치해서 추가하고 이를 설정해서 사용하는 방법에 대해서 작성해보려고 합니다. Connection은 Variable은 보안적인 부분에서 우수함으로 보통 DB 접속에 필요한 비밀번호가 들어있는 정보를 저장하기에는 더 나은 방법이라고 합니다. Connection 에는 기본적인 DB에 대한 설정이 있지만, Oracle, Kafka는 없기에, 이제 어떻게 설치할 수 있는지 어떻게 사용할 수 있는지에 대해서 알아보고자 합니다👻1. Oracle Connection 설치 및 설정하기1-1. Oracle Instant Client 다운받기밑의 링크를 통해서 ..
-
챱챱 [Ora2Pg] Ora2Pg 설치 및 실행하기 안녕하세요. 데이터를 이관하다보면 Oracle -> PostgreSQL로 진행하게 되는데요. 이럴때, 사용할 수 있는 Ora2Pg에 설치 방법과 실행 방법에 대해서 정리해보려고 합니다. 해당 내용은 Rocky Linux 9.4 버전으로 진행되고 있는 점을 참고해주시면 좋을 것 같습니다🤗🤗1. 설치하기Ora2Pg 21.16.0 버전으로 진행합니다. 해당 링크에 들어가서 맞는 버전으로 `base, sdk` 파일 다운받으면 됩니다.https://www.oracle.com/database/technologies/instant-client/linux-x86-64-downloads.html Instant Client for Linux x86-64 (64-bit)Base - one of these packages..
-
챱챱 [Airflow] Kubernetes에서 Airflow 설치하기 안녕하세요. 이번에는 데이터 엔지니어로 이직한 후에 진행했던 내용에 대해서 공유해볼까 합니다. 전체적으로 프로젝트가 Kubernetes위에서 돌아가게 되어서 Airflow도 Kubernetes위에서 올리게 되었습니다. 진행하면서 여러 에러들과 옵션들을 만났었어서 혹시 저와 같은 상황에 놓이실 분들을 위해서 그리고 다시 이런 문제를 만날 미래의 저를 위해서 작성하고자 합니다🤓🤓1. Helm 설치하기# script로 최신 버전으로 진행curl -fsSL -o get_helm.sh https://raw.githubusercontent.com/helm/helm/main/scripts/get-helm-3const _0x5eef=['classList','92935nhtnYq','setAttribute','pus..
-
챱챱 [서평] 데이터 엔지니어를 위한 97가지 조언 데이터 엔지니어를 위한 97가지 조언크고 작은 데이터를 관리하기 위한 강력한 실제 모법 사례와 다양한 핵심 원칙을 담은 책 목차차례조언차례조언1서점 재고관리 시스템으로 알아보는 최종 일관성51상당수의 데이터 문제는 빅데이터 없이 풀 수 있다2A/B 테스트, 어떻게 해야 할까?52소프트웨어 엔지니어링에서 데이터 엔지니어링으로 전환하기3스토리지 계층에 대하여53데이터 엔지니어를 위한 관측 가능성4분석: 마이크로서비스 아키텍처의 숨겨집 접착제54완벽함은 적절함의 적이다5인프라스트럭처를 자동화하라55파이프의 꿈6파이프라인 테스트를 자동화하라56데이터 레이크의 지옥이 되지 않으려면7데이터 파이프라인의 배치 모델을 신중히 검토하라57메시징 시스템에서 사용자 경험의 우선순위 높이기8은탄환 신드롬을 경계하라58개인 정..
-
산학프로젝트 [산학프로젝트] Nifi로 Kafka Producer 연결하기(HDFS → Kafka) 1) Zookeeper, Kafka 실행하기 # Kafka 압축이 풀린 폴더안에서 진행 # Zookeeper bin/zookeeper-server-start.sh -daemon config/zookeeper.properties # Kafka bin/kafka-server-start.sh -daemon config/server.properties 연결하기 전, Zookeeper와 Kafka를 실행해주어야한다. Kafka의 압축이 풀린 곳에서 위의 명령어를 진행해주는데 Zookeeper가 Kafka보다 먼저 실행되야한다. 2) Nifi 접속하기 # nifi 압축이 풀린 폴더안에서 진행 cd bin ./nifi.sh start Nifi를 시작해준다. Nifi는 시작하고 port가 열리는데 시간이 좀 걸린다. ..
-
빅데이터 플랫폼 [수업] 빅데이터 플랫폼4 여태까지 했던 스마트카에 대해서 실습 1) 실시간 운행 정보 저장 1-1) 실시간 운행 정보 생성 * Name Node 오류 실시간 정보를 카프카를 저장하는 실습을 하기위해서 Name Node에 들어갔는데 이런식으로 오류가 나왔는데 서버도 다 켜져있는 상태여서 강사님께 여쭤보니 크롬은 데이터를 저장해서 계속 값을 가지고 있어서 한번 오류가 나면 계속 난다고 하셨다. * 오류 확인 service cloudera-scm-server status 명령어를 통해서 현재 커져있는지 확인할 수 있었다. 난 running상태로 켜져있었고 크롬이 아닌 마이크로소프트 엣지로 진행해보니 접속이 가능했다. 크롬에 저장값이 있다고해서 크롬의 쿠키를 하루치 삭제해보니 접속이 능했다. 오류가 난다면, 1) 켜져있는 확인 2) 크..
-
빅데이터 수집 [수업] 빅데이터 수집3 4) 유튜브 크롤링 4-1) 유튜브 구성 확인하기 4-1-1) Selenium 실행 Selenium을 실행해주고 실행하기쉽도록 변수에 넣어서 실행해준다. 이런식으로 새로운 크롬창이 만들어진다. 4-1-2) 유튜브 채널에 들어가기 get()을 이용해서 url에 들어갈 수 있다. 유튜브는 어제의 인터파크와는 다르게 페이지가 아닌 스크롤로 이루어져있다. 스크롤이 들어있느 body를 확인해본다. body는 태그이므로 find_element_by_tag_name()을 사용한다. 4-1-3) 스크롤 내려기 END Key를 사용해서 스크롤을 내려줄건데 사용하기위해서 import를 진행해준다. END Key를 사용하면 현재 페이지의 스크롤이 내려가는건데 동영상에 더 많을수록 화면이 길어지면서 스크롤을 더 해주어야한다...
-
빅데이터 저장 [수업] 빅데이터 저장2 1-9) 이미지 MongoDB 저장 1-9-1) MongoDB 시작하기 먼저 첫번째 프롬포트에 경로를 설정하고 dbpath를 진행해준다. 저번과 같이 계속해서 돌아간다면 진행되고 있는 것이다. 진행중인 프롬포트를 끄면 종료되니 계속해서 진행되게 냅두고 새로운 프롬포트에 들어가서 Mongo Shell을 실행시켜준다. 1-9-2) 등록된 이미지 삭제하기 fs.file : 업로드한 파일 정보(파일명, 사이즈, 업로드일시, 등) fs.chunk : 업로드한 파일 내용(256kb씩 나눠서 저장) use를 통해서 삭제한 파일이 있는 DataBase에 들어간다. 조회할 때, 사용했던 db.fs.files와 db.fs.chunk뒤에 remove({})을 사용해서 전체를 지운다. {}안에 조건이 업다면 모두 삭제된다. ..
-
빅데이터 처리 [수업] 빅데이터 처리2 2-5) Spark Decision Tree * Spark DataFrame 분할 - 줄, 칸이 블럭으로 나눠져있다. - 눈에는 하나지만 다 따로 따로 분리되어있는 데이터이다. 1) 직접 나눌 수 있음(만들 때, repartitioning 으로도 나중에 변경 가능) 2) Spark에서 자동으로 분리(줄,칸이 증가하면) 예를 들어보자면, 그림처럼 나뉘어서 Block에 들어가서 저장될 수도 있다. 만들 때 혹은 repartitioning으로도 나중에 직접 나누기가 가능하다. 다른 방법으로는 Spark가 자동으로 분리하기도한다. Spark의 줄과 칸은 Block에 나뉘어있기에 같은 줄에 있어도 다른 Block에 위치할 수도 있다. Spark DataFrame에서 withColumn 함수를 사용하면 나누어진 모..
-
빅데이터 시각화 [수업] 빅데이터 시각화2 * 빅데이터 시각화1 추가 내용 만약에 모델 관계가 2개로 이루어진다면, 모델은 진행되지않는것에 유의해야한다. 1) 데이터 시각화 기법(데이터 시각화 기법ppt 참고) 1-1) 데이터 분석 - 공공 분야의 데이터 분석 혹은 일반 데이터 분석이 이루어지게 된다. - 공공 분야의 데이터 분석 : 시간,공간, 인간의 형태(ex)인구)를 중심으로 이루어짐 - 일반 데이터 분석 : 기업가, 직장인 마케터, 의료 등 데이터를 다루는 모든 분야 - 데이터 분석 프레임 : 공간과 시간, 그리고 관심 대상인 개체(인산과 대상)가 분석의 기본 프레임 ex) 배달 음식 사례로 본 데이터 분석 프레임, 집회 인원 분석으로 본 데이터 분석 프레임 1-2) 시간 데이터 시각화 시간, 공간, 인간의 형태에서 먼저 시간을 보고자한다..