본문 바로가기
ClickhouseDB JSONExtractString 쿼리 실행에 CANNOT_ALLOCATE_MEMORY 에러가 발생하는 오류 발생 에러 Clickhouse JSONExtractString 쿼리 실행에 CANNOT_ALLOCATE_MEMORY 에러가 발생하는 오류 가 있었다.Error> TCPHandler: Code: 173. DB::Exception: Couldn't allocate 1898 bytes when parsing JSON: while executing 'FUNCTION JSONExtractString(labels :: 0, 'host_name' :: 1) -> JSONExtractString(labels, 'host_name') String : 2'. (CANNOT_ALLOCATE_MEMORY), Stack trace (when copying this message, always include the lines b.. 2024. 6. 7.
Ansible (2) 2024. 5. 31.
Ansible (1) - 설치와 ssh 설정 IaC [infrastructure as Code](ansible ,terraform 등)인터페이스의 구성 정보를 코드(스크립트)를 통해 관리하는 방법, 코드로 원하는 환경을 구축 하는 것입니다.콘솔로 설정하는 부분들을 실행 단계에 따라 코드로 관리하면 자동화 할 수 있다.기타 물리 장비와 가상머신 관련 구성 리소스를 관리하기 편하다.스크립트 형태이기 때문에 버전 관리가 용이하다 Ansible : 구성 관리 도구, 구축 된  인프라의 구성 정보를 관리 [장점: agent가 필요하지 않다. python 이 깔려있다면]Terraform : 인프라 구축 단계에서 구축 정보 관리 할 수 있고 DSL을 따로 알아야 합니다. 그 외 Puppet, Chef, Salt 등이 있습니다. Ansible대상 서버에 원하는 .. 2024. 5. 31.
인터넷 없는 환경에서 docker image 불러오는 방법 현재 사용 중인 images 를 확인합니다.docker images# docker imagesREPOSITORY TAG IMAGE ID CREATED SIZErabbitmq management 87f244107294 12 months ago 246MBredis 6.2.6-alpine 34e1dc356a22 2 years ago 702MB docker save를 입력하면 현재 경로에 image가 tar 파.. 2024. 5. 30.
[intelliJ] 버전 통일해야 하는 곳 > 요약 JDK 21을 지원하는 intelliJ 2023.3 버전으로 업그레이드 하는 과정에서 기존 작성 중이던 모듈들의 버전이 전부 뒤죽박죽이 되어서, 버전 체크 해야하는 곳을 요약 버전으로 작성해보았다. File -> Project structure -> Project -> Project SDK -> {버전} File -> Project structure -> Project -> Project language level -> {버전} File -> Project structure -> Project -> Modules -> -> Sources --> {버전} In project -> ctrl + alt + s -> Build, Execution, Deployment -> Compiler -> Java Comp.. 2023. 12. 29.
자주 쓰는 kubectl 명령어 자주 쓰는 kubectl 명령어 get kubectl get pod nginx -o yaml run, create, apply kubectl run nginx --image=nginx -o yaml --dry-run=client kubectl create deploy nginx --image=-nginx kubectl apply -f [yaml경로] delete kubectl delete [yaml경로] yaml 로 설치한 구성 전부 삭제할 경우, 해당 yaml 이 속한 디렉토리로 delete 명령 날리면 전부 함께 삭제 된다. 마찬가지로 실행 순서 상관없이 디렉토리 내 모든 yaml 기동을 하려면, 디렉토리경로를 입력해서 apply 해도 가능하다. 서비스 지정해서, 이름으로 내릴 수도 있다. kubec.. 2023. 8. 17.
[k8s] kustomize로 애플리케이션 동적 배포 애플리케이션 동적 배포를 위해 kustomize를 사용해보자 1. kustomize 명령어 설치 우선 kustomize 명령어를 사용 가능하도록 설치하고 (kubectl 이라고 생각하면 좋다) kustomize-install.sh #!/usr/bin/env bash curl -L \ https://github.com/kubernetes-sigs/kustomize/releases/download/kustomize%2Fv4.2.0/kustomize_v4.2.0_linux_amd64.tar.gz -o /tmp/kustomize.tar.gz tar -xzf /tmp/kustomize.tar.gz -C /usr/local/bin echo "kustomize installed successfully" 2. kust.. 2023. 8. 11.
[k8s] pod를 원하는 node에 배정하는 설정 값 1. cordon 2. drain 3. nodename 4. label 5. nodeSelector 6. node affinity & anti affinity : 선호하는 노드 설정하기 7. Taints & Tolerations : 노드 보호하기 1. cordon cordon 설정한 노드에는 pod가 뜨지 않는다, 스케줄링 되지 않는다. kubectl cordon k8s-node3(노드이름) #cordon 상태 해제 kubectl uncordon k8s-node3(노드이름) 2. drain drain 설정한 노드에 있는 pod를 다른 노드로 옮기고 cordon 설정 된다. kubectl drain k8s-node3(노드이름) --ignore-daemonsets --force - demonset이 있으면 .. 2023. 8. 4.
[k8s] 기본 오브젝트의 yaml 파일 파드(Pods) 디플로이먼트(Deployment) 레플리카셋(ReplicaSet) 잡(Job) 크론잡(CronJob) 데몬셋(DaemonSet) 스테이트풀셋(StatefulSet) 0. yaml파일 생성 후, kubectl 에서 명령어로 실행 kubectl apply -f ____.yaml + 예시 yaml 은 쿠버네티스 공식문서 - 워크로드 리소스 부분 참고 1. 파드(Pods) pod .yaml apiVersion: v1 kind: Pod metadata: name: nginx #kubectl get pod 하면 나오는 이름 labels: #pod의 레이블, 레이블은 필수값 아님 runs: nginx spec: # 배포할 컨테이너에 대한 값, Pod에서 호출할 컨테이너 이미지 지정 containers.. 2023. 8. 4.