Docker?- 도커(Docker)는 가상실행 환경을 제공해주는 오픈소스 플랫폼입니다. 도커에서는 이 가상실행 환경을 '컨테이너(Container)'라고 합니다. - 도커는 컨테이너라는 단위로 패키징되고, 가상화보다 가볍고 효율적이기도 합니다.- 또 MSA 환경에서 빼놓을 수 없는 개념입니다. Container?- Container는 어플리케이션과 그 실행에 필요한 의존성을 포함하는 경량화된 독립 실행 환경입니다.- 호스트 OS와 커널을 공유하면서도 프로세스, 파일 시스템, 네트워크를 다른 컨테이너와 격리하여 실행합니다.- 일관된 환경을 제공하여 개발, 테스트, 배포 과정에서 개발자들의 단골 멘트인 "내 컴퓨터에서는 작동했는데" 문제를 해결하고 이식성을 높입니다. Docker와 Container컨테이너..
개요프로젝트에 사용되는 계정 요금 확인이 주기적으로 필요했습니다.지원팀은 일반 사무직군으로 하나씩 접속해서 확인할 계획을 가지고 있었습니다.바로 옆자리에서 지켜보니 사람 손으로 확인하기에는 계정이 많아(대략 100개..?) 달에 한번만 확인하려 했습니다.옆에서 스트레스 받고 있는 걸 보니, 도움을 주고 싶어 자동화를 해보기로 결정했습니다. 동작 방식Naver Cloud에서 제공하는 API를 통해 비용을 가져와야 하기 때문에 각 계정에 API Key가 필요했습니다.먼저 엑셀에 아래와 같은 유형으로 계정명, accesskey, secretkey가 입력되어야 합니다. api key는 클라우드 운영에 있어서 매우 민감 정보로 문서에 암호를 지정하지 않을 수가 없었고,암호를 코드 내에서 해제하기로 하였습니다. 패..
Numpy는?Numpy는 행렬이나 일반적으로 대규모 다차원 배열을 쉽게 처리할 수 있도록 지원하는 파이썬의 라이브러리이다.Numpy는 주로 데이터 분석, 데이터 처리, 선형 대수, 머신 러닝 등 여러 분야에서 사용되고 있습니다.Numpy 설치해보기Numpy는 Python 라이브러리이기 때문에 Python의 패키지 관리자인 pip을 통해 설치가 가능합니다.(pip가 설치되지 않았을 경우 pip를 먼저 설치합니다.)$ pip install numpy Numpy 배열 생성해보기Numpy에서 가장 기본 구조는 배열로 이루어져 있으며, 동일한 타입의 데이터를 담는 다차원 배열입니다.np.array 클래스를 통해 배열을 생성할 수 있습니다.import numpy as np# 1차원 배열 생성a = np.array(..
OpenTofu는?https://opentofu.org/docs/Hashicorp에서 Terraform의 라이센스를 MPL(Mozilla Public License)에서 BUSL(Business Source License) 비오픈 라이센스로 변경하였고, 이에 대한 대응으로 탕생하게 되었습니다. 물론 이것이 Terraform의 인기를 반증한다고 할 수 있으며, Terraform을 포크한 오픈 소스이기 때문에 Terraform의 구성과 워크플로에 호환됩니다. 현재는 버전 차이가 크지 않아 업데이트에 잘 따라가고 있으나, 회사와 같은 기술 로드맵이 있지 않으며 업데이트가 늘어날 수록 기능에 차이가 생길 것으로 예상됩니다. Oracle 역시 기업용 제품 라인업에서 Terraform을 Opentofu로 대체되었습..
[이전 게시글]에서 작성한 코드가 버전 때문인지 제대로 작성되지 않았고,eks-workshop으로 eks를 배포하려다가 eks module을 사용하여 배포해보고 싶어 배포하게 되었습니다. Blue Print를 사용하지 않고, standard하게 구성하되, karpenter를 추가했습니다.karpenter를 설명하고 이를 테스트해 보겠습니다.파일 트리는 아래와 같으며, 전체 코드는 GitHub에 올려놓았습니다. (https://github.com/ssungz789/eks-self) KarpenterKarpenter의 기본 동작 구조는 아래와 같습니다.운영 부담 절감신속한 Node 추가와 제거자동 Node 롤링 (TTL)다양한 인스턴스 타임을 쉽게 적용빠른 버전 업데이트AWS 의존성을 제거함Auto scal..
Symbolic Link는 Linux 서버 운영 시 유용하게 사용됩니다.여러 어플리케이션에서 로컬 패스처럼 사용할 수도 있고, 사용 범위가 넓습니다. link가 더 이상 필요하지 않아 삭제해야할 때 까딱 잘못하면 원본 데이터가 지워지는 불상사가 생길 수 있습니다.안전하게 symbolic link를 제거하는 방법을 설명합니다. Case1. NAS가 /data/test에 마운트되어 있고, /data를 삭제해야하는 경우NAS 마운트 여부 확인NAS 마운트 해제mount를 해제하지 않고, /data를 지우는 경우 NAS 내부 데이터도 모두 삭제되므로 반드시 umount Case2. NAS는 별도 경로에 mount 되어있으나, 삭제 대상에 symbolic link가 걸려있는 경우NAS가 연결된 링크 포인트 확인u..
EKS 생성 방법AWS Console GUI 환경에서 생성IaC를 통해 생성 (Cloud Formation, AWS CDK, RANCHER)전용 명령 tool (eksctl)AWS Console GUI장점 : GUI에서 클릭클릭으로 생성하므로 매우 쉽다단점 : 별도 로그, 코드를 남기기 않기 때문에 이력 확인이 어렵다. (콘솔 상의 설정 값으로 유추해야함)EKSCTL 사용장점 : Conosle과 마찬가지로 배포가 쉽다. 코드로 이력을 남길 수 있어 관리가 수월하다.단점 : EKS에만 타겟된 도구이므로 AWS 자원 전체를 관리하기에는 불편하다.IaC 사용Terraform : 전체적인 사용 빈도가 가장 많고 대중화되어 있으며, EKS 생성이 간편하도록 별도 모듈도 제공한다.CDK : Terraform은 자체..
자격증이 실무에 필요하지 않지만 팀원들에게 공부에 대한 동기부여를 주고 싶어 시험을 봤고,그 시험 후기를 남긴다. 2022년에 봤던 시험 환경과 지금 시험 환경은 전혀 달랐고, 이래저래 제약 사항이 많았다.물론 그 와중에 생긴 에로 사항으로 03시 Schedule 되었던 시험을 06시에 보았다. 💡 Desktop에서 헤드셋을 사용하는 환경이라면, 헤드셋을 감독관에게 보이지 않는 것이 좋습니다. 자세한 내용은 아래 토글 참고 tip - notice에서도 나와있듯 15인치 이상의 모니터에서 시험 보는 것을 추천합니다. (화면이 여러 개로 나뉘어 있어 생각보다 시험 환경이 작습니다.) 더보기먼저 나의 시험 환경은 Desktop에 웹캠과 헤드셋을 사용하고 있다.PSI Bro..
2022년에 CKA 시험을 봤던 경험을 기억 속에서 꺼내어 후기를 작성해본다. [시험 신청]시험은 익히 알려있는 것과 같이 LF 홈페이지에서 신청할 수 있다.시험 비용은 약 25만원? 정도 했던 것 같다. [시험 준비]시험 준비는 Youtube의 따배런 이성미 강사의 영상을 보면서 주로 공부했다.초반에는 도대체 Container가 무엇이고, 왜 이게 좋은지 이해가 전혀되지 않아 어려웠다. 그런데 생각해보니까 K8S와 Cloud가 비슷 맥락이 있구나~ 하는 느낌을 많이 받기 시작했고,그때부터 Cloud에 대입하면서 이해했고, 조금씩 눈이 띄어진 것 같다. 또 당시에는 브라우저의 북마크를 사용할 수 있었기 때문에 검색 시간을 최소화하고자,북마크를 미리 준비하여 문제에 맞는 북마크를 사용할 수 있게 사전에 준..
테스트 환경은 Oracle 11.2.0.4 버전이나, 타 버전의 경우에도 큰 차이는 없습니다. 업그레이드를 하지 않을 경우 AWS에서 예정한 일정에 맞춰 엔진 업그레이드가 진행됩니다.자동 업그레이드가 될 경우 특이사항 발생 시 즉시 대응이 어려우므로 수동 진행하는 것을 권장합니다. 업그레이드 진행 시 서비스 단절(테스트 시 40분 가량 단절)이 발생합니다. 물론 소요 시간은 RDS 상태에 따라 차이가 있을 수 있습니다.업그레이드 이후 Desupport 항목으로 인해 서비스 장애가 발생할 수 있기 때문에 인스턴스 복제를 통해 사전에 충분히 검증 후 진행하는 것을 권고하고 있습니다. (AWS Docs 내용) Testing an UpgradeBefore you perform a major version up..