2023/05/13 3

AWS EKS 클러스터에 접속해서 특정 작업 또는 정보를 확인하기

글을 작성하게 된 계기 회사에서 개발 도중에 stage 환경에 띄워져있는 특정 pod이 5분간격으로 터졌다. dev에서는 잘 되는데 stage에서만 발생하는 문제였고, 문제가 발생하는 RPC도 로컬에서 연결해서 확인해봤을때는 정상적으로 동작했다. 인프라쪽에서 최근에 보안관련 설정을 했었는데 그때 뭔가 잘못 건드려서 발생하는 문제같았지만 확실하게 하고싶어서 옆자리 사수님께도 얘기해 봤다. 이때 사수가 "eks 에 접속해서 확인해봐야 정확히 알 것 같아요!" 라고 하셨지만 나는 어떻게 해야하는지 구체적으로 몰랐다. 결국 실장님이 인프라담당자에게 관련 이슈에 대해서 전달하고, 내게 eks 접속과 관련해서 커맨드를 알려주고 설명을 쭉 해주셨다. 쿠버네티스에 대해서 강의를 들은 적은 있지만 대충 억지로 공부했어서..

개발 이슈 2023.05.13

Bastion 서버란 무엇인가

올해초에 인프라 전환을 하기 전에 서비스를 배포할 때 Bastion서버라는 곳에 접속한 다음에 여러 커맨드를 입력하고 배포를 했었다. 당시의 서비스 배포 과정은 다음과 같았다. $ ssh -i ~/.ssh/id_rsa deploy@3.xxx.xxx.xxx -A $ conn api1 $ git pull $ yarn build $ pm2 restart 0 대충 이렇게 하면 서비스 배포가 된다는 것은 알고 있었는데 어떤 과정인지 잘 몰랐어서 늦게나마 찾아보고 정리했다. 명령어에 대한 설명은 다음과 같다. $ ssh -i ~/.ssh/id_rsa deploy@3.xxx.xxx.xxx -A 외부에서 deploy라는 사용자로 3.xxx.xxx.xxx라는 IP주소를 가진 서버에 접속한다. 이때 ~/.ssh/id_rs..

DevOps 2023.05.13

Jenkins 개념 및 용어 정리

Jenkins란? Jenkins는 지속적인 통합(Continuous Integration, CI) 및 지속적인 전달(Continuous Delivery, CD)를 지원하는 오픈 소스 자동화 도구입니다. 소프트웨어 개발에서 CI/CD는 개발자들이 애플리케이션의 변경 사항을 빠르게 통합하고, 테스트 및 배포를 자동화하여 품질을 유지하고 소프트웨어를 신속하게 제공하는 데 도움을 줍니다. Jenkins는 다양한 개발 언어와 프레임워크를 지원하며, 유연하고 확장 가능한 플러그인 아키텍처를 갖추고 있어 다양한 개발 환경에 맞춰 사용자 정의 파이프라인을 구성할 수 있습니다. Jenkins를 사용하면 소스 코드의 변경 사항을 감지하고, 빌드, 테스트, 정적 코드 분석, 패키징, 배포 등의 작업을 자동화할 수 있습니다...

DevOps 2023.05.13