분류 전체보기 (총 582개) 썸네일형 리스트형 AWS - ECS Fargate를 이용한 서버리스 아키텍쳐 구축 ECS Fargate를 이용한 서버리스 아키텍쳐 구축- ECS의 Fargate는 서버(EC2 Instance)를 관리할 필요없이 컨테이너를 실행할 수 있도록 돕는 컴퓨팅 엔진이다 이를 이용해 서버리스 아키텍쳐를 구축한다 1. Fargate Cluster 생성1) ECS 서비스 좌측의 클러스터 탭을클릭한 뒤 클러스터 생성을 누른다 2) AWS Fargate을 제공하는 네트워킹 전용을 선택 3) 원하는 클러스터 이름 입력후 생성을 클릭(DemoCluster) 2. Repository 생성- docker hub의 repository를 그대로 사용할 수 있지만 사내의 사적인 repository 구성시 사용할 수 있으며 네트워크 지연시간을 줄일 수 있다. 리포지토리 이름 입력 후 생성 버튼 클릭 3. aws cl.. AWS - ECS 란? - 수정중 ECS도커 컨테이너를 관리하는 컨테이너 오케스트레이션 서비스로 AWS에서 컨테이너식 어플리케이션 배포 가능클러스터를 관리 및 확장할 필요가 없음 시작 유형 EC2 자신이 관리하는 EC2 인스턴스에서 Container를 실행할 수 있는 유형 Fargate 클러스터 및 작업노드를 관리할 필요 없이 작업정의만을 등록해 Container를 실행할 수 있는 유형 구성요소Container Instance (EC2 시작유형에 한함)클러스터에 포함되는 작업도느드로 Container들이 실행된다. Container Instance에는 AWS와 소통하기 위해 ECS Agent가 설치되어 있어야 한다. (* Amazon ECS-optimized AMI는 자동으로 Agent가 설치되어 있다. 다른 운영체제라면 직접 설치해야.. Linux - cGroups 란? cGroups 란?- 리눅스의 프로세스는 하나 이상의 스레드 모음으로 동작한다 cGroups는 프로세스와 스레드를 그룹화하여 그 그룹안에 존재하는 프로세스와 스레드에 대한 관리를 수행하기 위한 기능이다. 예를 들어 호스트 OS의 CPU나 메모리와 같은 자원에 대해 그룹별로 제한을 둘 수 있다. - cGroups로 컨테이너 안의 프로세스에 대해 자원을 제한 함으로써 특정 컨테이너가 호스트 OS의 자원을 모두 사용하는 일을 막는다. cGroups 서브 시스템1. CPU- CPU 사용량 제한 2. CPUacct- CPU 사용량 통계 3. CPUset- CPU나 메모리 배치를 제어 4. memory - 메모리 사용량 제한 5. devices- 디바이스 엑세스 허가/ 거부 6. freezer- 그룹에 속한 프로세.. Linux - Namespace 란? Namespace 란?- 한덩어리의 데이터에 이름을 붙혀 충돌 가능성을 줄이고, 쉽게 참조할 수 있게하는 개념 Linux 커널의 namespace 기능은 Linux의 오브젝트에 이름을 붙임으로써 다음과 같은 6개의 독립된 환경을 구축할 수 있다.1. PID namespace- 프로세스에 할당된 고유한 ID를 말하며 이를 통해 프로세스를 격리할 수 있다- namespace가 다른 프로세스 끼리는 서로 액세스할 수 없다 2. Network namespace- 네트워크 디바이스, IP 주소, Port 번호, 라우팅 테이블, 필터링테이블 등의 네트워크 리소스를 namespace마다 격리시켜 독립적으로 가질 수 있다. 이 기능을 이용하면 OS 상에서 사용중인 Port가 있더라도 컨테이너 안에서 동일한 Port를 .. Kubernetes - pod 관련 명령어 Pod 관련 명령어 1. 클러스터에 동작중인 pod 목록 확인# kubectl get pod 2. Shell 실행- bash 프로세스를 지정된 pod에 실행한다# Kubectl exec -it POD_NAME bash 3. pod의 자세한 설명# kubectl describe pod "Pod ID" 4. pod안의 컨테이너의 자세한 로그 확인 # kubectl logs "Pod ID" Kubernetes - pod error 정리 - 추가중 pod Back off pod 생성이 성공적으로 되었다가 계속해서 다시 죽는 경우가 있다다음의 명령어로 pod의 상태를 확인한다 # kubectl describe pod "pod Id" 다음과 같이 Back off 라는 메시지가 보인다 Replica Set은 Pod들을 특정 방법으로 확인하여 응답이 없을 시 pod를 서비스 불가능 상태로 인지 하고 자동으로 pod를 죽이고 다시 지정된 개수로 pod를 맞추기위해 생성을 한다. pod의 log를 확인하여 pod가 죽는 이유를 알아야 한다 아래 명령어로 확인을 하자 # kubectl logs "pod ID" ERROR 1. no route (unreachable) - 정확한 원인 아직 파악하지 못함. - master와 worker의 방화벽 해제시 해결 2. .. Docker - Forbidden path outside the build context 에러 Forbidden path outside the build context 에러 도커 이미지 빌드시 아래와 같은 오류가 나타나는 경우가 있다 원인 Dockerfile 내부의 ADD 구문에서 ../ 로 상위 파일을 포함하여 나타나는 오류이다. Docker - Certification is Expired or not yet valid 에러 Certification is Expired or not yet valid에러- 이미지 빌드시 자격증명에 에러가 있어 발생하는 오류이다. 해결방법1. 현재 시스템의 시간이 맞지 않아 발생하는 경우 일 수도 있으니 시간을 확인해본다. 이전 1 ··· 26 27 28 29 30 31 32 ··· 73 다음