k8s 10

keydb

1. keydb vs redis기본적으로 keydb는 redis에서 fork되어 개선하고자 탄생했다.특히 keydb는 기존 redis에서 더 발전한 HA구성이 돋보인다.기존 reids처럼 master-slave 구성도 지원하지만,Active-Replica와 Multi-Master 이 두가지 특성이 Redis보다 발전된 load balancing 기능을 지원한다.이 경우 keydb에서 sentinel을 사용할 필요가 없어진다.(redis-sentinel-HA proxy 더이상 안써도되나!!!)Active-Replica:Active-Replica 모드는 하나의 마스터 노드와 여러 Replica노드를 허용하는 Redis의 일반적인 Master-Slave replica 모델을 개선한 것이다.Active-Repl..

redis(keydb) 2024.05.22

minio scale out

distributed mode로 minIO의 lifecycle 정책이나, read/write가 잘반영이 안되고있었다. 운영환경의 minIO 이전 담당자가 설정을 조금 특이하게 했었다. 즉 MINIO_DISTRIBUTED_NODES = s3-minio-{0...3}.s3-minio-headless..sv.cluster.local -> 4개 headless서비스만 설정되어있는데, replica는 또 19개로 설정되어있었다. 실제로 4개 minIO pod 외 나머지 15개 pod는 접근이나 활용이 되지않고있었다. 이를 바로잡기 위해서 여러가지 시도를 해봤다. 0. statefulset scale=0 1.statefulset 수정 MINIO_DISTRIBUTED_NODES = s3-minio-{0...7}.s3..

minIO 2024.03.25

calico설치 &upgrade

tigera-operator를 활용한 calcio권장 *버전 확인: https://docs.tigera.io/calico/latest/getting-started/kubernetes/requirements System requirements | Calico Documentation Review requirements before installing Calico to ensure success. docs.tigera.io * calico 3.26을 쓰다가 버그문제로,3.27로 업글 (이거였나, sts, deployment삭제하면, pod삭제가안됨..https://github.com/projectcalico/calico/issues/5715 ) 1.이미지준비 *폐쇄망에서는 operator이미지 받고,, 아래..

minIO셋업

minIO는 오브젝트 스토리지 매니지먼트툴이다. aws s3와 호환이된다. 오브젝트스토리지 매니지의 대표적은 오픈소스로, mlflow 와 함께 모델 버전관리에 쓰인다. 인풋데이터등 비정형데이터를 관리하기에 좋아 머신러닝에서 많이 쓰인다. 1.셋업 minio lifecycle정책을 집에서 테스트해볼일이 생겨서 간단하게 구축해보았다. -private git repostory에 helm index가 셋업된 helm registry가 있다고 가정 -private image registry가 있다고 가정 *주의: minIO 는 2021년 5월부터 AGPL 라이센스 v3가 되었다. 네트워크에 배포시 유관 소스코드 공개 필수 bitnami minIO helm chart를 활용했다. 먼저 values.yaml위에 덮어..

minIO 2024.03.08

폐쇄망 istio설치

prerequisite private registry 구축(harbor) private repository 구축(gitea) istio 1.17.5 으로 설치함 참고자료 https://istio.io/latest/docs/setup/install/istioctl/#generate-a-manifest-before-installation Install with Istioctl Install and customize any Istio configuration profile for in-depth evaluation or production use. istio.io 0.준비 #원하는 버전의 istio를 다운로드 https://github.com/istio/istio/releases/ Releases · isti..

디스크 교체시 osd 생성

0.사전점검 Confirm you will have enough space on your cluster after removing your OSDs to properly handle the deletion Confirm the remaining OSDs and their placement groups (PGs) are healthy in order to handle the rebalancing of the data Do not remove too many OSDs at once Wait for rebalancing between removing multiple OSDs 1.디스크 교체전 우리는 ceph cluster를 host-based cluster방식으로 구성 ceph cluster CR에서 useA..

폐쇄망 rook-ceph 완전히 삭제(clean up)

참고: 공식문서 https://rook.io/docs/rook/latest-release/Getting-Started/ceph-teardown/ Cleanup - Rook Ceph DocumentationCleanup Cleaning up a Cluster To tear down the cluster, the following resources need to be cleaned up: The resources created under Rook's namespace (default rook-ceph) such as the Rook operator created by operator.yaml and the cluster CR cluster.yaml. /varrook.io #pv, pvc삭제 #storagec..

폐쇄망 rook-ceph 설치

1.ceph를 사용할 노드에 라벨링 #노드라벨확인 k get nodes --show-labels #필요한 노드에 ceph용 라벨적용 k label nodes storage=ceph 1. rook operator 설치 k create -f crds.yaml k create -f common.yaml k create -f operator.yaml #아래 파라미터 설정확인 CSI_PROVISIONER_NODE_AFFINITY: "storage=ceph" #라벨이 된 노드에만 ceph osd 구동 CSI_PLUGIN_NODE_AFFINITY: "storage=ceph" #plugin node affinity설정 ROOK_ENABLE_DISCOVERY_DAEMON: "true" #자동감지daemon실행 ROOK_..

rook-ceph 이슈처리 -osd미생성이슈1

이슈상황1: 신규노드 3대 추가 및 rook-ceph 클러스터에서 detection및 osd 생성필요상황 그러나 3대노드 모두 osd생성안됨 신규노드 중 1개 노드의 rook-discover daemon이 리스타트 및 termination상태에서 stuck 조치: 해당 rook-discover pod강제삭제 (--force --grace-period=0) 결과: 해당 노드 discover daemon 재시작 이슈상황2: discover가 정상적으로 구동되었다면, 이후로 osd prepare job이 생성되어야하나 신규노드에서 생성이 안됨 확인사항: 신규노드 ceph 라벨링 추가확인완료 rook-ceph operator의 parameter usealldevice true 설정완료 조치: https://gi..