λ‘œμΌ“πŸΎ
article thumbnail
[Kubernetes] HPA(Horizontal Pod Autoscaler) μ•Œκ³ λ¦¬μ¦˜
DevOps/Kubernetes 2024. 2. 25. 16:32

μΏ λ²„λ„€ν‹°μŠ€ ν΄λŸ¬μŠ€ν„°μ—λŠ” 3κ°€μ§€μ˜ AutoScaler κ°€ μžˆμŠ΅λ‹ˆλ‹€. HPA, VPA, CA μ£ . κ°„λ‹¨νžˆ μ„€λͺ…ν•΄λ³΄μžλ©΄, HPA : Horizontal Pod Autoscaler 의 μ€„μž„λ§λ‘œ, νŒŒλ“œμ˜ 갯수λ₯Ό ν™•μž₯/μΆ•μ†Œ ν•΄μ€Œ VPA : Vertical Pod Autoscaler 의 μ€„μž„λ§λ‘œ, νŒŒλ“œμ˜ κ°―μˆ˜κ°€ μ•„λ‹Œ μ§€μ •λœ λ¦¬μ†ŒμŠ€λ₯Ό ν™•μž₯/μΆ•μ†Œ ν•΄μ€Œ CA : Cluster Autoscaler 의 μ€„μž„λ§λ‘œ, λ…Έλ“œμ˜ 갯수λ₯Ό ν™•μž₯/μΆ•μ†Œ ν•΄μ€Œ HPA, VPA λŠ” Metrics Server κ°€ μ„€μΉ˜λ˜μ–΄ μžˆμ–΄μ•Ό ν•˜λ©°, 또 VPC 같은 κ²½μš°λŠ” λ”°λ‘œ μ„€μΉ˜ν•΄μ£Όμ–΄μ•Ό ν•©λ‹ˆλ‹€. 그리고 CA λŠ” 보톡 Karpenter λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. 이번 κΈ€μ—μ„œλŠ” HPA 에 λŒ€ν•΄ λ‹€λ€„λ³΄κ³ μž ν•˜λŠ”λ°, 사싀 HPA λŠ” μ–΄λ €μš΄ κ°œλ…μ΄ 크게 μ—†λ‹€κ³  μƒκ°ν•©λ‹ˆλ‹€. λ”°..

article thumbnail
[Terraform] -migrate-state vs. -reconfigure
DevOps/Terraform 2024. 2. 19. 23:28

ν…ŒλΌνΌμ„ 처음 μ‹œμž‘ν•˜λ©΄ ν—·κ°ˆλ¦¬λŠ” λͺ…λ Ήμ–΄ μ˜΅μ…˜μ΄ μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ terraform init λͺ…λ Ήμ–΄μ˜ -migrate-state 와 -reconfigure μ£ . 보톡 backend ꡬ성을 λ³€κ²½ν•˜λ©΄ ν•΄λ‹Ή μ˜΅μ…˜μ„ μ‚¬μš©ν•˜λΌλŠ” λͺ…λ Ήμ–΄λ₯Ό λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. λ‘œκ·Έμ—μ„œ -migrate-state 와 -reconfigure 에 λŒ€ν•œ μ„€λͺ…이 λ‚˜μ™€μžˆμ§€λ§Œ λ”±νžˆ μ™€λ‹Ώμ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€. tfstate 의 λ°©ν–₯성을 μ’Œμ§€μš°μ§€ ν•˜λŠ” μ˜΅μ…˜μ΄κΈ° λ•Œλ¬Έμ— 잘λͺ» 썼닀간 인프라가 꼬일 μˆ˜λ„ μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, λΆ„λͺ… λ³€κ²½(0 to change)ν•˜λŠ” 건데 μƒˆλ‘­κ²Œ(1 to add) μƒμ„±ν•œλ‹€λŠ” 문ꡬλ₯Ό λ³Ό 수 있죠. 이런 κ²½μš°λŠ” 보톡 backend ꡬ성을 λ³€κ²½ν•˜κ³ , -reconfigure λ₯Ό μ‚¬μš©ν–ˆμ„ λ•Œ λ°œμƒν•©λ‹ˆλ‹€. μ˜ˆμ œμ—¬μ„œ λ”± ν•˜λ‚˜μ˜ state 만 μ‘΄μž¬ν•˜..

article thumbnail
[Cert manager] μ„œλΉ„μŠ€ 도메인 svc.cluster.local κ³Ό HTTPS ν†΅μ‹ ν•˜κΈ°
DevOps/Cert Manager 2024. 2. 5. 21:06

μΏ λ²„λ„€ν‹°μŠ€ 내뢀끼리 톡신을 ν•  λ•Œ 보톡 μ„œλΉ„μŠ€μ˜ 도메인 svc.cluster.local 을 μ΄μš©ν•˜μ—¬ ν†΅μ‹ ν•˜κ²Œ λ©λ‹ˆλ‹€. μ™ΈλΆ€μ—μ„œ λ‚΄λΆ€λ‘œ λ“€μ–΄μ˜€λŠ” 톡신에 λŒ€ν•΄μ„œλŠ” Ingress λ₯Ό μ΄μš©ν•΄ https 톡신을 ν•˜κ²Œλ˜μ£ . ν•˜μ§€λ§Œ Ingress λŠ” λ‚΄λΆ€ 톡신에 λŒ€ν•΄μ„œλŠ” https 톡신을 보μž₯해주진 μ•Šμ£ . 이 뢀뢄에 λŒ€ν•΄μ„œλŠ” Istio 의 mTLS λ₯Ό μ΄μš©ν•΄μ„œ νŒŒλ“œμ™€μ˜ 톡신은 λͺ¨λ‘ https 톡신을 ν•˜κ²Œ ν•  수 μžˆμŠ΅λ‹ˆλ‹€. Istio 의 mTLS κ°€ κΆκΈˆν•˜λ‹€λ©΄? [Istio] μ‰Ώ! 우리만의 비밀이야 - mTLS (ν™•μΈνŽΈ) [Istio] μ‰Ώ! 우리만의 비밀이야 - mTLS (κ²€μ¦νŽΈ) κ·Έλ ‡λ‹€λ©΄ mTLS λ₯Ό μ΄μš©ν•˜μ§€ μ•Šκ³  λ‚΄λΆ€ 톡신은 μ–΄λ–»κ²Œ https 톡신을 ν•  수 μžˆμ„κΉŒμš”? 정닡은 κ°„λ‹¨ν•©λ‹ˆλ‹€. νŒŒλ“œ λ§ˆλ‹€ certifica..

article thumbnail
[Kubernetes] Control Plane κ³Ό Data Plane 이 μΉœκ΅¬κ°€ λ˜λŠ” 방법 - kubeadm init 편
DevOps/Kubernetes 2024. 1. 24. 23:06

EKS 와 같은 ν΄λΌμš°λ“œκ°€ μ œκ³΅ν•΄μ£ΌλŠ” μΏ λ²„λ„€ν‹°μŠ€κ°€ μ•„λ‹Œ, μ˜¨ν”„λ ˆλ―ΈμŠ€ ν™˜κ²½μ—μ„œ μΏ λ²„λ„€ν‹°μŠ€λ₯Ό μ„€μΉ˜ν•œλ‹€κ³  ν•˜λ©΄ 보톡 kubeadm μ΄λΌλŠ” νˆ΄μ„ μ΄μš©ν•΄μ„œ κ΅¬μ„±ν•˜κ²Œ λ©λ‹ˆλ‹€. Control Plane 은 kubeadm init λ₯Ό 톡해 κ΅¬μ„±λ˜κ³ , Data Plane 은 kubeadm join 을 톡해 μΏ λ²„λ„€ν‹°μŠ€μ— μ‘°μΈν•˜κ²Œ λ©λ‹ˆλ‹€. kubeadm 툴 ν•˜λ‚˜λ©΄ API Server, Scheduler, Control Manager, ETCD λ“± Control Plane 에 ν•„μš”ν•œ λͺ¨λ“  것듀이 λ§ˆλ²•μ²˜λŸΌ μžλ™μœΌλ‘œ κ΅¬μ„±λ˜μ£ . λ¬Όλ‘  kubelet 그리고 containerd 와 같은 cri-κ΅¬ν˜„μ²΄λŠ” 이미 μ‹€ν–‰λ˜κ³  μžˆμ–΄μ•Ό ν•©λ‹ˆλ‹€! μžλ™μ΄λž€ 것이 ν™•μ‹€νžˆ νŽΈμ˜μ„±μ„ μ œκ³΅ν•΄μ£ΌκΈ΄ ν•˜μ§€λ§Œ, μžλ™μœΌλ‘œ κ΅¬μ„±λ˜κΈ° λ•Œλ¬Έμ— κ·Έ μ•ˆμ—μ„œ 무슨 일이 일어..

article thumbnail
[Kubernetes] 둜그 λ•Œλ¬Έμ— λ…Έλ“œ λ””μŠ€ν¬κ°€ λΆ€μ‘±ν•˜λ©΄? 이미지가 λ…Έλ“œ λ””μŠ€ν¬λ₯Ό μ „λΆ€ μ°¨μ§€ν•˜λ©΄ μ–΄λ–‘ν•˜μ§€? - Disk Pressure μ˜ˆλ°©ν•˜κΈ°
DevOps/Kubernetes 2024. 1. 9. 00:10

μ˜ˆμ „λΆ€ν„° μΏ λ²„λ„€ν‹°μŠ€λ₯Ό κ΄€λ¦¬ν•˜λŠ” 데 μžˆμ–΄μ„œ κΆκΈˆν•œ 점이 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. "μ—„μ²­ λ‚˜κ²Œ λ§Žμ€ 둜그λ₯Ό μƒμ„±ν•˜λŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜λ“€λ‘œ 인해 λ…Έλ“œμ˜ λ””μŠ€ν¬κ°€ 뢀쑱해지면 μ–΄λ–‘ν•˜μ§€?" "계속 μƒˆλ‘œμš΄ μ»¨ν…Œμ΄λ„ˆ 이미지λ₯Ό λ‹€μš΄ λ°›μ•„μ„œ 그둜 인해 λ…Έλ“œμ˜ λ””μŠ€ν¬κ°€ 뢀쑱해지면 μ–΄λ–‘ν•˜μ§€?" λ…Έλ“œμ˜ λ””μŠ€ν¬κ°€ λΆ€μ‘±ν•˜κ²Œ 되면 λ…Έλ“œμ—μ„œ DiskPressure λΌλŠ” λ©”μ‹œμ§€λ₯Ό λ±‰κ²Œ 될 κ²ƒμž…λ‹ˆλ‹€. 그런데 κΆκΈˆν•œ μš”μ μ€ λ””μŠ€ν¬κ°€ λΆ€μ‘±ν•  λ•Œ "μ–΄λ–»κ²Œ ν•΄κ²°ν•˜λƒ" κ°€ μ•„λ‹ˆκ³  "μ–΄λ–»κ²Œ μ˜ˆλ°©ν•˜λƒ" μž…λ‹ˆλ‹€. κ·Έλž˜μ„œ 이번 κΈ€μ—μ„œλŠ” μ˜ˆλ°©ν•˜λŠ” 방법에 λŒ€ν•΄ μ•Œμ•„λ³΄κ³ μž ν•©λ‹ˆλ‹€. λ ›μΈ λ‘λ”μ½”λ“œ~ μ €λŠ” 개인적으둜 μΏ λ²„λ„€ν‹°μŠ€λ₯Ό κ΄€λ¦¬ν•˜λ©΄μ„œ κ°€μž₯ μ€‘μš”μ‹œν•˜κ²Œ μƒκ°ν•˜λŠ” ν‚€μ›Œλ“œκ°€ μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ μΌμ‹œμ (empheral) κ³Ό 동적(Dynamic) μž…λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄, μΏ λ²„λ„€ν‹°μŠ€μ˜ κ°€μž₯ κΈ°λ³Έ..

article thumbnail
[νŠΈλŸ¬λΈ” λΉ΅μ•Ό] 6κ°œμ›” λ™μ•ˆ 즐거웠닀.. μž˜κ°€κ³  λ‹€μ‹  보지 말자! - 504 Gateway Timeout (上편)

μ•žμ„œ μž‘μ„±ν–ˆλ˜ νŠΈλŸ¬λΈ” μŠˆνŒ… κ΄€λ ¨ κΈ€ 쀑에 ν•œ 글은 제λͺ©μ΄ "νƒ€λ…ΈμŠ€λŠ” 이런 λŠλ‚ŒμΌκΉŒ?" 라고 μ§€μ—ˆμ„ 만큼 κ½€λ‚˜ νž˜λ“€μ—ˆλ˜ μ—λŸ¬μ˜€μ£ . 근데 μ΄λ²ˆμ— κ²ͺ은 μ—λŸ¬λŠ” μ•žμ„  κΈ€ 제λͺ©μ— νƒ€λ…ΈμŠ€ 라고 뢙이기 민망할 μ •λ„λ‘œ ν•΄κ²°ν•˜κΈ°κ°€ μ–΄λ €μ› κ³ , λ˜ν•œ μ—λŸ¬κ°€ 6κ°œμ›”μ΄λ‚˜ 지속될 μ •λ„λ‘œ νž˜λ“€μ—ˆλ˜ νŠΈλŸ¬λΈ” μŠˆνŒ…μ΄μ˜€μŠ΅λ‹ˆλ‹€. λ“€μ–΄κ°€κΈ° μ•žμ„œ κ°„λž΅ν•˜κ²Œ ν˜„μž¬ ν™˜κ²½μ€ λ‹€μŒκ³Ό κ°™μ•„μš”. μΏ λ²„λ„€ν‹°μŠ€λŠ” AWS EKS(v1.23) λ₯Ό μ΄μš©ν•˜κ³  있으며, μ„œλΉ„μŠ€λ©”μ‹œ μ„œλΉ„μŠ€μΈ μ΄μŠ€ν‹°μ˜€(v1.18)의 인그레슀 κ²Œμ΄νŠΈμ›¨μ΄μ™€ AWS ALB λ₯Ό λ§΅ν•‘ν•˜μ—¬ μ™ΈλΆ€μ—μ„œ λ‚΄λΆ€ μ„œλΉ„μŠ€μ— 접근이 κ°€λŠ₯ν•©λ‹ˆλ‹€. 그리고 μ—¬κΈ°μ„œ μ‚¬μš©ν•  λ‚΄λΆ€ μ„œλΉ„μŠ€λŠ” ArgoCD(v2.5) μž…λ‹ˆλ‹€. μ—λŸ¬λŠ” ME! κ°€ ArgoCD 에 접근을 ν–ˆμ„λ•Œ λΆˆνŠΉμ •ν•˜κ²Œ 504 Gateway Timeout 이 발..

article thumbnail
[Github Action] MacOS.. λ„Œ μ™œ ARC 지원이 μ•ˆλ˜μ„œ... - Runner with MacOS
DevOps/Github Action 2023. 11. 12. 18:11

μΏ λ²„λ„€ν‹°μŠ€ ν™˜κ²½μ—μ„  ARC λ₯Ό μ΄μš©ν•˜λ©΄ 어렡지 μ•Šκ²Œ λ‹€μ–‘ν•œ OS μœ„μ— μ˜€ν† μŠ€μΌ€μΌλ§μ— κΈ°λ°˜ν•œ Runner κ΅¬ν˜„μ΄ κ°€λŠ₯ν•©λ‹ˆλ‹€. Karpenter 와 ν•¨κ»˜λΌλ©΄ 더 효율적이죠. (Karpenter κ³Ό κΆκΈˆν•˜λ‹€λ©΄ μ—¬κΈ° μ°Έκ³ , ARC κ°€ κΆκΈˆν•˜λ‹€λ©΄ μ—¬κΈ° μ°Έκ³ ) λ˜ν•œ EKS μ—μ„œ Linux 와 Windows 기반의 λ…Έλ“œλ₯Ό 지원해주기 λ•Œλ¬Έμ— λ„μš°κΈ°λ§Œ ν•œλ‹€λ©΄ νŒŒλ“œ λ‹¨μœ„λ‘œ Runner λ₯Ό 배포할 수 μžˆμŠ΅λ‹ˆλ‹€. (EKS μ—μ„œ Windows λ₯Ό ν™œμ„±ν™” ν•˜λŠ” 방법이 κΆκΈˆν•˜λ‹€λ©΄ μ—¬κΈ° μ°Έκ³ ) ν•˜μ§€λ§Œ MacOS λŠ” μ–˜κΈ°κ°€ λ‹¬λΌμš”.. EKS μ—μ„œ 지원을 μ•ˆν•΄μ€λ‹ˆλ‹€.. κ·Έλž˜μ„œ λ§Œμ•½ MacOS 기반의 μ›Œμ»€ λ…Έλ“œλ₯Ό ν”„λ‘œλΉ„μ €λ‹ ν•˜λ €κ³  ν•œλ‹€λ©΄, μ•„λ§ˆ MacOS 기반의 μΈμŠ€ν„΄μŠ€λ₯Ό λ„μš΄ ν›„ κ±°κΈ°μ„œ μˆ˜λ™μœΌλ‘œ EKS ν΄λŸ¬μŠ€ν„°μ— 쑰인해야 ν•  κ²ƒμž…λ‹ˆλ‹€...

article thumbnail
[Github Action] EKS, Karpenter 그리고 Window Runner
DevOps/Github Action 2023. 11. 6. 23:09

λ“€μ–΄κ°€κΈ° μ•žμ„œ μ €λŠ” Windows λ₯Ό 많이 닀뀄보지 μ•Šμ•˜κΈ° λ•Œλ¬Έμ— λΆ€μ‘±ν•˜κ±°λ‚˜ ν‹€λ¦° 뢀뢄이 μžˆμ„ 수 μžˆμŠ΅λ‹ˆλ‹€! μΏ λ²„λ„€ν‹°μŠ€λŠ” v1.23 버전, Karpenter λŠ” v0.31 λ²„μ „μž…λ‹ˆλ‹€. μΏ λ²„λ„€ν‹°μŠ€(EKS) ν™˜κ²½μ— μœˆλ„μš°μ™€ Karpenter λ₯Ό ν™œμ„±ν™” ν•˜λŠ” 방법에 λŒ€ν•΄μ„  μ—¬κΈ°λ₯Ό μ°Έκ³ ν•˜μ„Έμš”. Karpenter 에 λŒ€ν•΄ κΆκΈˆν•˜λ‹€λ©΄ μ—¬κΈ°λ₯Ό μ°Έκ³ ν•˜μ„Έμš”. 그럼 λ ›μΈ λ‘λ”μ½”λ“œ~ μš°λ¦¬κ°€ μΏ λ²„λ„€ν‹°μŠ€λ₯Ό μ‚¬μš©ν•˜λŠ” 방법은 λ°”λ‘œ μ˜€μΌ€μŠ€νŠΈλ ˆμ΄μ…˜μ„ μœ„ν•¨μ΄μ£ . ν•˜λ‚˜μ˜ λ§ˆμŠ€ν„° ν”Œλ ˆμΈμœΌλ‘œ μ—¬λŸ¬ λ…Έλ“œμ˜ μ—¬λŸ¬ νŒŒλ“œλ₯Ό μ’€ 더 μ‰½κ²Œ κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄μ„œμž…λ‹ˆλ‹€. Action Runner μ—­μ‹œ μ˜ˆμ™ΈλŠ” μ•„λ‹ˆμ£ . Action Runner Controller λ₯Ό μ΄μš©ν•˜λ©΄ μ‰½κ²Œ μΏ λ²„λ„€ν‹°μŠ€ ν™˜κ²½μ—μ„œ νŒŒλ“œ λ‹¨μœ„μ˜ Runner 배포가 κ°€λŠ₯ν•©λ‹ˆλ‹€. 맨 처음 Action..

article thumbnail
[Kubernetes] λ„ˆ λ‚΄ λ…Έλ“œκ°€ 되라! - EKS Windows ν™œμ„±ν™”
DevOps/Kubernetes 2023. 10. 25. 01:26

μš°λ¦¬λŠ” 보톡 EKS 의 μ›Œμ»€ λ…Έλ“œλ‘œ x86 이든, arm64 이든 λ¦¬λˆ…μŠ€λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. 특히 EKS ν™˜κ²½μ΄λΌλ©΄ μ•„λ§ˆμ‘΄ λ¦¬λˆ…μŠ€2λ₯Ό μ‚¬μš©ν•˜κ² μ§€μš”. 근데 κ°„ν˜Ή μ›Œμ»€ λ…Έλ“œλ‘œ μœˆλ„μš°λ₯Ό ν•„μš”λ‘œ ν•˜λŠ” κ²½μš°κ°€ μžˆμŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ 라이브러리λ₯Ό λ§Œλ“€μ—ˆλŠ”λ°, λ¦¬λˆ…μŠ€ 뿐만 μ•„λ‹ˆλΌ μœˆλ„μš° ν™˜κ²½μ—μ„œλ„ 이 라이브러리λ₯Ό ν•„μš”λ‘œ ν•©λ‹ˆλ‹€. κ·Έλ ‡λ‹€λ©΄ 이 라이브러리λ₯Ό μ΄λ―Έμ§€λ‘œ λΉŒλ“œν•˜λ €λ©΄ λ¦¬λˆ…μŠ€κ°€ μ•„λ‹Œ μœˆλ„μš° ν™˜κ²½μ—μ„œ λ§Œλ“€μ–΄μ•Ό ν•˜μ£ . λ‹€ν–‰νžˆ EKS λŠ” μœˆλ„μš°λ₯Ό μ§€μ›ν•΄μ€λ‹ˆλ‹€. λ˜ν•œ Karpenter μ—μ„œλ„ μœˆλ„μš°λ₯Ό 지원해주죠. 그럼 μ–΄λ–»κ²Œ EKS ν™˜κ²½μ—μ„œ μœˆλ„μš°λ₯Ό ν™œμ„±ν™” ν•˜λŠ”μ§€, 이후 Karpenter μ—μ„œ μœˆλ„μš°λ₯Ό μ–΄λ–»κ²Œ ν”„λ‘œλΉ„μ €λ‹ ν•˜λŠ”μ§€ ν•œλ²ˆ μ•Œμ•„λ³΄λ„λ‘ ν•˜μ£ . 참고둜 μ§„ν–‰ν•œ μΏ λ²„λ„€ν‹°μŠ€ 버전은 1.23 이고, Karpenter λŠ” 0.31..

article thumbnail
[Github Action] cmake 와 일곱 파이썬
DevOps/Github Action 2023. 10. 6. 18:10

κ°œλ°œμ„ ν•˜λ‹€λ³΄λ©΄ ν•œκ°€μ§€ λ²„μ „λΏλ§Œ μ•„λ‹ˆλΌ λ‹€μ–‘ν•œ 버전을 μ§€μ›ν•΄μ€˜μ•Ό ν•©λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ νŒŒμ΄μ¬μ„ μ‚¬μš©ν•œλ‹€λ©΄ 3.8, 3.9, 3.10 버전 λͺ¨λ‘ 지원해주어야 ν•˜μ£ . λ²„μ „λΏλ§Œ OS 도 Linux x86, arm, Window, MacOS λ“± λ‹€μ–‘ν•˜κ²Œ 지원해주어야 ν•©λ‹ˆλ‹€. C/C++ 둜 λ§Œλ“€μ–΄μ§„ ν”„λ‘œμ νŠΈλ₯Ό swig λ₯Ό 톡해 파이썬, μžλ°”, Go λ“± λ‹€μ–‘ν•œ μ–Έμ–΄κ³Ό λ‹€μ–‘ν•œ λ²„μ „μ—μ„œ μ‚¬μš©ν•  수 μžˆλŠ” νŒ¨ν‚€μ§€λ₯Ό λ§Œλ“€μ–΄μ•Ό ν–ˆλ˜ 적이 μžˆμŠ΅λ‹ˆλ‹€. C/C++ ν”„λ‘œμ νŠΈμ— μ‚¬μš©λ˜λŠ” CMakeLists.txt(cmake) 와 Github Action 의 matrix λ₯Ό μ΄μš©ν•˜λ©΄ 어렡지 μ•Šκ²Œ λ‹€μ–‘ν•œ λ²„μ „μ˜ νŒ¨ν‚€μ§€λ₯Ό λ§Œλ“€ 수 μžˆμ„ κ±° κ°™μŠ΅λ‹ˆλ‹€. 이번 κΈ€μ—μ„œλŠ” 파이썬과 Linux x86 만 닀루며, 3.8, 3.9, 3.10 λ²„μ „μ˜ 파이..

article thumbnail
[Github Action] λ„ˆ cache λœκ±°μ•Ό! - ccache λ₯Ό μ΄μš©ν•œ c/c++ λΉŒλ“œ
DevOps/Github Action 2023. 10. 5. 22:16

C/C++ 기반의 ν”„λ‘œμ νŠΈλ₯Ό λΉŒλ“œν•˜λŠ”λ° μžˆμ–΄ 보톡 cmake 와 make λ₯Ό μ΄μš©ν•΄μ„œ λΉŒλ“œλ₯Ό ν•˜κ²Œ λ©λ‹ˆλ‹€. κ°„λž΅ν•˜κ²Œ cmake λŠ” CMakeList.txt λ₯Ό 기반으둜 Makefile λ₯Ό λ§Œλ“€μ–΄μ£Όκ³ , make λŠ” Makefile λ₯Ό 톡해 ν”„λ‘œμ νŠΈλ₯Ό λΉŒλ“œν•©λ‹ˆλ‹€. cmake λŠ” λΉŒλ“œλ₯Ό μœ„ν•œ ν”„λ‘œμ„ΈμŠ€μ΄κ³ , make λŠ” μ‹€μ œλ‘œ λΉŒλ“œλ₯Ό ν•΄μ£ΌλŠ” ν”„λ‘œμ„ΈμŠ€μΈ μ…ˆμ΄μ£ . 그런데 C/C++ ν”„λ‘œμ νŠΈλ₯Ό λΉŒλ“œν•˜λŠ”λ°, λΉŒλ“œ μ‹œκ°„μ΄ λŒ€λž΅ 1μ‹œκ°„ 정도 μ†Œλͺ¨λ©λ‹ˆλ‹€. λ„ˆλ¬΄ μ˜€λž˜κ±Έλ €μš”.. μ§„ν–‰ν•œ runner λŠ” 2GB Memory 의 μΈμŠ€ν„΄μŠ€μž…λ‹ˆλ‹€. λΉŒλ“œ μ‹œκ°„μ„ λ‹¨μΆ•μ‹œν‚€κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. λΉŒλ“œ μ‹œκ°„μ„ λ‹¨μΆ•μ‹œν‚€κΈ° μœ„ν•œ λ°©λ²•μœΌλ‘œ κ°€μž₯ λ¨Όμ € λ– μ˜€λ₯΄λŠ” 것은 λ°”λ‘œ 캐싱 μž…λ‹ˆλ‹€. 맀번 같이 νŒŒμΌμ„ λΉŒλ“œν•˜μ§€ 말고, λ°˜λ³΅λ˜λŠ” λΉŒλ“œ νŒŒμΌμ„ μΊμ‹±ν•΄λ†“μœΌλ©΄ μ‹œκ°„μ΄..

article thumbnail
[Cert manager] Let's Encrypt λ₯Ό μ΄μš©ν•΄μ„œ Istio Gateway 에 TLS 을 μ μš©ν•΄λ³΄μž! - Route53
DevOps/Cert Manager 2023. 9. 13. 23:52

μ§€λ‚œ κΈ€μ—μ„œ Cloudflare μ—μ„œ μƒμ„±ν•œ 도메인과 Let's Encrypt λ₯Ό μ΄μš©ν•΄μ„œ TLS λ₯Ό httpbin 에 μ μš©ν–ˆμ—ˆμŠ΅λ‹ˆλ‹€. μ΄λ²ˆμ—λŠ” Cloudflare 보닀 더 λŒ€μ€‘μ μΈ Route53 μ—μ„œ μƒμ„±ν•œ 도메인에도 TLS λ₯Ό μ μš©ν•΄λ³΄κ³ μž ν•©λ‹ˆλ‹€. Route53 μ—μ„œ κ΅¬λ§€ν•œ 도메인에 λŒ€ν•΄μ„œλŠ” AWS ACM 을 μ΄μš©ν•΄μ„œ 무료둜 TLS λ₯Ό λ°œκΈ‰λ°›μ„ 수 μžˆμŠ΅λ‹ˆλ‹€. 그리고 λ°œκΈ‰λ°›μ€ TLS λ₯Ό AWS ALB 에 λ°”λ‘œ μ μš©ν•˜κ²Œ 되면 μ•„μ£Ό μ‰½κ²Œ TLS 톡신이 κ°€λŠ₯ν•©λ‹ˆλ‹€. κ·Έλž˜μ„œ ALB 와 Istio λ₯Ό μ΄μš©ν•˜κ²Œ 되면 λŒ€λž΅ μ•„λž˜ κ·Έλ¦Όκ³Ό κ°™μ£ . ν•˜μ§€λ§Œ μ™ΈλΆ€λ§Œ TLS λ₯Ό 톡신이 κ°€λŠ₯ν•˜λ―€λ‘œ 내뢀에선 TLS 톡신이 λΆˆκ°€λŠ₯ν•©λ‹ˆλ‹€. ACM 을 톡해 도메인에 λŒ€ν•œ Cert λ₯Ό λ°œκΈ‰λ°›μ„ 수 μžˆλŠ”λ°, 이 값은 λ‹€μš΄λ°›μ•„μ„œ μ‚¬μš©λΆˆκ°€λŠ₯..

article thumbnail
[Cert manager] Let's Encrypt λ₯Ό μ΄μš©ν•΄μ„œ Istio Gateway 에 TLS 을 μ μš©ν•΄λ³΄μž! - Cloudflare
DevOps/Cert Manager 2023. 9. 7. 21:48

이 글은 TLS 에 λŒ€ν•œ 기초적인 κ°œλ…μ΄ ν•„μš”ν•©λ‹ˆλ‹€. μ΅œμ†Œν•œ HTTPS κ°€ μ–΄λ–»κ²Œ λ™μž‘ν•˜λ©°, CA, CSR, tls.cert λ“±κ³Ό 같은 것이 무엇인지 μ•Œμ•„μ•Ό ν•©λ‹ˆλ‹€. λ―Έλ‹ˆ PC μ—μ„œ μΏ λ²„λ„€ν‹°μŠ€ ν΄λŸ¬μŠ€ν„°λ₯Ό κ΅¬μ„±ν•˜μ—¬ 이것저것 해보고 μžˆλŠ”λ°, 늘 ν•˜λ‚˜ λ§ˆμŒμ— κ±Έλ¦¬λŠ” 것이 μžˆμ—ˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ 도메인과 TLS μž…λ‹ˆλ‹€! 도메인 같은 경우 λ§₯ /etc/host 에 μΆ”κ°€ν•΄μ„œ μ‚¬μš©ν•˜κ³  μžˆμ—ˆκ³ , TLS κ°€ μ μš©λ˜μ§€ μ•Šλ‹€λ³΄λ‹ˆ 늘 주의 μš”ν•¨μ„ 달고 μžˆμ—ˆμ£ . AWS ALB λ₯Ό μ‚¬μš©ν•˜λ©΄ Route53 κ³Ό ACM 을 ν†΅ν•΄μ„œ TLS μ μš©ν•˜κΈ° μ‰½μ§€λ§Œ, AWS 없이 TLS λ₯Ό μ μš©ν•˜λ €λ©΄ κ²°κ΅­ TLS λ₯Ό ꡬ맀해야 ν•©λ‹ˆλ‹€. TLS λŠ” 보톡 유료인데, Let's Ecrypt λŠ” 무료둜 TLS 을 μ œκ³΅ν•΄μ£ΌκΈ° λ•Œλ¬Έμ— 이번 κΈ€μ—μ„œλŠ” 둜컬 ν™˜κ²½μ—μ„œ ..

article thumbnail
[λ‚˜μž‘μ†ŒμΏ ] μ„±λ²½κ³Ό μ €μž₯μ†Œ 짓기 feat. Istio, CSI Driver NFS

μ§€λ‚œ κΈ€μ—μ„œλŠ” proxmox 을 μ„€μΉ˜ν•œ ν›„, μΏ λ²„λ„€ν‹°μŠ€ ν΄λŸ¬μŠ€ν„°λ₯Ό μƒμ„±ν–ˆμŠ΅λ‹ˆλ‹€. μ΄λ²ˆμ—λŠ” μ„œλΉ„μŠ€ 메쉬와 컨트둀러 역할을 ν•΄μ£ΌλŠ” Istio 와 CSI Driver NFS λ₯Ό μ„€μΉ˜ν•©λ‹ˆλ‹€. Istio λŠ” Nginx Controller λ₯Ό λŒ€μ‹ ν•˜κ³ , mTLS 와 같은 κΈ°λŠ₯을 μ‚¬μš©ν•˜κΈ° μœ„ν•΄ μ„€μΉ˜ν•˜κ³ , CSI Driver NFS λŠ” νŒŒλ“œλ“€μ˜ λ³Όλ₯¨μœΌλ‘œ μ‚¬μš©ν•˜κΈ° μœ„ν•΄ μ„€μΉ˜ν•©λ‹ˆλ‹€. Consul 을 λ„μž…ν•΄λ³΄κ³  싢은데 이건 μΆ”ν›„ μž‘μ—…ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€!! λͺ¨λ“  μž‘μ—…μ€ IaC 둜 κ΄€λ¦¬ν•˜κΈ° μœ„ν•˜μ—¬ ν…ŒλΌνΌμœΌλ‘œ μ§„ν–‰λ©λ‹ˆλ‹€! λ ›μΈ λ‘λ”μ½”λ“œ~ Istio Helm λ²„μ „μ˜ μ„€μΉ˜λ₯Ό μœ„ν•œ κ°€μ΄λ“œκ°€ 곡식 λ¬Έμ„œμ— 잘 μ„€λͺ… λ˜μ–΄ μžˆμŠ΅λ‹ˆλ‹€. Helm Provider 에 맞게 μ½”λ“œν™”λ₯Ό μ§„ν–‰ν–ˆκ³ , terraform apply λ₯Ό 톡해 λ°°ν¬ν–ˆμŠ΅λ‹ˆλ‹€. ꡳ이 혼자 ..

article thumbnail
[Istio] μ‰Ώ! 우리만의 비밀이야 - mTLS (κ²€μ¦νŽΈ)
DevOps/Istio 2023. 8. 17. 22:52

μ§€λ‚œ κΈ€μ—μ„œ Istio mTLS 에 λŒ€ν•΄ μ•Œμ•„λ³΄μ•˜κ³ , μ μš©λ„ ν•΄λ΄€μŠ΅λ‹ˆλ‹€. 또 Kiali λ₯Ό ν†΅ν•΄μ„œ μ‹€μ œ mTLS κ°€ 적용 λ˜μ—ˆλŠ” 지도 μ•Œμ•„λ΄€μ£ . Kiali μ—μ„œ mTLS κ°€ μ μš©λλ‹€κ³  μ•„μ΄μ½˜μœΌλ‘œ ν‘œμ‹œλ₯Ό ν•΄μ£ΌκΈ΄ ν•˜λŠ”λ° 제 눈으둜 직접 μ•”ν˜Έν™”κ°€ λ˜λŠ”μ§€ ν™•μΈν•˜κ³  μ‹ΆμŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ 이번 κΈ€μ—μ„œλŠ” Istio 곡식 λ¬Έμ„œμ—μ„œ μ œκ³΅ν•΄μ£ΌλŠ” μ˜ˆμ œμ™€ tcpdump λ₯Ό μ΄μš©ν•΄μ„œ ν•œλ²ˆ 확인해보죠! λ ›μΈ λ‘λ”μ½”λ“œ~ λ“€μ–΄κ°€κΈ° μ•žμ„œ μ£Όμ˜ν•  점이 μžˆμŠ΅λ‹ˆλ‹€! istio-proxy container μ—μ„œ tcpdump λ₯Ό μ‚¬μš©ν•˜λ €λ©΄ sudo λ₯Ό κΆŒν•œμ„ κ°€μ§ˆ 수 μžˆλ„λ‘ privilege λ₯Ό true 둜 μ£Όμ–΄μ•Ό ν•©λ‹ˆλ‹€. λ”°λΌμ„œ μ•„λž˜ λͺ…λ Ήμ–΄λ₯Ό 톡해 istio λ₯Ό μ„€μΉ˜ν•©λ‹ˆλ‹€. $ istioctl install --set values.global...

article thumbnail
[Vault] λ‚˜μ•Ό.. λ‚˜ λ§žλ‹€κ³ ..!! - Vault AWS IRSA 문제

EKS 에 배포된 νŒŒλ“œλ“€μ€ AWS 에 μ ‘κ·Όν•˜κΈ° μœ„ν•œ λ°©λ²•μœΌλ‘œλŠ” 크게 2가지가 μžˆμŠ΅λ‹ˆλ‹€. EC2 Instance Profile IAM Role for Service Account EC2 Instance Profile 은 μ›Œμ»€ λ…Έλ“œμ—κ²Œ AWS 에 μ ‘κ·Όν•  수 μžˆλŠ” 자격 증λͺ…을 ν•΄μ£Όμ£ . 정해진 EC2 μΈμŠ€ν„΄μŠ€μ— 정해진 μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λ°°ν¬ν•œλ‹€λ©΄ μœ„ 방법은 μ•„μ£Ό 쒋은 λ°©λ²•μ΄μ—μš”. ν•˜μ§€λ§Œ, μΏ λ²„λ„€ν‹°μŠ€ ν™˜κ²½μ— λ°°ν¬λ˜λŠ” νŒŒλ“œλ“€μ€ ν•˜λ‚˜μ˜ νŠΉμ •ν•œ λ…Έλ“œμ— λ°°ν¬λ˜μ§€ μ•Šμ•„μš”. NodeAffinity 와 Label 을 ν†΅ν•΄μ„œ λ…Έλ“œλ₯Ό μ œν•œν•˜κΈ΄ ν•˜μ§€λ§Œ λŠμŠ¨ν•˜κ²Œ 그룹핑을 ν•˜μ£ . λ§Œμ•½ μΏ λ²„λ„€ν‹°μŠ€ ν™˜κ²½μ—μ„œ App 이 Replica 3 개둜 배포되고, Hard PodAffinity λ₯Ό μ£Όμ–΄ νŒŒλ“œλ₯Ό μ „λΆ€ λ‹€λ₯Έ λ…Έλ“œμ— λ°°ν¬λ˜κ²Œλ” ν•œλ‹€λ©΄, 또 λ‹€..

article thumbnail
[겉ν•₯κΈ° μ‹œλ¦¬μ¦ˆ] λ„Œ deploy 만 신경써, μ‹œν¬λ¦Ώμ€ λ‚΄κ°€ κ΄€λ¦¬ν• κ²Œ! - Vault 편

μΏ λ²„λ„€ν‹°μŠ€μ—μ„  컨피그맡과 μ‹œν¬λ¦Ώμ„ 톡해 ν™˜κ²½λ³€μˆ˜λ‚˜ νŒŒμΌμ„ 전달해쀄 수 μžˆμŠ΅λ‹ˆλ‹€. 특히 λ―Όκ°ν•œ 정보인 경우 μ‹œν¬λ¦Ώμ„ 톡해 λ°°ν¬ν•˜κ²Œ λ©λ‹ˆλ‹€. ν•˜μ§€λ§Œ μ‹œν¬λ¦Ώμ€ λ¬Έμ œκ°€ ν•˜λ‚˜ μžˆμŠ΅λ‹ˆλ‹€. 이름은 μ‹œν¬λ¦ΏμΈλ°.. μΈμ½”λ”©λ§Œ 해쀄뿐 μ „ν˜€ μ‹œν¬λ¦ΏμŠ€λŸ½μ§€ λͺ»ν•©λ‹ˆλ‹€. λ”°λΌμ„œ μ‹œν¬λ¦Ώμ„ μ‚¬μš©ν•˜λŠ” Helm Chart 을 μƒμ„±ν•œ ν›„, κΉƒν—ˆλΈŒμ— 올리게 λœλ‹€λ©΄ κ²°κ΅­ κ·Έ μ‹œν¬λ¦Ώ 값은 κ·ΈλŒ€λ‘œ λ…ΈμΆœλ©λ‹ˆλ‹€. 프라이빗 λ ˆν¬μ§€ν† λ¦¬λΌ 해도, λ―Όκ°ν•œ μ •λ³΄λŠ” κΉƒ ν—ˆλΈŒμ— 올리면 μ•ˆλœλ‹€κ³ , κΉƒν—™ μžμ²΄μ—μ„œλ„ κ°€μ΄λ“œν•©λ‹ˆλ‹€ 그럼 이런 μ‹œν¬λ¦Ώμ„ μ–΄λ–»κ²Œ μ‹œν¬λ¦ΏμŠ€λŸ½κ²Œ μ‚¬μš©ν•  수 μžˆμ„κΉŒμš”? λ‹€ν–‰νžˆ 이미 쒋은 μ†”λ£¨μ…˜μ΄ μ‘΄μž¬ν•©λ‹ˆλ‹€. λ°”λ‘œ HashiCorp 의 Vault μž…λ‹ˆλ‹€. Vault λŠ” Secret Manager μ‹œμŠ€ν…œμœΌλ‘œ 이름 κ·ΈλŒ€λ‘œ μ‹œν¬λ¦Ώμ„ κ΄€λ¦¬ν•΄μ£ΌλŠ” μ‹œμŠ€ν…œμž…λ‹ˆλ‹€...

article thumbnail
[Kubernetes] AWS EFS Access Points μ™€λŠ” ꢁ합도 μ•ˆλ΄!
DevOps/Kubernetes 2023. 7. 21. 15:05

μŠ€ν† λ¦¬μ§€μ™€ κ΄€λ ¨λœ μΏ λ²„λ„€ν‹°μŠ€ λ¦¬μ†ŒμŠ€μ—λŠ” StorageClass, PersistentVolume 이 μžˆμŠ΅λ‹ˆλ‹€. 보톡 동적인 μŠ€ν† λ¦¬μ§€λŠ” μ›ν•œλ‹€λ©΄ StorageClass (μ΄ν•˜ SC) λ₯Ό, 정적인 μŠ€ν† λ¦¬μ§€λ₯Ό μ›ν•œλ‹€λ©΄ PersistentVolume (μ΄ν•˜ PV) 을 μ‚¬μš©ν•©λ‹ˆλ‹€. ν•œνŽΈ, νŒŒλ“œμ—μ„œ μŠ€ν† λ¦¬μ§€ 연결을 ν•˜λ €λ©΄ PersistentVolumeClaim (μ΄ν•˜ PVC) 을 μ΄μš©ν•΄μ„œ SC λ‚˜ PV λ₯Ό Bound ν•΄μ£Όμ–΄μ•Ό ν•©λ‹ˆλ‹€. AWS EBS λ₯Ό μ‚¬μš©ν•˜κ²Œ 될 텐데, EBS λ§ŒμœΌλ‘œλŠ” ν•œκ³„κ°€ μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ ν•˜λ‚˜μ˜ EBS λŠ” 닀쀑 μΈμŠ€ν„΄μŠ€ 연결이 λ˜μ§€ μ•ŠλŠ”λ‹€λŠ” 점이죠. 예λ₯Ό λ“€μ–΄ EBS 에 데이터λ₯Ό μ €μž₯ν•˜λŠ” μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ Deployment Replica 2 둜 λ°°ν¬ν•œλ‹€κ³  가정해보죠. 그리고 νŒŒλ“œλ“€μ€ μ„œλ‘œ λ‹€λ₯Έ μ›Œ..

article thumbnail
[AWS] AWS SAA 취득 ν›„κΈ° 및 Tips
Certification 2023. 7. 17. 23:43

2023λ…„ 07μ›” 17일 κΈ°μ€€μœΌλ‘œ μž‘μ„±λ˜μ—ˆμœΌλ©°, μ‹œν—˜ 버전은 SAA-C03 μž…λ‹ˆλ‹€. 버전 업이 되면 λ‹¬λΌμ§ˆ 수 μžˆμœΌλ‹ˆ 읽기 μ „ κΌ­ 버전 확인 λΆ€νƒλ“œλ¦½λ‹ˆλ‹€. 첫 AWS μžκ²©μ¦μ„ νšλ“ν–ˆμŠ΅λ‹ˆλ‹€. μ—­μ‹œ μΆœλ°œμ€ SAA 둜 ν•˜λŠ” 것이 ꡭ룰이죠! μ•„λž˜λŠ” AWS 자격 μ’…λ₯˜μž…λ‹ˆλ‹€! λ‚œμ΄λ„λŠ” 기초 > ASSOCIATE > PROFESSIONAL > μ „λ¬Έ λΆ„μ•Ό μˆœμž…λ‹ˆλ‹€. SAA λŠ” ASSOCIATE 레벨의 Solutions Architect μž…λ‹ˆλ‹€. 그럼 λ°”λ‘œ νŒμ„ κ³΅μœ ν•˜κ² μŠ΅λ‹ˆλ‹€! Tips 첫번째 λ‹€λ₯Έ 자격증과 λ§ˆμ°¬κ°€μ§€λ‘œ λΉ„μš©μ΄ κ½€ λΉ„μŒ‰λ‹ˆλ‹€. λ ˆλ²¨λ§ˆλ‹€ λΉ„μš©μ€ μƒμ΄ν•˜μ§€λ§Œ ASSOCIATE λŠ” 150$ μž…λ‹ˆλ‹€. μ›ν™”λ‘œ 치면 λŒ€λž΅ 20λ§Œμ›μž…λ‹ˆλ‹€. μΏ λ²„λ„€ν‹°μŠ€μ— λΉ„ν•˜λ©΄ μ‹ΈκΈ΄ ν•˜μ§€λ§Œ.. μ—¬μ „νžˆ λΆ€λ‹΄μŠ€λŸ¬μš΄ κ°€κ²©μž…λ‹ˆλ‹€..!! (μΏ λ²„λ„€ν‹°μŠ€..

article thumbnail
[Istio] μ‰Ώ! 우리만의 비밀이야 - mTLS (ν™•μΈνŽΈ)
DevOps/Istio 2023. 7. 2. 13:37

μΏ λ²„λ„€ν‹°μŠ€ μœ„μ—λŠ” λ‹€μ–‘ν•œ μ„œλΉ„μŠ€λ“€μ΄ μ‘΄μž¬ν•©λ‹ˆλ‹€. 이 μ„œλΉ„μŠ€λ“€μ΄ ν•˜λ‚˜ν•˜λ‚˜ μƒκ²¨λ‚˜λ‹€ 보면 μ–΄λŠ μƒˆ λͺ‡ 백개, λͺ‡ 천개의 μ„œλΉ„μŠ€λ“€μ΄ μ‘΄μž¬ν•˜κ²Œ λ©λ‹ˆλ‹€. 이런 μ„œλΉ„μŠ€λ“€μ„ μ‰½κ²Œ κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄μ„œ μ΄μŠ€ν‹°μ˜€λ₯Ό μ‚¬μš©ν•©λ‹ˆλ‹€. μ΄μŠ€ν‹°μ˜€λŠ” μ„œλΉ„μŠ€ 메쉬 μ„œλΉ„μŠ€ λΌλŠ” 타이틀에 걸맞게 λ‹€μ–‘ν•œ κΈ°λŠ₯듀을 μ œκ³΅ν•΄μ£ΌλŠ”λ° 이번 κΈ€μ—μ„œλŠ” κ·Έ 쀑 핡심 κΈ°λŠ₯ 쀑 ν•˜λ‚˜μΈ mTLS (Mutual TLS) 에 λŒ€ν•΄ μ•Œμ•„λ³΄κ³ μž ν•©λ‹ˆλ‹€. λ¨Όμ € mTLS κ°€ 무엇인지 μ•Œμ•„λ³΄κΈ° 전에 μ™œ ν•„μš”ν•˜μ§„ λΆ€ν„° μ•Œμ•„λ³΄μ£ . μ΄μŠ€ν‹°μ˜€ 인그레슀 κ²Œμ΄νŠΈμ›¨μ΄λ₯Ό 톡해 μš°λ¦¬λŠ” μΏ λ²„λ„€ν‹°μŠ€ 내뢀에 접근이 κ°€λŠ₯ν•©λ‹ˆλ‹€. ν΄λΌμ΄μ–ΈνŠΈκ°€ 데이터λ₯Ό 전솑할 λ•Œ μ•”ν˜Έν™”λ₯Ό ν•œ ν›„ μ „μ†‘ν•˜κ²Œ λ˜λŠ”λ° (HTTPS), λ¬Έμ œλŠ” 인그레슀 κ²Œμ΄νŠΈμ›¨μ΄ κΉŒμ§€λ§Œ 데이터가 μ•”ν˜Έν™”κ°€ 되고 μΏ λ²„λ„€ν‹°μŠ€ λ‚΄λΆ€μ—μ„œλŠ” HTTPS κ°€..

article thumbnail
[Karpenter] NVIDIA GPU κ°€ μ‚¬λΌμ§€μ§ˆ μ•Šμ•„μš”!
DevOps/Karpenter 2023. 6. 19. 20:17

Karpenter λŠ” AWS μ—μ„œ 진행 쀑인 μ˜€ν”ˆ μ†ŒμŠ€ ν”„λ‘œμ νŠΈλ‘œ μΏ λ²„λ„€ν‹°μŠ€μ—μ„œ AWS ASG 보닀 ν•œ 차원 높은 μˆ˜μ€€μ˜ μŠ€μΌ€μΌλ§μ„ μ œκ³΅ν•΄μ€λ‹ˆλ‹€. Karpenter κ°€ 무엇인지 λͺ¨λ₯΄κ² λ‹€λ©΄ μ—¬κΈ°λ₯Ό μ°Έκ³ ! Karpenter λ₯Ό μ΄μš©ν•˜λ©΄ CPU μΈμŠ€ν„΄μŠ€ 뿐만 μ•„λ‹ˆλΌ GPU μΈμŠ€ν„΄μŠ€ λ˜ν•œ 정말정말 μœ λ™μ μœΌλ‘œ ν”„λ‘œλΉ„μ €λ‹ ν•  수 μžˆμŠ΅λ‹ˆλ‹€. Karpenter λ₯Ό μ“°λ©΄ μ“Έ 수둝 "와 이거 μ§„μ§œ 짱인데?" λΌλŠ” 생각이 많이 λ“­λ‹ˆλ‹€. μ•„μ£Ό μœ μš©ν•œ ν”„λ‘œμ νŠΈμΈκ±° κ°™μ•„μš”. CPU μΈμŠ€ν„΄μŠ€ 같은 κ²½μš°μ—λŠ” Karpenter 만 μ„€μΉ˜ν•˜λ©΄ ν”„λ‘œλΉ„μ €λ‹, λ””ν”„λ‘œλΉ„μ €λ‹ λͺ¨λ‘ 잘 λ™μž‘ν•©λ‹ˆλ‹€. ν•˜μ§€λ§Œ GPU μΈμŠ€ν„΄μŠ€ 경우 ν”„λ‘œλΉ„μ €λ‹μ€ μž˜λ˜μ§€λ§Œ, λ””ν”„λ‘œλΉ„μ €λ‹μ€ λ™μž‘ν•˜μ§€ μ•Šμ•„μš”. μ²˜μŒμ—λŠ” 아직 메이저 λ²„μ „μ΄λΌμ„œ GPU κ΄€λ ¨ν•œ κΈ°λŠ₯이 개발이 μ•ˆλœ ..

article thumbnail
[Github Action] 데이터 μ’€ 맑길게! λ‚˜μ€‘μ— κ·ΈλŒ€λ‘œ λ‹€μ‹œμ€„λž˜? - action cache
DevOps/Github Action 2023. 6. 3. 14:27

μ§€λ‚œ κΈ€μ—μ„œλŠ” Action Controller Runner (μ΄ν•˜ ARC) λ₯Ό μ‚¬μš©ν•  λ•Œ AWS EFS λ₯Ό λ§ˆμš΄νŠΈν•΄μ„œ νŠΉμ • κ²½λ‘œμ— build 에 ν•„μš”ν•œ 데이터λ₯Ό μΊμ‹±ν–ˆμŠ΅λ‹ˆλ‹€. 근데 λ§Œμ•½ AWS EFS 와 같은 데이터λ₯Ό μ €μž₯ν•  수 μžˆλŠ” μŠ€ν† λ¦¬μ§€κ°€ μ—†λ‹€λ©΄ μ–΄λ–¨κΉŒμš”? λ‹€ν–‰νžˆ μΆ©λΆ„νžˆ 쒋은 λŒ€μ±…μ•ˆμ΄ μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ Github Action μ—μ„œ μ œκ³΅ν•΄μ£ΌλŠ” Action Cache μ΄λΌλŠ” λ…€μ„μž…λ‹ˆλ‹€. Github Action 을 μ‚¬μš©ν•œλ‹€λ©΄ μ•„λ§ˆ 이미 λ‹€λ“€ 잘 μ•„μ‹€ μˆ˜λ„ μžˆκ² κ΅°μš”. Action Cache λŠ” μ’‹μ•„μš” 3.7k λ₯Ό 받을 만큼 λ§Žμ€ μ‚¬λž‘?을 λ°›κ³  μžˆλŠ” μ•‘μ…˜ μ€‘μ˜ ν•˜λ‚˜μž…λ‹ˆλ‹€. λ„νλ¨ΌνŠΈλ₯Ό 보면 κ½€ μžμ„Έν•˜κ²Œ μ„€λͺ…이 λ˜μ–΄μžˆμŠ΅λ‹ˆλ‹€. 예제 μ½”λ“œλ„ μ‘΄μž¬ν•˜λ©°, 각 ν•„μš”ν•œ with 에 λŒ€ν•΄μ„œλ„ μΉœμ ˆν•˜κ²Œ μ„€λͺ…ν•΄μ£Όκ³  μžˆμŠ΅λ‹ˆλ‹€...

article thumbnail
[Istio] IngressGateway 에 TLS λ₯Ό μ μš©ν•΄λ³΄μž!
DevOps/Istio 2023. 5. 18. 22:47

Istio (μ΄ν•˜ μ΄μŠ€ν‹°μ˜€) λŠ” μΏ λ²„λ„€ν‹°μŠ€μ˜ λŒ€ν‘œμ μΈ μ„œλΉ„μŠ€ 메쉬 μ†ŒμŠ€μž…λ‹ˆλ‹€. 뿐만 μ•„λ‹ˆλΌ μ΄μŠ€ν‹°μ˜€λŠ” 인그레슀 μ»¨νŠΈλ‘€λŸ¬λ„ μ œκ³΅ν•΄μ£ΌκΈ° λ•Œλ¬Έμ— Nginx 와 같은 λ³„λ„μ˜ 인그레슀 μ»¨νŠΈλ‘€λŸ¬κ°€ ν•„μš” μ—†μ–΄μš”. 이번 κΈ€μ—μ„œ Istio 의 핡심 μžμ›μΈ IngressGateway 에 TLS λ₯Ό μ μš©μ‹œμΌœ 보고자 ν•©λ‹ˆλ‹€! Istio λ₯Ό μ„€λͺ…ν•˜λŠ” 글이 μ•„λ‹ˆκΈ° λ•Œλ¬Έμ— Gateway, VirtualService 와 같은 λ¦¬μ†ŒμŠ€μ— λŒ€ν•œ μ„€λͺ…은 ν•˜μ§€ μ•Šκ² μŠ΅λ‹ˆλ‹€. 그럼 λ ›μΈ λ‘λ”μ½”λ“œ~ μ‹€μŠ΅ ν™˜κ²½μ€ μ•„λž˜μ™€ κ°™μ•„μš”. μΏ λ²„λ„€ν‹°μŠ€ v1.26.2 μ΄μŠ€ν‹°μ˜€ v1.17.2 곡식 λ¬Έμ„œμ— λ‚˜μ™€μžˆλŠ” μ˜ˆμ œλŠ” λΆˆν•„μš”ν•œ λ‚΄μš©μ΄ λ§Žμ•„μ„œ λ”± ν•„μš”ν•œ λΆ€λΆ„λ§Œ μ‹€μŠ΅ν•˜λ €κ³  ν•©λ‹ˆλ‹€. λ§Œμ•½ 더 μžμ„Έν•œ 정보가 κΆκΈˆν•˜λ‹€λ©΄ μ—¬κΈ°λ₯Ό μ°Έκ³ ν•΄μ£Όμ„Έμš”. TLS λ₯Ό 적용 ν•  것이기 λ•Œλ¬Έ..

article thumbnail
[Karpenter] λ…Έλ“œμ˜ Deprovisioning 을 μ’€ 더 μ•„λ¦„λ‹΅κ²Œ~
DevOps/Karpenter 2023. 5. 17. 00:04

맀우맀우맀우 μ€‘μš”! Karpenter v0.32 버전뢀터 λ¦¬μ†ŒμŠ€ 이름듀이 λ³€κ²½λ˜μ–΄ μ°Έκ³  λ°”λžλ‹ˆλ‹€. κ°œλ…μ€ λ˜‘κ°™μŠ΅λ‹ˆλ‹€. (ex. Provisioners -> NodePools) Karpenter 의 κ°œλ…μ„ μ•Œκ³  μ‹Άλ‹€λ©΄ μ—¬κΈ° μ°Έκ³ ! Karpenter λ₯Ό 파면 νŒ”μˆ˜λ‘ 정말 μœ μš©ν•œ μ˜€ν”ˆμ†ŒμŠ€μΈκ±° κ°™μ•„μš”. ASG λ₯Ό λ„˜μ–΄μ„œ 훨씬 효율적이고 μœ λ™μ μœΌλ‘œ λ…Έλ“œμ™€ νŒŒλ“œλ₯Ό 관리할 수 있게 ν•΄μ£Όκ±°λ“ μš”. μŠ€μΌ€μ€„λ§ μ‹œμŠ€ν…œμ„ κ°œλ°œν•˜κ³  μžˆλŠ”λ°, Karpenter κ°€ μ—†μ—ˆλ‹€λ©΄ 많이 νž˜λ“€μ—ˆμ„ κ²λ‹ˆλ‹€... 이번 κΈ€μ—μ„œλŠ” Karpenter 의 Deprovisioning 에 λŒ€ν•΄ μ•Œμ•„λ³΄λ €κ³  ν•©λ‹ˆλ‹€. κ°€μž₯ 핡심이라고 λ³Ό 수 있죠. Deprovisioning κ΄€λ ¨ μ˜΅μ…˜μ€ 크게 2κ°€μ§€λ‘œ λ‚˜λˆŒ 수 μžˆμ–΄μš”. - ttlSecondsAfterEmpty ..

article thumbnail
[Kubernetes] μ•”ν˜Έν™”ν•˜μ§€ μ•Šμ€ μ‹œν¬λ¦Ώμ€ 물가에 내놓은 아이 - Encrypt ETCD (μƒνŽΈ)
DevOps/Kubernetes 2023. 5. 14. 19:20

μΏ λ²„λ„€ν‹°μŠ€μ—μ„œ λ―Όκ°ν•œ λ°μ΄ν„°λŠ” μ‹œν¬λ¦Ώμ„ 톡해 κ΄€λ¦¬λ©λ‹ˆλ‹€. μƒμ„±λœ μ‹œν¬λ¦Ώμ€ mount fs λ˜λŠ” env var 을 ν†΅ν•΄μ„œ νŒŒλ“œμ— μ‹œν¬λ¦Ώ 데이터λ₯Ό λ„˜κ²¨μ€„ 수 있죠. μ‹œν¬λ¦Ώμ„ μƒμ„±ν•œ ν›„, kubectl create secret generic secret1 --from-literal user=admin kubectl create secret generic secret2 --from-literal user=12345678 μ•„λž˜μ™€ 같이 yaml 을 μž‘μ„±ν•΄μ„œ μ‚¬μš©ν•  수 있죠. apiVersion: v1 kind: Pod metadata: creationTimestamp: null labels: run: pod name: pod spec: containers: - image: nginx name: pod resourc..

article thumbnail
[Kubernetes] νŒŒλ“œλ„ κ²°κ΅­ ν‰λ²”ν•œ ν”„λ‘œμ„ΈμŠ€λΌκ΅¬μš§!
DevOps/Kubernetes 2023. 5. 9. 22:44

μΏ λ²„λ„€ν‹°μŠ€μ—μ„œ μ‹€ν–‰ 쀑인 νŒŒλ“œμ˜ λ‚΄μš©μ„ μˆ˜μ •ν•˜λ €λ©΄ kubectl exec -it pod -- ... λ₯Ό 톡해 μˆ˜μ •ν•©λ‹ˆλ‹€. λ§Œμ•½ nginx λ₯Ό μ‹€ν–‰ 쀑인 νŒŒλ“œκ°€ 있고, nginx 의 index.html 을 μˆ˜μ •ν•˜κ³  μ‹Άλ‹€λ©΄, μ•„λž˜μ™€ 같이 진행을 ν•  κ²ƒμž…λ‹ˆλ‹€. # pod λΌλŠ” 이름을 가진 νŒŒλ“œλ₯Ό nginx 이미지λ₯Ό μ΄μš©ν•΄μ„œ 생성 kubectl run pod --image nginx # bash λ₯Ό 톡해 μ»¨ν…Œμ΄λ„ˆ λ‚΄λΆ€ 접속 kubectl exec -it pod -- bash # index.html 을 검색 find ./ -type f -iname "*.html" # μœ„μΉ˜λ₯Ό 찾은 ν›„ vim 을 톡해 μˆ˜μ • vim ./usr/share/nginx/html/index.html index.html 에 I'm kingbj..

article thumbnail
[Kubernetes] μ‹œν¬λ¦Ώμ„ μ‚¬μš©ν•˜λŠ” λ‹€μ–‘ν•œ 방법 - Secrets
DevOps/Kubernetes 2023. 5. 1. 14:12

μΏ λ²„λ„€ν‹°μŠ€μ—μ„œλŠ” ν™˜κ²½ λ³€μˆ˜λ‚˜ μƒˆλ‘­κ²Œ μž‘μ„±ν•œ νŒŒμΌμ„ μ»¨ν…Œμ΄λ„ˆ 내뢀에 전달해주기 μœ„ν•΄μ„œ Configmap, Secret 을 μ‚¬μš©ν•©λ‹ˆλ‹€. μ΄λ¦„μ—μ„œ μœ μΆ”ν•  수 μžˆλ“― Configmap 은 λ³΄μ•ˆμ μœΌλ‘œ μ€‘μš”μΉ˜ μ•Šμ€ 데이터듀을 μ‚¬μš©ν•  λ•Œ, Secret 은 λ³΄μ•ˆμ μœΌλ‘œ μ€‘μš”ν•œ 데이터λ₯Ό μ‚¬μš©ν•  λ•Œ μ‚¬μš©ν•©λ‹ˆλ‹€. λ”°λΌμ„œ Configmap 은 Plain Text 둜 데이터가 μ €μž₯λ˜λŠ” 반면, Secret 은 인코딩 λ˜μ–΄ μ €μž₯λ©λ‹ˆλ‹€. κ·Έλž˜μ„œ 이번 κΈ€μ—μ„œλŠ” Secret 을 생성 ν›„ μ–΄λ–»κ²Œ νŒŒλ“œμ—κ²Œ μ „λ‹¬ν•˜λŠ” 지λ₯Ό μ•Œμ•„λ³΄λ €κ³  ν•©λ‹ˆλ‹€. μ—¬λ‹΄μœΌλ‘œ Secret 의 인코딩 λ˜λŠ” 방법은 사싀 λ””μ½”λ”© ν•˜λ©΄ μ–΄λ–€ 값인지 μ•Œ 수 있기 λ•Œλ¬Έμ— λ³΄μ•ˆμ μœΌλ‘œ μ•ˆμ „ν•˜μ§€λŠ” μ•ŠμŠ΅λ‹ˆλ‹€. μΏ λ²„λ„€ν‹°μŠ€λŠ” μ΄λ ‡κ²Œ ꡳ이 Secret 의 값을 μΈμ½”λ”©ν•΄μ„œ μ €μž₯ν•˜λŠ” μ΄μœ λŠ” 해컀에..

article thumbnail
[AWS] λ³΄μ•ˆ 그룹의 μ†ŒμŠ€λ‘œ λ³΄μ•ˆ κ·Έλ£Ή μ§€μ •ν•˜κΈ°
AWS 2023. 4. 19. 21:32

EC2 μΈμŠ€ν„΄μŠ€μ—λŠ” λ³΄μ•ˆ 그룹을 μ„€μ •ν•˜μ—¬ νŠΉμ • νŠΈλž˜ν”½λ§Œ μΈλ°”μš΄λ“œ, μ•„μ›ƒλ°”μš΄λ“œλ₯Ό ν—ˆμš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. μΈλ°”μš΄λ“œ κ·œμΉ™κ³Ό μ•„μ›ƒλ°”μš΄λ“œ κ·œμΉ™μ€ μ•„λž˜μ™€ 같이 μ •μ˜ν•  수 있죠. κ·Έ 쀑 μ†ŒμŠ€ κ·œμΉ™μ„ ν•œλ²ˆ μžμ„Ένžˆ 보죠. (μ•„μ›ƒλ°”μš΄λ“œμ—μ„  λŒ€μƒ κ·œμΉ™μ— ν•΄λ‹Ή) CIDR 블둝 같은 경우, λ³΄μ•ˆ 그룹이 μ„€μ •λœ μΈμŠ€ν„΄μŠ€μ— μΈλ°”μš΄λ“œλ‘œ νŠΈλž˜ν”½μ΄ 올 λ•Œ μ†ŒμŠ€ κ·œμΉ™μ— λͺ…μ‹œλœ CIDR κ°€ 만쑱 λ˜μ§€ μ•ŠμœΌλ©΄ Deny λ©λ‹ˆλ‹€. λͺ‡κ°€μ§€ μ˜ˆμ‹œλ₯Ό μ‚΄νŽ΄λ³΄μ£ . 0.0.0.0/0 으둜 κ·œμΉ™μ„ μ •ν•˜λ©΄ λͺ¨λ“  IP λ‘œλΆ€ν„° λ“€μ–΄μ˜€λŠ” νŠΈλž˜ν”½μ€ Allow 198.162.0.1/16 으둜 κ·œμΉ™μ„ μ •ν•˜λ©΄ 198.162.xx.xx λ‘œλΆ€ν„° λ“€μ–΄μ˜€λŠ” νŠΈλž˜ν”½μ€ Allow 118.220.38.110/32 으둜 κ·œμΉ™μ„ μ •ν•˜λ©΄ 118.220.38.110 λ‘œλΆ€ν„° λ“€μ–΄μ˜€λŠ” νŠΈλž˜ν”½λ§Œ ..

article thumbnail
[Kubernetes] νŒŒλ“œλ₯Ό 보닀 μ•ˆμ „ν•˜κ²Œ - SecurityContext
DevOps/Kubernetes 2023. 4. 16. 19:53

μΏ λ²„λ„€ν‹°μŠ€ λ³΄μ•ˆ κ΄€λ ¨ λͺ¨λ²” 사둀λ₯Ό μ‚΄νŽ΄λ³΄λ©΄ μ•„λ§ˆ κ°€μž₯ 기본적이고, κ°€μž₯ 많이 λ³΄μ΄λŠ” 것이 ν•˜λ‚˜ μžˆμŠ΅λ‹ˆλ‹€. μ•„λ§ˆ μΏ λ²„λ„€ν‹°μŠ€ 뿐만 μ•„λ‹ˆλΌ μ»¨ν…Œμ΄λ„ˆλ₯Ό μ‚¬μš©ν•˜λŠ” ν™˜κ²½μ΄λΌλ©΄ λͺ¨λ‘κ°€ 신경써야 ν•˜λŠ” 뢀뢄이죠. λ°”λ‘œ 루트 계정 λΉ„ν™œμ„±ν™” μž…λ‹ˆλ‹€. 즉, μ»¨ν…Œμ΄λ„ˆ λ‚΄ ν”„λ‘œμ„ΈμŠ€μ—μ„œ 루트 κΆŒν•œμ„ λͺ¨λ‘ λΉ„ν™œμ„±ν™” ν•˜λŠ” 것이죠. μ»¨ν…Œμ΄λ„ˆ λ‚΄λΆ€μ—μ„œ μ•„λ¬΄λ‚˜ 루트 κΆŒν•œμ„ μ‚¬μš©ν•˜κ²Œ ν•œλ‹€λŠ” 것은 λͺ¨λ₯΄λŠ” μ‚¬λžŒμ—κ²Œ 집 λΉ„λ°€λ²ˆν˜Έλ₯Ό μ•Œλ €μ£ΌλŠ” 것과 닀름이 μ—†μŠ΅λ‹ˆλ‹€. 예λ₯Ό λ“€μ–΄ μ»¨ν…Œμ΄λ„ˆμ— μ ‘μ†ν•œ ν›„ uname -a λͺ…λ Ήμ–΄λ₯Ό 쳐보면 호슀트의 OS 버전을 λ³Ό 수 μžˆμŠ΅λ‹ˆλ‹€. 루트 κΆŒν•œ λΉ„ν™œμ„±ν™”λŠ” 이미지λ₯Ό λ§Œλ“€ λ•Œλ„ μ„€μ •ν•  수 있고, k8s 둜 νŒŒλ“œλ₯Ό 배포할 λ•Œλ„ μ„€μ •ν•  수 μžˆμŠ΅λ‹ˆλ‹€. 이번 κΈ€μ—μ„œλŠ” μ–΄λ–»κ²Œ 루트 계정을 λΉ„ν™œμ„±ν™”ν•˜κ³  μ•ˆμ „ν•œ νŒŒλ“œλ₯Ό λ§Œλ“œλŠ”μ§€ μ•Œμ•„..

article thumbnail
[λ‚˜μž‘μ†ŒμΏ ] μ„± 짓기 feat. proxmox, kubernetes

μ§€λ‚œ λ‚˜μž‘μ†ŒμΏ μ—μ„œλŠ” [λ‚˜μž‘μ†ŒμΏ ] μ˜ν†  짓기 feat. λ―Έλ‹ˆ PC 쑰립을 μ§„ν–‰ν–ˆκ³ , 이번 κΈ€μ—μ„œλŠ” Proxmox 와 Kubernetes λ₯Ό μ„€μΉ˜ν•˜λ €κ³  ν•©λ‹ˆλ‹€. 그럼 λ°”λ‘œ Proxmox λ₯Ό μ„€μΉ˜ν•΄μ€μ‹œλ‹€. Proxmox μ„€μΉ˜ Proxmox λŠ” Window 와 IOS 처럼 OS 의 ν•œ μ’…λ₯˜μž…λ‹ˆλ‹€. 차이점이라면 Proxmox λŠ” 가상 λ¨Έμ‹ κ³Ό μΉœν™”μ μΈ ν™˜κ²½μ„ μ œκ³΅ν•΄μ€λ‹ˆλ‹€. Proxmox 에 λŒ€ν•΄ κΆκΈˆν•˜λ‹€λ©΄ μ—¬κΈ°λ₯Ό μ°Έκ³ ν•΄μ£Όμ„Έμš”. μš°μ„  Proxmox λ₯Ό μ—¬κΈ°μ„œ λ‹€μš΄λ°›μŠ΅λ‹ˆλ‹€. 이후 Rufus λ₯Ό μ΄μš©ν•΄μ„œ λ‹€μš΄λ°›μ€ ISO λ₯Ό dd λͺ¨λ“œλ‘œ USB 에 κ΅¬μ›Œμ€λ‹ˆλ‹€. 그런 λ‹€μŒ USB λ₯Ό λ―Έλ‹ˆ PC 에 꼽으면 μ•„λž˜μ™€ 같은 화면이 λ‚˜νƒ€λ‚©λ‹ˆλ‹€. 크게 νŠΉλ³„ν•œ 뢀뢄은 μ—†μŠ΅λ‹ˆλ‹€. ubuntu μ„€μΉ˜ν•˜λ“― μ„€μΉ˜ν•΄μ£Όμ‹œλ©΄ λ©λ‹ˆλ‹€. μ„€μΉ˜κ°€ μ™„λ£Œλ˜λ©΄..

profile on loading

Loading...