FOR A BETTER ME162 Install Apache Airflow on Docker Prerequisites Docker 24.0.6 설치 Centos 7 기준 실습 How to. 1. airflow 디렉토리 생성 후, 해당 디렉토리 아래에 /dags /config /logs /plugins 디렉토리를 생성해둡니다. 2. (선택) airflow 를 통해 구현하려는 파이프라인 성격에 따라 필요한 라이브러리 및 버전을 requirements.txt 파일에 명시합니다. pandas fastavro==1.6.1 3. Dockerfile 파일을 아래와 같이 작성합니다. FROM apache/airflow:2.6.2 COPY /dags ./dags COPY requirements.txt requirements.txt RUN pip3 install -r requirements.txt USER air.. 2023. 11. 1. GitHub Read Me 꾸미기에 참고한 링크 1. Header/Footer https://github.com/kyechan99/capsule-render 2. 이모지 그냥 이모지는 넘 단조롭다! 움직이는 이모지를 넣고싶다면? https://animated-fluent-emoji.vercel.app/ 3. 위젯 https://github.com/anuraghazra/github-readme-stats 4. 스택 뱃지 https://github.com/Ileriayo/markdown-badges 2023. 11. 1. Airflow 설치 및 구성 테스트 💡 Airflow : A platform to programmatically author, schedule and monitor workflows. 워크플로우를 프로그래밍 방식으로 작성하고, 스케줄링하고 모니터하는 플랫폼입니다. 여기서 프로그래밍 방식에 쓰이는 코드는 바로 파이썬 코드입니다. : Uses directed acyclic graphs (DAGs) to manage workflow orchestration. Tasks and dependencies are defined in Python and then Airflow manages the scheduling and execution. DAGs 라는 것을 통해 워크플로우 오케스트레이션을 관리합니다. DAG는 유향 비순환 그래프를 의미합니다. 0... 2023. 10. 26. Confluent for Kubernetes 삽질 기록 Kubernetes 클러스터도 구축했고 CFK 도 쉽게 설치했는데 Storage 프로비저닝 설정에서 계속 막히는 중.. 나중에 다 알고나면 이런 삽질을 왜 했을까 하는 시간을 갖기 위해서 삽질 기록 시작! 먼저 나는 local path provisioner 를 통해 동적 볼륨 프로비저닝을 테스트해보고자 한다. (https://github.com/rancher/local-path-provisioner) 이를 위한 Storage Class 를 배포하기 위해 프로비저닝 yaml 파일을 다운받았다. (stable 버전) curl -O https://raw.githubusercontent.com/rancher/local-path-provisioner/v0.0.24/deploy/local-path-storage.y.. 2023. 10. 20. [Kafka] Idempotent Producer Idempotent Producer에 대하여 정리하는 글 참고: https://www.confluent.io/ko-kr/blog/exactly-once-semantics-are-possible-heres-how-apache-kafka-does-it/ Idempotent producer란 : 프로듀서로부터 들어오는 데이터가 카프카에 "정확히 딱 한번"만 쓰여지게 한다. 1. Exactly-once is a really hard problem "정확히 한 번 전송" 의 구현이 왜 어려운가하면, 딱 한 사이드에만 무언가를 설정해서 구현할 수 있는 것이 아니고 카프카 메세징 시스템과 클라이언트 어플리케이션 간에 cooperate가 되어야 EOS (Exactly once semantics) 가 가능하기 때문이다... 2022. 4. 10. [Linux] Java 버전 변경 ( 8 -> 11) java 버전 변경 (Linux Centos 7) 1. 자바 버전을 변경하게 된 계기 자바 8 기반으로 돌아가고 있는 카프카 클러스터에 대해 google cloud storage source connector를 기동시키자 다음과 같은 에러를 만났다. ERROR [Worker clientId=connect-1, groupId=connect-cluster] Failed to start connector 'GCSSourceConnector' (org.apache.kafka.connect.runtime.distributed.DistributedHerder:1356) org.apache.kafka.connect.errors.ConnectException: Failed to start connector: GCSSo.. 2021. 8. 23. [Kafka] Twitter Producer 생성 📌 kafka 및 Confluent 를 공부하며 정리하는 글 Kafka를 활용하는 프로젝트 실행의 작은 기록1. 0. 프로젝트의 개요 [ Twitter - Producer - Kafka - Consumer - ElasticSearch ] 1. Twitter Developer Account 생성 아래 사이트에 접속하여 Twitter Developer account 를 생성한다. https://developer.twitter.com/en/apply-for-access Apply for access – Twitter Developers Apply for access. Get started with Twitter APIs and tools. All new developers must apply for a dev.. 2021. 8. 5. [Kafka] Client Bi-Directional Compatibility 📌 kafka 및 Confluent 를 공부하며 정리하는 글 Client-Kafka 양방향 호환성 Kafka 0.10.2 버전부터 client와 Kafka Broker 는 양방향 호환성 이라는 기능을 가지고 있다. 즉, 구버전의 Client는 최신버전의 Broker와 통신할 수 있거나 최신버전의 Client는 구버전의 Broker와 통신할 수 있다. Kafka Broker가 0.10.2 이상이라면, 어떤 구버전의 Client 를 사용해도 괜찮다! 하지만 가장 최신의 client library를 사용하는 것이 권장된다. 2021. 8. 3. [Kafka] Consumer Assign & Seek API 📌 kafka 및 Confluent 를 공부하며 정리하는 글 package com.github.luciakafka.demo1; import org.apache.kafka.clients.consumer.ConsumerConfig; import org.apache.kafka.clients.consumer.ConsumerRecord; import org.apache.kafka.clients.consumer.ConsumerRecords; import org.apache.kafka.clients.consumer.KafkaConsumer; import org.apache.kafka.common.TopicPartition; import org.apache.kafka.common.serialization.StringD.. 2021. 8. 3. 이전 1 2 3 4 5 ··· 18 다음