분류 전체보기

    Teleport 기반 Core Tunnel 도입으로 로컬 개발 환경 효율성 극대화하기

    0. 개요JupyterHub를 통해 개발을 하고 있고 Teleport의 HTTP Proxy 기능을 활용해 원격 사용자가 웹 브라우저를 통해 안전하게 접속할 수 있도록 설정되어 있습니다. 최근 Teleport를 사용한 Proxy 연결 중 알 수 없는 끊어짐이 간헐적으로 발생하고 있어, 세션 안정성을 강화하기 위한 대안으로 SSH 기반의 기술을 통해 WEB JupyterHub를 사용할 수 있는 환경을 구축하기로 하였습니다. 그렇게 결론을 짧게 말하자면 SSH 연결을 통해 vs code에서 로컬 개발 환경을 구축하여 간단하게 작업도 가능하게 되었습니다.Teleport를 사용하고 있음에도 왜 core tunnel이라는 것을 도입했는지, 도입했을때의 장점에 대해 알아보도록 하겠습니다. 특징Teleport HTTP..

    Docker 컨테이너에서 볼륨 마운트 파일 권한 문제와 해결 방법

    Docker를 사용하다 보면, 컨테이너 내부에서 볼륨 마운트된 파일에 접근하려고 할 때 권한 문제가 발생하는 경우가 있습니다. 특히, 기본적으로 설정된 컨테이너 사용자의 UID와 호스트 파일의 소유자가 다를 때 이런 문제가 두드러집니다. 이번 글에서는 이 문제의 원인과 해결 방법을 정리해 보겠습니다. 1. 문제 상황Docker 컨테이너에서 Jupyter 기반의 PySpark 환경(jupyter/pyspark-notebook)을 설정한 후, 호스트 디렉터리를 컨테이너와 공유하기 위해 다음과 같이 볼륨 마운트를 설정했습니다.docker run -d --name dwspark \ -v /home/dawon/projects/spark_notebook/sparkdata:/home/jovyan/sparkdata ..

    [AWS] EMR 클러스터 생성 시 정책 설정 디버깅 (클러스터 생성이 되지 않을 때)

    0. EMR 클러스터 생성 시 정책 설정 AmazonEMRFullAccessPolicy_v2 정책만으로 EMR 클러스터 생성이 실패하는 상황을 겪으면서 정책에 대해 찾아보게 되었습니다. 이를 통해 EMR 관련 정책과 v2 태그 설정에 대한 내용을 공유해보고자 합니다! Amazon EMR 클러스터를 생성하려면 AmazonEMRFullAccessPolicy_v2 또는 AmazonEMRServicePolicy_v2를 사용을 권장한다고 합니다.이유 -> 전체 액세스를 위한 IAM 관리형 정책(지원 중단 예정) AmazonElasticMapReduceFullAccess 관리형 정책은 지원 중단될 예정이며 더 이상 Amazon EMR에서 사용하지 않는 것이 좋습니다. 대신 AmazonEMRFullAccessPoli..

    H3와 S2Cell에 대해 알아보자 (지리 정보 시스템)

    지리 데이터 처리와 분석은 다양한 분야에서 중요한 역할을 합니다. 특히 지도 기반 서비스나 위치 기반 애플리케이션에서는 정확한 위치 정보의 빠른 조회가 필수적입니다. 이를 위해서는 지리적 셀 ID를 계산하고, 이를 효율적으로 관리하는 시스템이 필요합니다. 오늘은 H3와 S2Cell을 사용하여 지리적 셀 ID를 계산하는 방법과, 이를 DynamoDB에 저장하는 방식에 대해 살펴보겠습니다.1. 폴리곤 vs S2/H3: 왜 셀 기반 시스템을 써야 할까?많은 개발자들이 처음에는 폴리곤으로 지역을 관리하려고 하는데요, 실제 서비스에서는 S2나 H3 같은 셀 기반 시스템을 더 많이 사용합니다. 이유가 뭘까요?폴리곤 방식의 한계복잡한 지형을 정확히 표현할 수 있지만, 연산 비용이 매우 높음인덱싱이 어려워 대량의 위치..