System Engineering

System Engineering/Network

Istio envoy 패킷 유실 튜닝 기록

배경1G 환경에서 istio가 패킷 포워딩을 처리하는 과정에서 packet drop이 많이 발생하여, 이를 해결하는 과정을 기록하였습니다. 1. 튜닝 전 테스트 보통 서비스를 위한 네트워크의 패킷 유실율은 10^(-6) = 0.000001% 이하여야 합니다. 물리 인터페이스에서 약 0.6% 드랍 발생istio의 calico rx/tx에서 6%, 3.5% 드랍 발생. ethtool 통계 확인fx_fifo_errors: NIC의 FIFO 큐에서 Ring buffer로 옮기기 전에 큐가 가득 차서 발생한 에러rx_missed_errors: FIFO 큐 또는 Ring buffer가 넘쳐서 패킷이 드랍된 횟수# ethtool -S eno1 rx_missed_errors: 19882559 ... ..

System Engineering/Harbor

[Harbor] replication timeout

대역폭이 충분하지 않거나 레이어 용량이 큰 경우 replication이 timeout 발생합니다. replicate execution log[ERROR] [/controller/replication/transfer/image/transfer.go:396]: failed to pushing the blob sha256:, size *****: Put "http://harbor-core:80/v2/*": context deadline exceeded (Client.Timeout exceeded while awaiting headers)[ERROR] [/controller/replication/transfer/image/transfer.go:195]: Put "http://harbor-core:80/v2/*"..

System Engineering/Terraform

Terragrunt 기초 정리

1. GolssaryTerragruntTerraform으로 작성된 IaC를 Orchcstation하기 위한 Tool.UnitTerragrunt로 관리되는 단일 인프라 인스턴스로 hcl파일이 여기에 해당보통 하나의 VPC, DB, Server 등을 상징Root hcl과 Child hcl로 구분되며, K8s 기준 hcl hierarchy는 다음과 같다.root.hcl(base.bcl)Cluster 전체에 대한 kubernetes.hclnamespace에 대한 hclCR 등 의존성이 필요한 모듈에 대한 hclStackUnit의 집합으로 종종 하나의 region, business unit, app environment를 상징Module여러 리소스를 포함하는 .tf파일의 집합으로 Stack 내 하위 디렉터리로 ..

System Engineering/Ceph

[Ceph] mon timecheck 동작 방식과 MON_CLOCK_SKEW

Ceph 모니터링을 하면서 NTP 데몬을 timesyncd에서 chrony로 변경해주어도 MON_CLOCK_SKEW 알람이 발생하여 원인을 파악하기 위해 기록한 글입니다. Monitor의 역할Ceph mon은 Cluster Map을 유지Cluster map은 모든 mon, osd, mds의 위치를 결정합니다.csi를 사용하는 client는 osd 또는 mds로 read/write를 하기 전에 반드시 mon을 통해서 현재 cluster map의 정보를 얻어야 합니다.cluster map을 갱신한 client는 CRUSH 계산으로 object의 위치를 알아내어 osd로 직접 통신할 수 있습니다.Authentication과 Logging 제공합니다.Cluster의 모든 변화는 단일 Paxos 인스턴스에 쓰여지..

Hopulence
'System Engineering' 카테고리의 글 목록