GCP

Observability

Elasticsearch의 ELK Stack을 GKE Cluster에 구성해 GCP 관측 가능성 확보하기

멀티 클라우드 환경이 점점 대세가 되어가면서 자연스럽게 다양한 클라우드 플랫폼의 로그 및 메트릭을 중앙화하려는 시도들이 많아지고 있습니다. 각 클라우드 벤더마다 사용하는 로깅, 혹은 모니터링 환경(AWS의 Cloudwatch, GCP의 Operations)이 다르기 때문에 각기 다른 환경을 통일해야만 통합된 관측 가능성을 확보할 수 있기 때문입니다. 이런 각기 다른 관측 가능성 환경을 통합하는 도구로 주로 사용되는 것이 Elastic 사의 Elasticsearch입니다. Elasticsearch는 주로 데이터 처리 파이프라인인 Logstash와 데이터 시각화를 이용한 대쉬보드 도구인 Kibana와 같이 사용되어 이 세 가지 도구를 ELK Stack이라고도 부릅니다. ELK Stack은 OSS이고 컨테이너..

GCP

Prometheus+Grafana로 Apache Hadoop 및 Hive모니터링 하기(with GCP Dataproc)

언젠가부터 빅데이터에 대한 언급이 많아지고 있습니다. 거대한 데이터를 수집하고 분석하는 작업에 대한 수요가 늘면서 이를 수행할 수 있는 툴들이 하나둘씩 나타나고 있습니다. 가령 요즘은 빅쿼리, 데이터브릭, 스노우플레이크와 같은 SaaS형태의 종합 빅데이터 분석도구가 수요를 충족하려 하고 있습니다. 하지만 이런 최근의 SaaS 툴 이전에 빅데이터 분석의 원조격으로 불리는 시스템이 존재했습니다. 그것이 바로 Apache hadoop 입니다. Apache hadoop은 분산 환경에서 빅 데이터를 처리하기 위한 Open-source 프레임워크입니다. 그리고 Apache hadoop을 중심으로 HDFS,YARN 및 연관 도구들을 일컬어 Apache Hadoop Ecosystem(아파치 하둡 생태계)라고 합니다. ..

GCP

Google Cloud의 Cloud Deploy로 자동화된 CI/CD Pipeline 구성하기

본 포스팅은 2021년 11월 3일 필자가 GDG devfest 2021에서 발표한 내용을 기반으로 작성했습니다. 이번 Google Cloud Next 21에서 여러 Google Cloud Platform 서비스를 발표했습니다. 발표한 서비스는 Dataplex, Analytics Hub 등.. 주로 데이터 플랫폼에 힘을 실어주는 서비스가 주로 등장했습니다. 그 중에 데이터 플랫폼이 아닌 다른 분야에서 나온 서비스가 하나 있습니다. 개인적으로 타 CSP에 비해 약하고 생각했던 CI/CD 분야의 서비스인 Cloud Deploy가 그것입니다. 데이터 플랫폼은 예로부터 GCP가 강한 분야였기 때문에 이에 힘을 실어주는 서비스의 등장은 GCP의 장점을 부각시키는 것이었지만, CI/CD 분야 서비스인 Cloud D..

Network

Public Cloud 환경에서 Istio 서비스 메쉬 사용하기

들어가기 전에 분산된 애플리케이션을 운영하는 MSA(Micro Service Architecture) 환경이 많은 모놀리식을 대체하기 시작한지도 많은 시간이 흘렀습니다. 하지만 Kubernetes와 같은 오케스트레이션 툴이 등장했음에도 불구하고 여전히 마이크로 서비스에서 네트워크 정책을 수립하는 것은 쉽지 않습니다. 이런 문제로 인해 어플리케이션을 개발하는 개발자와 클러스터를 운영하는 운영자 모두 네트워크 레이어의 문제를 해결하기 위해 많은 노력과 시간을 쏟아야 했습니다. 그러자 개발자와 운영자는 모두가 문제를 해결하기 위해 참여하는 대신 어플리케이션 레이어의 비즈니스 로직에만 집중할 수 있는 환경을 원하기 시작했습니다. 이런 환경을 제공하기 위해 나타난 개념이 ”서비스 메쉬(Service mesh)”입..

Devops

Gitlab CI/CD + Terraform 연동으로 IaaC 자동화 파이프라인 구축하기

Gitlab CI/CD는 Continuous Intergration, Delivery.. 등의 파이프라인을 Gitlab과 연동해 사용하게끔 해주는 소프트웨어 툴입니다. Gitlab과 GItlab CI/CD의 연동을 통해서 GItlab repository에 저장된 코드를 바탕으로 다양한 Continuous 방법론을 사용할 수 있습니다. Terraform은 기존에 GUI, 혹은 명령어로 생성해야 했던 클라우드 리소스를 코드로써 관리할 수 있게끔 해주는 툴입니다. 두 소프트웨어를 연동함으로써 Gitlab repository에 저장된 테라폼 코드를 수정 -> Commit -> Push 하는 것만으로 리소스가 실제로 배치될 수 있도록 할 수 있습니다. 이번 포스팅에서는 VS code에서 Terrafom을 GItl..

GCP

GCP Compute Engine에 Gitlab 서버 구축 + VS Code 연동하기

Gitlab은 CI/CD 기능이 뛰어난 git repository 소프트웨어입니다. 같은 서비스를 제공하는 제품으로 GIthub이 있지만, 무료 버전에서 Private 작업자 수 제한이 없다는 점, Self-managed 버전을 제공한다는 장점이 있어서 GCP 인프라에 올릴 자체 깃 서버로 Gitlab을 선택하게 되었습니다. 추가적으로 자체 CI/CD 기능과 Kubernetes와의 연동도 제공한다는 점 덕분에 Kubernetes 클러스터에 올릴 코드를 관리하는데에는 Gitlab이 더 낫다는 판단을 했습니다. 그래서 이번 포스팅에서는 GCP 환경에서 GCE VM instance에 GItlab 서버를 구축하는 방법을 기록하려고 합니다. 1. VM instance 생성 우선 Gitlab이 올라갈 vm의 Har..

GCP

GCP Instance Metadata를 100% 활용하는 방법

GCP는 VM 인스턴스의 메타데이터를 메타데이터 서버가 따로 관리하고 있습니다. 우리가 GCP를 사용하다보면 이 메타데이터 서버의 존재를 인지할 수 있는데요. VM 인스턴스에서 트래픽 이동 경로를 확인하다보면 169.254.169.254 주소를 목적지로 하는 경우가 가끔 있는 것을 보신 분들이 있을 겁니다. 혹은 다른 클라우드 서비스에서 인스턴스에 메타데이터 서버를 따로 저장한다는 사실을 알고 계실 수도 있습니다. GCP도 타 클라우드 서비스와 마찬가지로 169.254.169.254 주소가 바로 메타데이터 서버의 주소입니다. 하지만 메타데이터 서버의 존재만 알고 그 안에 저장된 메타데이터는 무엇이 있는지 모르는 분도 많은 것 같습니다. 이 메타데이터를 활용하면 알기 어려웠던 정보를 알 수 있을 뿐더러 스..

Azure

Azure Fundamentals Certificate 취득기 (AZ-900 Exam)

1. 서론 왜 Azure를 배워야 할까? 바야흐로 Multi-cloud의 시대가 도래했습니다. AWS, Azure, GCP 혹은 다른 벤더 사의 클라우드 서비스 중 단일 벤더 사만을 선택해 인프라를 구성하는 시대는 끝났다는 것을 뜻합니다. 이제 Cloud 생태계는 단일 Cloud 벤더 사에 종속되기 보다는 여러 벤더 사의 서비스를 비교해 원하는 것만을 취사선택해 사용하는 쪽으로 발전하고 있습니다. 이를 발전시킨 개념이 Multi-cloud architecture입니다. 이는 하나의 클라우드 인프라에 여러 벤더 사의 Cloud Asset들을 이용해 구성한 아키텍쳐를 뜻하는 새로운 패러다임의 개념입니다. 위와 같이 단일 네트워크를 구성함에 있어서도 Azure와 AWS의 두 벤더 사를 이용하고 있는 것처럼, ..

GCP

GCP Professional Data Engineer Certificate 취득기

2021년 01월 29일 자로 3번째 GCP Certificate인 Professional Data Engineer 자격증을 취득하게 되었습니다. 본 포스팅에서는 GCP PDE Certificate를 취득하게 된 이유와 과정을 서술합니다. 다른 GCP Certificate인 Professional Cloud Architect, Professional Network Engineer에 대한 포스팅도 본 블로그에서 다루고 있습니다. GCP 자격증들에 대한 전반적인 정보는 본 포스팅보다 위의 포스팅에서 더 자세하게 다루고 있습니다. GCP Professional Data Engineer란? GCP PDE는 Data를 수집하고, 변형하고, 적재하는 모든 행위와 관련된 의사결정을 할 수 있는지 검증하는 자격증입니다..

GCP

GCP VM instance에서 사용하고 있는 Linux OS image를 Local로 가져오기

GCP에서는 Debian, CentOS 등의 linux 계열 OS을 이용한 VM instance를 생성할 수 있습니다. Google cloud 환경에서는 Google이 공식적으로 지원하는 OS image를 이용해 VM을 편리하게 이용할 수 있지만, 현재 사용하고 있는 OS Image를 다른 Project나 다른 환경(Ex: AWS, Local..)에서 그대로 사용할 수도 있습니다. 가령 특정 Setting을 변경했거나 Package, Version을 Customize했고 이를 그대로 다른 환경에서 사용하고 싶다면 Image export를 통해 편리하게 이용할 수 있습니다. 단 Windows 기반 OS에 대한 Export는 지원하지 않는 점을 유의하시기 바랍니다. 본 포스팅에서는 Linux계열 OS를 Cu..

Seungwoo Lee
'GCP' 태그의 글 목록