분류 전체보기
-
쿠버네티스 시작인프라 2022. 12. 12. 09:21
쿠버네티스 실행 방법 kubectl이라는 명령어로 쿠버네티스를 사용할 수 있다. YAML파일을 통해 컨테이너 리소스를 생성 및 삭제할 수 있다. (더 많이 쓰이는 방법) 쿠버네티스의 컴포넌트 마스터 노드에서 API 서버(kube-apiserver), 컨트롤러 매니저(kube-controller-manager), 스케줄러(kube-scheduler), DNS서버(coreDNS) 등이 실행되고, 모든 노드에서는 오버레이 네트워크 구성을 위해 프락시와 네트워크 플러그인이 실행된다. kubelet이라는 에이전트가 모든 노드에서 실행된다. kubelet은 컨테이너의 생성, 삭제뿐만 아니라 마스터와 워커 노드 간의 통신 역할을 함께 담당한다. → 아직까지는 ‘kubelet이라는 에이전트가 모든 노드에서 기본적으로 ..
-
dockerfile 관련 정리인프라 2022. 12. 9. 14:05
이 포스팅은 dockerfile 작성 시 공부했던 내용을 정리하는 포스팅이다. Dockerfile 멀티 스테이지 하나의 Dockerfile로 이미지를 생성할 경우, 실행 파일의 크기가 너무 클 경우 두 개의 스테이지로 나눠서 필요한 실행파일만 최종 결과물에 포함 시킬 수 있다. FROM golang ADD main.go /root WORKDIR /root RUN go build -o /root/mainApp /root/main.go CMD ["./mainApp"] 위와 같은 dockerfile로 이미지를 만들 경우 실행 파일의 크기가 엄청 커지게 된다. FROM golang ADD main.go /root WORKDIR /root RUN go build -o /root/mainApp /root/main...
-
mysql cli 모음 (+ docker)백엔드 2022. 12. 9. 13:37
이번 포스팅은 frontend, backend, serving server, db로 구성된 프로젝트의 각 컴포넌트를 컨테이너로 연결시키는 과정에서 있었던 mysql 관련 사항들을 정리해보려고 한다. ubuntu 환경에서 mysql을 이용하고, container로 db를 띄우고 연결하는 과정이 궁금한 사람들에게 유용한 정보였음 좋겠다. mysql service 시작, 종료 명령어 sudo service mysql start sudo service mysql stop mysql 저장 경로 변경 db container를 띄우고 사용하게 된다면, 해당 컨테이너가 없어져도 안에 데이터는 이후에도 계속 사용할 수 있도록 해주어야 합니다. 그러기 위해서 볼륨 마운트를 사용합니다. 그리고, 한 프로젝트를 운영하게 되면..
-
하루 5분 UX(12/9)기록/하루 5분 UX 2022. 12. 9. 07:36
LESSON 27 ~ 31 사용자 리서치 방법에는 인터뷰, 설문조사, 카드 소팅 ... 등이 있습니다. 각각의 조사 방법마다 장점과 단점, 그리고 필요한 시점에 유용하게 사용할 수 있을 것 같다는 생각이 들었습니다. 인터뷰 - 복잡한 과정과 결정 사항이 수반되는 주관적인 상품을 테스트해볼 때 좋다. 설문조사 - 수집한 답변을 비교하거나 질문 방식을 통제, 많은 수의 사람에게 질문할 때 적합하다. 카드 소팅 - 어떤 기능을 포함할지 결정은 됐으나, 어떻게 조합할지 실제적인 전략이 떠오르지 않을 경우 활용한다. 인터뷰와 설문조사 방법은 많이 접해볼 수 있는 것이지만 카드 소팅은 처음 접해보는 방법이라 인상 깊었다. 회사 제품에 추가된 기능들을 넣는 과정에서 기능이 들어갈 위치, 순서 등을 결정할 때 우리 팀..
-
Nginx Load balancing, 도커 컨테이너 실습인프라 2022. 12. 8. 12:45
실습 내용 ip주소의 80번 포트로 들어오는 요청을 내부 3000번, 3001번, 3002번 포트로 분산시켜 주도록 하겠습니다. 컨테이너의 내부 포트는 3000포트를 개방시키고 외부 포트는 각각 3000, 3001, 3002포트와 연결시켜 줍니다. Upstream Nginx의 upstream을 이용해 요청에 대한 분배를 해줄 수 있도록 해보겠습니다. 선언 위치 /etc/nginx/sites-enabled/ 내에 새로운 파일을 만들어줍니다. (nginx.config의 http{ ... } 안에 includes /etc/nginx/sites-enabled/* 구문이 있는지 확인하고 없으면 추가해줍니다.) ☼새로운 파일을 생성하지 않고 기존에 존재하는 nginx.config 파일 내에 선언해줘도 괜찮습니다! ..
-
Nginx 개념 + 간단 실습인프라 2022. 12. 8. 09:45
개념 Nginx란? Nginx는 웹 서버 구축을 도와주는 소프트웨어이다. 서버는 정적인 데이터와 동적인 데이터를 제공해줄 수 있다. 정적인 데이터란 html, css와 같은 데이터들이고 동적인 데이터란 DB조회나 다양한 로직으로 생성된 데이터들을 뜻한다. SPA가 등장하게 되면서 이렇게 다양한 데이터들을 따로따로 보내줄 수 있도록 서버의 기능을 분리하기도 한다. 정적인 데이터는 web server가 빠르게 클라이언트에게 제공을 하고 동적인 데이터는 WAS(web application server)에 요청을 보내고 WAS가 처리한 데이터를 클라이언트에게 바로 보내준다. Nginx가 이런 web server의 구축을 도와준다. web server를 구축할 수 있는 소프트웨어로는 apache가 있다. Apac..
-
컨테이너 run 옵션 정리인프라 2022. 12. 8. 09:07
Docker image를 통해 container를 생성할 수 있다. container는 docker run 명령어를 통해 실행시킬 수 있다. 기본 옵션 i, --interactive 표준 입력(stdin)을 활성화하며, 컨테이너와 연결(attach)되어 있지 않더라도 표준 입력을 유지합니다. 보통 이 옵션을 사용하여 Bash 에 명령을 입력합니다. t, --tty TTY 모드(pseudo-TTY)를 사용합니다. Bash를 사용하려면 이 옵션을 설정해야 합니다. 이 옵션을 설정하지 않으면 명령을 입력할 수는 있지만, 셸이 표시되지 않습니다. -name 컨테이너 이름을 설정합니다. d, --detach Detached 모드입니다. 보통 데몬 모드라고 부르며, 컨테이너가 백그라운드로 실행됩니다. p, --pu..
-
도커 이론인프라 2022. 12. 8. 08:57
도커란? 컨테이너를 기반으로 하는 오픈소스 가상화 플랫폼 컨네이너는 가상화 기술 중 하나로, 프로세스를 격리시켜 동작하는 방식으로 다음과 같은 특징이 있다. host os 그리고 docker엔진 위에서 바로 동작하여 host의 커널을 공유한다. 컨테이너를 이루는 네트워크 설정, 환경 변수 등의 시스템 자원은 각 컨테이너가 독립적으로 소유 필요한 라이브러리와 어플리케이션을 모아서 마치 별도의 서버처럼 구성한 것 이미지를 실행한 상태 Docker document에서는 아래와 같이 설명하고 있습니다. 이미지의 실행 가능한 인스턴스입니다. DockerAPI 또는 CLI를 사용하여 컨테이너를 생성, 시작, 중지, 이동 또는 삭제할 수 있습니다. 로컬 머신, 가상 머신에서 실행하거나 클라우드에 배포할 수 있습니다...