본문 바로가기
반응형

분류 전체보기136

[GCP] VM Instance SSH 접속 (feat. Pycharm) | LIM GCP에서 VM Instance를 하나 띄워놓고 작업해야 할 일이 생겼다. 내가 시도한 방법은 두가지가 있다. 사실 한 가지로 했어도 다 됐는데 설정을 잘못해서 User에 권한 문제가 있는 줄 알고 삽질을 좀 했었다.. ✔️ User 생성을 통해 SSH 설정을 통해 아이디, 패스워드로 접속 ✔️ 접속 시 기본 이메일 아이디로 생성되는 계정으로 접속 ( + 방화벽 설정) 🖥 User 생성을 통한 아이디, 패스워드 접속 User 생성 group 을 생성한 경우 g 옵션으로 group 명을 넣어줌 sudo useradd -d /home/{user} -m -g {group} -s /bin/bash {user} Password 설정 sudo passwd {user} ssh 설정 변경(Password 접속 설정) .. 2023. 1. 20.
[백준] 2110번: 공유기 설치 Python (이분탐색) | LIM 문제 https://www.acmicpc.net/problem/2110 2110번: 공유기 설치 첫째 줄에 집의 개수 N (2 ≤ N ≤ 200,000)과 공유기의 개수 C (2 ≤ C ≤ N)이 하나 이상의 빈 칸을 사이에 두고 주어진다. 둘째 줄부터 N개의 줄에는 집의 좌표를 나타내는 xi (0 ≤ xi ≤ 1,000,000,000)가 www.acmicpc.net 늘 이분탐색 문제를 접할 때마다 느끼는 거지만 어떤 걸 기준으로 이분탐색을 이용해야 하는지 어렵다. 처음 생각한 방식 집의 좌표에 대한 인덱스들로 이분탐색을 진행하는 걸까? 였다. 하지만 여기서 문제는 공유기 개수만큼 어떻게 좌표를 정할 것이냐였다. 문제가 잘 안 풀려서 여기저기 블로그 글을 검색해 보면서 깨달았다. 어떤 부분에서 이분탐색을.. 2023. 1. 15.
[Airflow] DAG Creation Boilerplate CLI 도구 생성 | LIM Airflow 관리 관련해서 쏘카 기술 블로그 글을 읽다가 반복되는 DAG 코드를 쉽게 작성하기 위해 CLI 도구를 만들었다는 것을 보고 우리 팀에도 적용되면 좋을 것 같아 구현해 보았다. 이 도구는 이럴 때 유용할 것 같다. DAG 작성자가 처음에 DAG 작성을 어떻게 할지 모를 때 팀 내 DAG Template을 공통되게 유지하고 싶을 때 우리 팀은 현재 이럴 때 이미 작성된 코드를 복붙 해서 쓰고 있었는데, 뼈대가 되는 코드를 어떤 걸 기준으로 삼을 건지가 명확하지 않았고 처음부터 다들 제각각 작성하고 있어서 코드가 통일되지 않았었다. 참고했던 쏘카 기술 블로그이다. https://tech.socarcorp.kr/data/2021/06/01/data-engineering-with-airflow.ht.. 2023. 1. 14.
[Airflow] Connection 정보 Vault 이관 작업(feat.Plugin) | LIM 🧐 Vault 란 HashiCorp 사에서 만든 비밀정보, 즉 공개되면 안 되는 비밀번호나(DB 연결 정보), API 키, 토큰 등을 저장하고 관리하는 플랫폼이다. 👩‍💻 현재 조직 내에서 Airflow 관리 방안 지금 우리 팀은 데이터엔지니어 수가 많지 않아 Airflow 를 GCP의 managed service 인 Composer를 통해 관리하고 있다. Composer로 Airflow를 운영하면 Connection을 관리할 수 있는 방법이 기본적으로 2가지가 있다. Secret Manager 에 airflow prefix를 통한 저장 동일하게 airflow connection_id 를 통해 가져올 수 있다. 단순 Airflow UI에서 Connection 을 생성한다. 물론 API 로도 생성할 수 있.. 2023. 1. 13.
[Infra] WebSocket(웹소켓) 이란 | LIM 서버와 클라이언트의 통신은 모두 HTTP 프로토콜만 이용하여 구현되는 것은 아니다. 실시간 채팅, 게임, 주식 차트 등의 실시간 통신이 필요한 서비스를 구현하려면 HTTP 프로토콜이 아닌 WebSocket 프로토콜을 이용하는 것이 좋다. 🧐 HTTP 프로토콜이 무엇이며 HTTP의 한계는? 그 전에 프로토콜이란? 프로토콜은 영어로는 "사전에 정해 놓은 순서" 를 의미한다. 컴퓨터가 서로 소통하기 위해 정한 규악을 가리킨다. 예를들어서 영어나 한국어 같은 언어도 사람끼리의 통신을 위한 프로토콜이라 생각할 수 있다. 서로의 언어(프로토콜) 가 일치하는 경우 소통의 문제가 없겠지만, 일치하지 않는 경우 소통(통신) 이 불가능하다. 또한, 통신 시에 이용하는 매체도 프로토콜이라 볼 수 있다. 대화를 할 때 음성을.. 2023. 1. 8.
[GCP] Pub/Sub 정의와 Push& Pull 차이 | LIM 🧐 Cloud Pub/Sub 이란 대용량 분산 큐 서비스이며 메시징 시스템이다. 메시지를 Queue에 쌓아두는 토픽을 생성하고 그 토픽을 구독하는 구독자를 만들어 메시지를 소비하는 시스템이다. Pub/Sub을 통해 서비스는 비동기적으로 100밀리 초의 지연 시간으로 통신할 수 있다. 📝 Cloud Pub/Sub 의 핵심 개념 Topic: 게시자가 메시지를 전송하는 리소스 Message: 게시자가 Topic 에 전달해 결과적으로 구독자에게 전달되는 데이터와 속성의 조합 Subscriber: 단일 또는 다중 주제에 대한 구독을 사용하여 메시지를 수신하는 애플리케이션 Acknowledgement(or "Ack"): Subscriber 가 메시지를 정상적으로 수신한 후 구독자가 Pub/Sub 에 보내는 신호. .. 2023. 1. 7.
반응형