λ‘œμΌ“πŸΎ
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
[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
[Kubernetes] μ§€λ‚œ λ°€ λ„ˆκ°€ ν•œ 짓을 μ•Œκ³  μžˆλ‹€! - Audit
DevOps/Kubernetes 2023. 4. 2. 13:21

μΏ λ²„λ„€ν‹°μŠ€μ—λŠ” Audit μ΄λΌλŠ” κΈ°λŠ₯이 μžˆμŠ΅λ‹ˆλ‹€. λ‹€λ“€ 눈치 μ±„μ…¨κ² μ§€λ§Œ, Kube Api Server 에 μ–΄λ–€ API λ₯Ό ν˜ΈμΆœν–ˆλŠ”μ§€ κ°μ‹œν•˜λŠ” κΈ°λŠ₯이죠. μΏ λ²„λ„€ν‹°μŠ€λ₯Ό μ„€μΉ˜ν•˜λ©΄ 기본적으둜 제곡 λ˜μ§€ μ•ŠκΈ° λ•Œλ¬Έμ— μΆ”κ°€μ μœΌλ‘œ Audit κΈ°λŠ₯을 ν™œμ„±ν™” ν•΄μ£Όμ–΄μ•Ό ν•©λ‹ˆλ‹€. κ·Έλž˜μ„œ 이번 κΈ€μ—μ„œλŠ” Audit κΈ°λŠ₯을 ν™œμ„±ν™”ν•΄μ„œ λˆ„κ°€, μ–΄λ–€ ν–‰μœ„λ‘œ, μ–΄λ–€ λ¦¬μ†ŒμŠ€λ₯Ό 호좜 ν–ˆλŠ”μ§€ κ°μ‹œν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€! λ ›μΈ λ‘λ”μ½”λ“œ! Audit κΈ°λŠ₯ ν™œμ„±ν™” control plane & data plane v1.26.1 μ—μ„œ μ§„ν–‰λ˜μ—ˆμŠ΅λ‹ˆλ‹€ μΏ λ²„λ„€ν‹°μŠ€ 곡식 λ¬Έμ„œλ₯Ό μ΄λ™ν•œ ν›„ Audit 을 κ²€μƒ‰ν•΄μ€λ‹ˆλ‹€. 그리고 ν΄λ¦­ν•΄μ„œ λ¬Έμ„œλ₯Ό ν™•μΈν•©λ‹ˆλ‹€. λ°‘μœΌλ‘œ μ­‰μ­‰ λ‚΄λ €μ„œ 둜그 λ°±μ—”λ“œ μ„Ήμ…˜μœΌλ‘œ μ΄λ™ν•©λ‹ˆλ‹€. /etc/kubernetes/manifests/kube-apis..

article thumbnail
[Kubernetes] CKS Certification 취득 ν›„κΈ° 및 Tips
Certification 2023. 3. 30. 19:24

CKA 에 이어 CKS 도 취득에 μ„±κ³΅ν–ˆμŠ΅λ‹ˆλ‹€. CKS λŠ” μΏ λ²„λ„€ν‹°μŠ€ κ΄€λ ¨ 자격증 쀑 κ°€μž₯ 높은 레벨의 μžκ²©μ¦μž…λ‹ˆλ‹€.  λ”°λΌμ„œ λ‚œμ΄λ„λ„ κ½€ 있던 νŽΈμ΄μ˜€μŠ΅λ‹ˆλ‹€. CKA 같은 κ²½μš°μ—λŠ” 문제λ₯Ό ν‘ΈλŠ”λ° μžˆμ–΄μ„œ 30뢄도 μ•ˆκ±Έλ ΈλŠ”λ° CKS 같은 κ²½μš°λŠ” 2μ‹œκ°„μ„ λ‹€ 쓰고도 총 16문제 쀑 2문제λ₯Ό λͺ»ν’€μ—ˆμ–΄μš”.. μ‹œν—˜ μžμ²΄κ°€ μ˜μ–΄λ‘œ μ§„ν–‰λ˜κ³ , μ•„λ¬΄λž˜λ„ μ œλŒ€λ‘œ 문제λ₯Ό ν’€μ—ˆλŠ”μ§€ 확인해야 ν•˜λŠ” Validation λΆ€λΆ„μ—μ„œ κ½€λ‚˜ μ‹œκ°„μ„ 많이 μŸμ•„μ•Ό ν–ˆμŠ΅λ‹ˆλ‹€.λ¬Έμ œκ°€ 막 μ—„μ²­ μ–΄λ ΅λ‹€λŠ” λŠλ‚Œλ³΄λ‹€λŠ” μ£Όμ–΄μ§„ μš”κ΅¬μ‚¬ν•­μ„ 잘 μ§€μΌ°λŠ”μ§€ 확인(Validation) ν•˜λŠ” 과정에 κ½€ μ‹œκ°„μ„ μŸμ•˜μŠ΅λ‹ˆλ‹€.   ν•΄μ„ν•˜μžλ©΄ μ΄λ ‡μŠ΅λ‹ˆλ‹€.이 μžκ²©μ¦μ„ μ·¨λ“ν•œ μ‚¬λžŒμ€ μˆ™λ ¨λœ Kubernetes μ‹€λ¬΄μžμž…λ‹ˆλ‹€(CKA 자격증 보유둜 μž…μ¦λ¨). 자격 μ·¨λ“μžλŠ” λΉŒλ“œ,..

article thumbnail
[Karpenter] λ…Έλ“œλ₯Ό μ€„μ˜€λ‹€κ°€ λŠ˜λ Έλ‹€κ°€ ν•©μ³€λ‹€κ°€ μ—†μ•΄λ‹€κ°€ ~
DevOps/Karpenter 2023. 3. 19. 12:19

맀우맀우맀우 μ€‘μš”! Karpenter v0.32 버전뢀터 λ¦¬μ†ŒμŠ€ 이름듀이 λ³€κ²½λ˜μ–΄ μ°Έκ³  λ°”λžλ‹ˆλ‹€. κ°œλ…μ€ λ˜‘κ°™μŠ΅λ‹ˆλ‹€. (ex. Provisioners -> NodePools) AWS EKS λ₯Ό 톡해 ν΄λŸ¬μŠ€ν„°λ₯Ό κ΅¬μΆ•ν•˜λ©΄ Data Plane (μ΄ν•˜ Node) λ₯Ό λ‹€μ–‘ν•œ λ°©μ‹μœΌλ‘œ ꡬ좕할 수 μžˆμŠ΅λ‹ˆλ‹€. Managed Node Group, Fargate 그리고 μ΄λŸ¬ν•œ λ¦¬μ†ŒμŠ€λ₯Ό μœ μ—°ν•˜κ²Œ 관리할 수 있게 ν•΄μ£ΌλŠ” AWS Auto Scaling, Karpenter κ°€ μžˆμŠ΅λ‹ˆλ‹€. 이번 κΈ€μ—μ„œλŠ” Karpenter λ₯Ό 톡해 AWS Auto Scaling 보닀 μœ μ—°ν•˜κ²Œ Node λ₯Ό κ΄€λ¦¬ν•˜λŠ” 방법을 μ•Œμ•„λ³΄κ³ μž ν•©λ‹ˆλ‹€. μš°μ„  κ°„λ‹¨ν•˜κ²Œ μ•Œμ•„λ³΄λ„λ‘ ν•˜μ£ . λ ›μΈ λ‘λ”μ½”λ“œ! Karpenter κ°€ 뭐죠? μ—¬κΈ°μ„œ λ§ν•˜λŠ” λ…Έλ“œ == μΈμŠ€ν„΄μŠ€ ..

article thumbnail
[Python] Counter λͺ¨λ“ˆ μ‚¬μš©λ²• feat. 카카였 νŠœν”Œ

νŒŒμ΄μ¬μ—λŠ” 정말 μœ μš©ν•œ ν•¨μˆ˜κ°€ λ§ŽμŠ΅λ‹ˆλ‹€. κ·Έ 쀑 Counter λŠ” μ œκ°€ μƒκ°ν•˜κΈ°μ— κ°€μž₯ μœ μš©ν•œ ν•¨μˆ˜ 쀑에 ν•˜λ‚˜λΌκ³  μƒκ°ν•©λ‹ˆλ‹€. 이번 κΈ€μ—μ„œλŠ” Collections λͺ¨λ“ˆ 쀑 ν•˜λ‚˜μΈ Counter ν•¨μˆ˜μ— λŒ€ν•΄μ„œ μ•Œμ•„λ³΄κ³  2019 카카였 겨울 인턴쉽 νŠœν”Œ 에 λ°”λ‘œ μ μš©ν•΄λ³΄κ² μŠ΅λ‹ˆλ‹€. 그럼 λ ›μΈ λ‘λ”μ½”λ“œ! Collections 의 Counter() Counter λŠ” λ¦¬μŠ€νŠΈλ‚˜ λ¬Έμžμ—΄μ˜ 갯수λ₯Ό dict νƒ€μž…μœΌλ‘œ λ°˜ν™˜ν•΄μ£ΌλŠ” ν•¨μˆ˜μž…λ‹ˆλ‹€. 말둜 백번 μ„€λͺ…ν•˜λŠ” 것보닀 ν•œλ²ˆμ˜ μ˜ˆμ œκ°€ λ³΄λŠ” 것이 더 μ’‹κ² μ£ ? Counter(["I", "am", "Iron", "man", "!", "!"]) # Counter({'!': 2, 'I': 1, 'am': 1, 'Iron': 1, 'man': 1}) Counter(["I", "am", "..

article thumbnail
[Kubernetes] μŠˆλ’°λ”©κ±°μ˜ λ…Έλ“œ? λ…Έλ“œκ°€ μžˆμ—ˆλŠ”λ° μ—†μ–΄μš” - EKS Fargate
DevOps/Kubernetes 2023. 3. 12. 21:18

λˆ„κ΅¬λ‚˜ ν•œλ²ˆ 쯀은 μŠˆλ’°λ”©κ±°μ˜ 고양이에 λŒ€ν•΄μ„œ λ“€μ—ˆκ±°λ‚˜ κ΄€λ ¨ λ°ˆμ„ 보셨을 κ²λ‹ˆλ‹€. κ·Έλž˜λ„ ν˜Ήμ‹œ λͺ¨λ₯΄μ‹œλŠ” 뢄듀을 μœ„ν•΄ κ°„λ‹¨νžˆ μ•Œλ €λ“œλ¦¬μ£ . 고양이λ₯Ό 보이지 μ•ŠλŠ” μƒμžμ— λ„£κ³ , κ·Έ 속에 50:50 ν™•λ₯ λ‘œ 고양이λ₯Ό μ£½μ΄λŠ” 독극물을 λ„£μ—ˆμ„ λ•Œ κ³ μ–‘μ΄λŠ” μ£½μ„κΉŒμš”? μ‚΄κΉŒμš”? 일반 μ„Έκ³„μ—μ„œλŠ” μ£½μ—ˆλ‹€, μ‚΄μ•˜λ‹€ 라고 ν‘œν˜„ν•˜μ§€λ§Œ μ–‘μžμ—­ν•™ μ„Έκ³„μ—μ„œλŠ” 이λ₯Ό 죽음과 삢이 μ€‘μ²©λœ μƒνƒœλΌκ³  ν‘œν˜„ν•©λ‹ˆλ‹€. 즉, μ‚΄μ•„μžˆμœΌλ©΄μ„œ μ£½μ–΄μžˆλ‹€ 라고 ν•©λ‹ˆλ‹€. 였늘 κΈ€μ—μ„œ μ†Œκ°œν•  Fargate (파게이트) λ˜ν•œ μŠˆλ’°λ”©κ±°μ˜ 고양이와 λΉ„μŠ·ν•œ κ°œλ…μž…λ‹ˆλ‹€. (λ‚˜λ§Œ κ·Έλ ‡κ²Œ μƒκ°ν• μˆ˜λ„..) Fargate λŠ” λ¬΄μ—‡μΌκΉŒ? μš°λ¦¬λŠ” 보톡 AWS λ₯Ό μ΄μš©ν•΄μ„œ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ λ°°ν¬ν•œλ‹€κ³  ν•˜λ©΄ EC2 λ₯Ό 톡해 μΈμŠ€ν„΄μŠ€λ₯Ό μƒμ„±ν•˜κ³ , κ·Έ μΈμŠ€ν„΄μŠ€ 내뢀에 μ»¨ν…Œμ΄λ„ˆλ‚˜ 직접 ν”„λ‘œμ„ΈμŠ€λ‘œ..

article thumbnail
[Python] re λͺ¨λ“ˆ μ‚¬μš©λ²• feat. [3μ°¨] 파일λͺ… μ •λ ¬

νŒŒμ΄μ¬μ—μ„œ λ¬Έμžμ—΄μ„ μ²˜λ¦¬ν•˜λŠ” 방법은 μ—¬λŸ¬κ°€μ§€κ°€ 있죠. κ·Έ 쀑 μ •κ·œν‘œν˜„μ‹μ„ μ΄μš©ν•˜λ©΄ μ’€ 더 λ‹€μ–‘ν•˜κ³  μ‰½κ²Œ 처리λ₯Ό ν•  수 μžˆμŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ 이번 κΈ€μ—μ„œλŠ” νŒŒμ΄μ¬μ—μ„œ μœ μš©ν•œ λͺ¨λ“ˆ 쀑 μ •κ·œμ‹μ„ μ²˜λ¦¬ν•΄μ£ΌλŠ” re λͺ¨λ“ˆμ„ μ΄μš©ν•΄μ„œ λ¬Έμžμ—΄μ„ μ²˜λ¦¬ν•˜λŠ” 방법에 λŒ€ν•΄ μ•Œμ•„λ³΄λ €κ³  ν•©λ‹ˆλ‹€. 그리고 κ°€μž₯ λ§ˆμ§€λ§‰μ—” 배운걸 ν† λŒ€λ‘œ 카카였 문제인 [3μ°¨] 파일λͺ… 정렬에 μ μš©ν•΄λ³΄λ €κ³  ν•©λ‹ˆλ‹€. 그럼 λ ›μΈ λ‘λ”μ½”λ“œ! re λͺ¨λ“ˆμ˜ ν•¨μˆ˜λ“€ re λͺ¨λ“ˆμ—λŠ” λ‹€μ–‘ν•œ ν•¨μˆ˜λ“€μ΄ μ‘΄μž¬ν•©λ‹ˆλ‹€. κ·Έ 쀑 μ•Œκ³ λ¦¬μ¦˜ 풀이에 μœ μš©ν•  것 같은 ν•¨μˆ˜λ“€μ— λŒ€ν•΄ μ•Œμ•„λ³΄κ² μŠ΅λ‹ˆλ‹€. search match fullmatch findall finditer sub subn split search() λ¬Έμžμ—΄μ—μ„œ νŒ¨ν„΄μ΄ μΌμΉ˜ν•˜λŠ” μ§€ ν™•μΈν•©λ‹ˆλ‹€. print(re.search("A", "..

article thumbnail
[Github Action] ARC λ₯Ό μ΄μš©ν•œ Gradle Build Cache
DevOps/Github Action 2023. 3. 6. 22:39

μ€‘μš”!! ARC κ°€ Github Official ν”„λ‘œμ νŠΈκ°€ 됨에 따라 μ•„λž˜μ—μ„œ λ³΄μ—¬λ“œλ¦° ARC κ΄€λ ¨ν•œ λ¦¬μ†ŒμŠ€λ“€μ€ μ „λΆ€ ꡬ λ²„μ „μž…λ‹ˆλ‹€. μ—¬κΈ°λ₯Ό μ°Έκ³ ν•΄μ£Όμ„Έμš”! Action Controller Runner (μ΄ν•˜ ARC) λŠ” νŒŒλ“œ λ‹¨μœ„ Self Hosted Runner μž…λ‹ˆλ‹€. 즉, μΏ λ²„λ„€ν‹°μŠ€ ν™˜κ²½μ—μ„œ νŒŒλ“œλ₯Ό Self Hosted Runner 둜 μ§€μ •ν•  수 있게 ν•΄μ£ΌλŠ” μ˜€ν”ˆμ†ŒμŠ€μ£ . ARC 에 λŒ€ν•œ μ •λ³΄λŠ” μ—¬κΈ°λ₯Ό ν™•μΈν•΄μ£Όμ„Έμš”. 근데 ARC λ₯Ό μ‚¬μš©ν•˜λŠ” 경우 ν•˜λ‚˜ κ³ λ €ν•΄μ•Ό ν•  사항이 μžˆμŠ΅λ‹ˆλ‹€. λ°”λ‘œ ARC 에 μ˜ν•΄ λ§Œλ“€μ–΄μ§€λŠ” νŒŒλ“œλŠ” Github Action 의 Job 이 μ’…λ£Œλ  경우 제거되고 λ‹€μ‹œ μƒμ„±λ©λ‹ˆλ‹€. λ”°λΌμ„œ HostPath λ‚˜ EFS λ₯Ό μ‚¬μš©ν•˜μ§€ μ•ŠμœΌλ©΄ Job 을 μ‹€ν–‰ν•  λ•Œ μƒμ„±ν–ˆλ˜ Java SDK, N..

article thumbnail
[Kubernetes] PVC둜 λ§ˆμŒλŒ€λ‘œ λ–Όμ—ˆλ‹€ λΆ™μ΄λŠ” AWS EBS
DevOps/Kubernetes 2023. 3. 6. 15:59

퍼블릭 ν΄λΌμš°λ“œ ν™˜κ²½μ—μ„œ μΏ λ²„λ„€ν‹°μŠ€λ₯Ό μš΄μ˜ν•  λ•Œ μ˜¨ν”„λ‘œλ―ΈμŠ€λ³΄λ‹€ νŽΈν•œ 점 쀑 ν•˜λ‚˜κ°€ λ°”λ‘œ λ³Όλ₯¨ 관리 라고 μƒκ°ν•©λ‹ˆλ‹€. EBS CSI Driver λ₯Ό μ„€μΉ˜ ν›„ Storage Class, PV 그리고 PVC λ₯Ό 톡해 μ‰½κ²Œ AWS EBS λ₯Ό 톡해 λ³Όλ₯¨μ„ μ–Έμ œ μ–΄λ””μ„œλ“  κ°€μ Έλ‹€ μ“Έ 수 있죠. ν•œνŽΈ, μΏ λ²„λ„€ν‹°μŠ€μ—μ„  λ‹€μ–‘ν•œ λ°©λ²•μœΌλ‘œ λ³Όλ₯¨μ„ μ‚¬μš©ν•  수 μžˆλŠ”λ°μš”. μ»¨ν…Œμ΄λ„ˆκ°„ 곡유λ₯Ό κ°€λŠ₯μΌ€ ν•΄μ£ΌλŠ” EmptyDir, λ…Έλ“œμ˜ λ³Όλ₯¨μ„ 톡해 νŒŒλ“œκ°„ 곡유λ₯Ό κ°€λŠ₯μΌ€ ν•΄μ£ΌλŠ” HostPath, NFS μ„œλ²„λ₯Ό μ‚¬μš©ν•˜λŠ” NFS κΈ°λŠ₯ 등이 μžˆμŠ΅λ‹ˆλ‹€. κ·ΈλΌνŒŒλ‚˜λ₯Ό λ…Έλ“œμ— 배포할 λ•Œ, κ·ΈλΌνŒŒλ‚˜μ˜ μ„€μ • νŒŒμΌμ€ κ·ΈλΌνŒŒλ‚˜κ°€ 배포된 λ…Έλ“œμ˜ λ³Όλ₯¨μ— μ €μž₯이 λ©λ‹ˆλ‹€. λ”°λΌμ„œ λ§Œμ•½ κ·ΈλΌνŒŒλ‚˜ νŒŒλ“œκ°€ λ‹€λ₯Έ λ…Έλ“œμ— 배포가 될 경우 이전에 κ°€μ§€κ³  있던 κ·ΈλΌνŒŒλ‚˜ 섀정을 ..

article thumbnail
[λ‚˜μž‘μ†ŒμΏ ] μ˜ν†  μ§“κΈ° feat. λ―Έλ‹ˆ PC 쑰립

κ·Έλ™μ•ˆ 퍼블릭 ν΄λΌμš°λ“œλ₯Ό μ΄μš©ν•΄μ„œ μΏ λ²„λ„€ν‹°μŠ€ ν΄λŸ¬μŠ€ν„° ν™˜κ²½μ„ κ΅¬μΆ•ν–ˆμŠ΅λ‹ˆλ‹€. λ¬Έμ œμ—†μ΄ 잘 μ‚¬μš©ν•˜κ³  μžˆμ—ˆμ§€λ§Œ, μ—­μ‹œλ‚˜ λ¬Έμ œλŠ” λΉ„μš©μ΄μ˜€μŠ΅λ‹ˆλ‹€. λ§ˆμŠ€ν„° λ…Έλ“œ, μ›Œμ»€ λ…Έλ“œ 총 2λŒ€λ§Œ 띄어놓아도 쑱히 달에 5λ§Œμ› 이상은 λ‚˜μ™”μ£  😒 playground λ₯Ό μ‚¬μš©ν•œλ‹€ν•΄λ„ 속도가 느리고 μ•„λ¬΄λž˜λ„ νœ˜λ°œμ„±μ΄λ‹€ λ³΄λ‹ˆ λΆˆνŽΈν•¨μ΄ λ§Žμ•˜μŠ΅λ‹ˆλ‹€. κ·Έλž˜μ„œ κ²°κ΅­ μΏ λ²„λ„€ν‹°μŠ€ ν΄λŸ¬μŠ€ν„°λ₯Ό ꡬ성할 PC λ₯Ό ν•˜λ‚˜ μž₯λ§Œν•΄μ•Όκ² λ‹€ 생각을 ν–ˆκ³ , A to Z κΉŒμ§€ ꡬ성을 해보고 μ‹Άμ–΄ PC λ˜ν•œ λΆ€ν’ˆλ³„λ‘œ κ΅¬λ§€ν•˜μ—¬ μ‘°λ¦½ν•˜κ³ μž ν–ˆμŠ΅λ‹ˆλ‹€. μ–΄λ–€ λΆ€ν’ˆλ“€μ΄ μžˆμ„κΉŒ? λΆ€ν’ˆμ€ μ•„λž˜μ™€ κ°™μŠ΅λ‹ˆλ‹€. AMD Ryzen 5700G 16core ASRock DeskMini X300 λ² μ–΄λ³Έ μ‚Όμ„± PM9A1 M.2 NVMe SSD 1TB μ‚Όμ„± DDR4 PC-25600 32G λ…ΈνŠΈλΆμš©..

article thumbnail
[Github Action] νƒ€λ…ΈμŠ€λŠ” 이런 λŠλ‚ŒμΌκΉŒ? RUNNER_TOKEN must be set

μΏ λ²„λ„€ν‹°μŠ€ ν™˜κ²½μ—μ„  Action Controller Runner (μ΄ν•˜ ARC) λ₯Ό μ΄μš©ν•΄μ„œ νŒŒλ“œλ₯Ό Self Hosted Runner 둜 μ‚¬μš©ν•  수 μžˆμŠ΅λ‹ˆλ‹€. ARC κ΅¬μ‘°λŠ” μœ„μ™€ κ°™μŠ΅λ‹ˆλ‹€. Self Hosted Runner 둜 μ‚¬μš©ν•  νŒŒλ“œλ₯Ό RunnerDeployment λ˜λŠ” RunnerSet 으둜 배포할 수 있죠. RunnerDeployment λŠ” μΏ λ²„λ„€ν‹°μŠ€μ—μ„œ Deployment 와 λ™μΌν•˜κ²Œ λ™μž‘ν•˜κ³ , RunnerSet 은 StatefulSet κ³Ό λ™μΌν•˜κ²Œ λ™μž‘ν•©λ‹ˆλ‹€. λ˜ν•œ λ°°ν¬ν•˜κ²Œ 되면 νŒŒλ“œ μ•ˆμ— 2κ°€μ§€ μ»¨ν…Œμ΄λ„ˆ λ™μž‘ν•˜κ²Œ λ˜λŠ”λ°, ν•˜λ‚˜λŠ” Github Action Job 을 μ²˜λ¦¬ν•˜λŠ” Runner μ»¨ν…Œμ΄λ„ˆ, 또 ν•˜λ‚˜λŠ” Docker κ΄€λ ¨ 일을 μ²˜λ¦¬ν•˜λŠ” Docker μ»¨ν…Œμ΄λ„ˆμž…λ‹ˆλ‹€. μ˜΅μ…˜μ„ 톡해 Runner..

profile on loading

Loading...