infrastructure
-
[부록1] 각 리소스가 연결되는 방식infrastructure/쿠버네티스 인 액션 2023. 4. 9. 17:58
** 클러스터마다 연결방식이 상이할 수 있다. 클라이언트와 Ingress Controller(Pod) 도메인은 Ingress Node의 IP를 매핑했다. 즉, 노드포트로 들어온 클라이언트의 요청이 Ingress Controller라는 파드로 간다. (이것만 확인하면 됨) Ingress Controller와 Ingress $ kubectl describe ingresses poi-ingress 명령어로 확인해보면 Ingress의 Annotations를 확인할 수 있는데 여기서 kubernetes.io/ingress.class: poi라는 key value가 ingress-controller의 레이블에 있어야 한다. 반드시 key가 kubernetes.io/ingress.class에 대응하는 value가 같..
-
도커 빌드 오류(arm vs amd)infrastructure/도커 2023. 4. 8. 20:20
문제 상황 새로 받은 맥북에서 신나는 마음으로 간단한 웹서버를 빌드한 뒤 도커이미지를 만들어 배포했다. 그다음 컨테이너를 실행하는 파드를 만들었는데 위처럼 계속 파드 생성에 실패했다. 생각 정리 - 도커를 실행하는 환경 : amd - 도커를 빌드한 환경 : arm 빌드할 환경을 실행할 환경으로 맞춰줘야 겠구나! 해결 $ docker buildx build --platform=linux/amd64 -t poistargram/port . $ docker inspect poistargram/port 빌드할 때 실행환경인 amd 기반으로 빌드하도록 옵션을 넣어준다!(간단) arm VS amd M1칩은 arm 기반, Intel칩이 amd 기반이다. 이름도 비슷해서 매우 헷갈릴 것 같다. 간단하게 해결한 것처럼 적..
-
1장 쿠버네티스 소개infrastructure/쿠버네티스 인 액션 2022. 6. 29. 22:35
컨테이너의 이해 가상머신 작은 단위의 애플리케이션에 각각의 가성머신을 제공 애플리케이션의 개수가 많아지면서 하드웨어 리소스, 관리 리소스가 같이 커짐 리눅스 컨테이너 동일한 호스트 시스템에서 여러개의 서비스를 실행 서로 다른 환경이지만 가상머신에 비해 리소스가 훨씬 적음 도커 개념 이해 도커는 애플리케이션을 패키징, 배포, 실행하기 위한 플랫폼 애플리케이션을 전체 환경과 함께 패키징 도커의 주요 개념 - 이미지 : 애플리케이션과 환경을 패키징 - 레지스트리 : 도커 이미지를 공유하는 클라우드 - 컨테이너 : 도커 기반 컨테이너 이미지에서 생성된 리눅스 컨테이너 1. 개발자는 생성한 이미지를 레포지토리로 전송 2. 다른 개발자는 만들어진 이미지를 로컬로 다운 3. 로컬의 도커를 이용해 다운 받은 이미지로 ..
-
travisCI를 이용해 REACT 빌드 및 S3에 배포하기infrastructure 2021. 3. 24. 13:51
배경 이전에 API서버인 스프링프로젝트는 EC2에 배포한 바 있었다. 이번엔 정적 페이지만을 구성하는 프론트 웹페이지를 S3에 배포해보자. 그런데 EC2와 같은 서버에 배포해야 맞는 것 같은 프론트 서버를 단지 파일서버인 S3에 배포해 접근하는 게 가능할까? 딥하게 가면 아직 이해하지 못하니 간단하게 이미 만들어진 html파일만 S3에 올리고 서비스하는 방식으로 이해하자. S3버켓 만들기 원하는 이름과 리전을 선택하고 누구나 접근할 수 있도록 해야하기 때문에 퍼블릭 액세스 차단을 모두 풀어 놓고 나머지는 놔둔 상태로 버켓을 생성하자. 버켓에 들어간 뒤 속성에서 정적 웹 사이트 호스팅을 편집하자 활성화를 누르면 인덱스 문서를 설정할 수 있는데 리액트의 기본 인덱스 파일은 index.html이므로 따로 바꾸..
-
스프링서버 EC2에 배포하기infrastructure 2021. 2. 17. 23:50
아키텍쳐 구성 과정 1. 작성한 코드 깃헙에 올리기 2. 깃헙과 트래비스CI를 연동해서 빌드 및 테스트하기 3. 트래비스CI에서 빌드된 파일 S3에 업로드하기 4. codedeploy가 S3에서 빌드파일을 EC2에 배포 및 자동 실행해주기 1. 작성한 코드 깃헙에 올리기 깃헙 레파지토리를 생성하고 로컬과 연결한 상황에서 시작 - git add -A - git commit -m "any message" - git push 2. 깃헙과 트래비스CI를 연동해서 빌드 및 테스트하기 - 연동하고 싶은 계정으로 트래비스CI에 로그인하자 - 트래비스CI의 settings의 Legacy Service integration에서 연동하고 싶은 레퍼지토리를 선택하자 (너무나도 놀랍게도 이러면 연동이 끝난다.) - 레파지토리..