전체 글 31

Trino - HIVE_TABLE_LOCK_NOT_ACQUIRED

1. 문제 발생 Iceberg table에 데이터를 쓰는 ETL에서 에러가 발생하고 있어 확인해 보니 trino에서 EXTERNAL_ERROR - HIVE_TABLE_LOCK_NOT_ACQUIRED 에러가 발생하고 있었다. 2. 선조치 해당 테이블에 write 작업을 할 수 없는 상태라 우선 해결 방법이 있나 구글링하는데, hive table lock을 수동으로 해제하는 명령이나 방법을 찾질 못했다. 해결할 방법을 찾던 중 hive가 metadata를 관리하기 위해 database를 사용했던 게 기억나 hive database에 접속해서 table 목록을 살펴봤다. 오 public.hive_locks table이 보여 조회를 해보니 문제가 발생한 테이블의 lock이 남아 있는 걸 확인했다. lock 관련..

Data Engineering 2023.12.25

rancher version downgrade 후 clusterrolebinding 삭제 에러

rancher version 2.6.13 업그레이드 후 dashboard쪽 속도가 너무 느려져서 rancher v2.6.4 로 버전을 낮춘 다음 발생한 문제이다. 증상 RBAC 삭제 안됨 원인 rancher v2.6.13으로 업그레이드 후 모든 RBAC에 wrangler.cattle.io/auth-prov-v2-crb finalizer가 추가되었고, 다시 버전을 낮추면서 해당 finalizer를 처리할 controller가 없어지면서 계속 남아있게 되고 removing 상태로 남아있게 됨 조치 해당 finalizer를 처리할 필요가 없으므로 강제로 제거해주면서 문제 해결 됨

k8s 2023.08.16

[k8s] argocd aplication yaml 예시

기본 셋 apiVersion: argoproj.io/v1alpha1 kind: Application metadata: name: kafka-ui namespace: argocd spec: destination: namespace: kafka-ui server: 'https://kubernetes.default.svc' source: path: manifests/kafka-ui repoURL: 'git repo url' targetRevision: HEAD sources: [] project: default syncPolicy: automated: {} helm chart 사용 argocd를 통해 helm chart를 배포할 경우 helm 배포 리소스가 생성되지 않고 argocd를 통해 리소스가 관리되므로..

k8s 2023.08.16

[k8s] 기록 - etcd 리더 선출 실패로 실행되지 않을 경우 리더 선출 없이 실행

문제 control plane A에 control plane을 추가하던 중 control plane A가 죽으면서 control plane B의 etcd 복제가 중지되고 control plane B 추가 과정이 멈추게 되었다. 문제 발생 후 control plane A의 etcd에서 control plane B의 etcd를 찾을 수 없어 리더 선출 실패라는 메시지와 함께 리더 선출을 계속 실패했다. 느낌상 두번째 control plane을 붙이는 중 실패하면서 노드가 짝수가 되어(split-brain) 실패하는걸로 보였다. 리더 선출 실패는 control plane B의 ip가 미사용 interface에 셋팅된 ip로 설정되면서 A와 B의 통신 실패로 리더 선출 과정이 정상적으로 이루어 지지 않았다. c..

k8s 2023.02.08

window package manager

Windows Package Manager 기존에 사용하던 window package manager보다 괜찮아 보이는 package manager를 발견하여 글을 씁니다. scoop NOTE chocolatey라는 package manager도 있어서 같이 사용해 봤습니다. 설치 과정이나 사용법 등 명령어만 다르고 같은 동작을 하며, GUI 환경도 제공합니다. Install 설치 방법은 아래와 같이 간단합니다. 설치는 powershell admin에서 진행 # powershell admin Set-ExecutionPolicy RemoteSigned -scope CurrentUser Invoke-Expression (New-Object System.Net.WebClient).DownloadString(&#..

IT 2021.09.12

Node.js 버전 관리

Node.js 버전 관리 재택근무를 하다보니 집에서 사용하는 컴퓨터에 설치된 nodejs 버전(14)과 회사에서 사용하는 nodejs 버전이 달라 문제가 발생했다. linux에서 openjdk의 버전을 선택적으로 사용했던 기억이 나서 비슷한게 있나 찾아보니 nvm이란 프로그램을 발견했다. npm으로 간단하게 설치할 수 있어서 설치해보니 window에서는 사용 불가능... 다시 검색을 해보니 window는 따로 설치해야 된다. Window NVM: https://github.com/coreybutler/nvm-windows scoop이나 chocolatey에서도 제공하니 사용한다면 설치 가능! # install nvm with scoop scoop install nvm # install nvm with c..

카테고리 없음 2021.09.10

vcpkg

vcpkg window 외부 라이브러리를 설치하는 방법은 꽤 까다롭다. linux에선 패키지 관리자에서 검색하면 대부분의 라이브러리는 제공하는 경우가 많았다. 하지만 windows에서는 이러한 패키지 관리자가 따로 없어 필요한 라이브러리마다 찾아서 빌드하거나 빌드된 바이너리를 찾아서 사용하였다. 그러던 중 window에서도 linux처럼 패키지 관리자로 편하게 외부 라이브러리를 받는 방법을 찾았다. 특징 linux에서는 apt나 yum과 같은 패키지 관리자로 라이브러리를 설치하면 간편하게 라이브러리를 받을 수 있다. vcpkg를 설치했다면 다음 명령어 openssl을 설치할 수 있다. PS> vcpkg install openssl 그 뒤엔 visual studio에서 그냥 사용하면 된다.(vcpkg in..

카테고리 없음 2019.08.18

wsl2(preview version) network unreachable error

wsl2(preview version) network unreachable error wsl2 업그레이드 후 network unreachable 문제가 발생하는 경우가 있다. wsl의 라우트 설정이 정상적으로 되지 않아서 발생하는데 아직 개발중인 버전이라 그런 것 같다. window에서 확인한 wsl 아답터 wsl2로 업그레이드 후 wsl 에서 확인한 설정 wsl에서 route 설정과 subnet이 이상하다. 해결방법 해결방법은 아래와 같다. window cmd에서 ipconfig로 wsl 아답터 주소 확인 위 캡처에서는 192.168.176.1에 서브넷 마스크 255.255.240.0 wsl 접속 후 network 주소 변경 $ sudo ifconfig eth0 netmask 255.255.240.0 ..

IT 2019.08.15

virtualbox6 with hyper-v

virtualbox6 feature에서 눈에 띄는 부분이 있다. Added support for using Hyper-V as the fallback execution core on Windows host, to avoid inability to run VMs at the price of reduced performance In addition, the following items were fixed and/or added 약간의 성능 저하를 감수하고 hyper-v를 fallback excution core로 사용함으로써 hyper-v를 지원한다는 것! 별다른 설정은 필요없고 virtualbox 6.0 으로 업그레이드만 진행하면 된다. (virtualbox 6.0은 64bit만 지원하기 때문에 업그레이드..

카테고리 없음 2019.08.11