일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
- ecs
- #스웨거
- #Swagger-editor
- 프로세스 통신
- IP
- #Swagger-ui
- #api 문서화
- fluentd
- React.js
- #Swagger-codegen
- 프로세스
- 모캠
- 기술PM
- 카카오게임즈
- Kubernetes
- React
- 북딜
- Redux
- javascript
- action
- Reducer
- AWS
- Site Reliability engineering
- #Swagger
- 모두의캠퍼스
- SRE
- docker
- 쿠버네티스 컨트롤러
- server
- 쿠버네티스
- Today
- Total
목록전체 글 (154)
탕구리's 블로그
안드로이드 앱을 스토어에 배포하는 과정에서 APK와 AAB라는 용어를 들을 수 있다. APK는 파일 확장자이며, AAB는 "Android App Bundle"의 줄임말이다. APK 일반적인 APK는 APK 파일 하나를 통해 많은 디바이스의 호환을 지원한다. 그렇다 보니 APK 자체에 여러개의 ABI(Anroid Binary Interface)를 포함하게 되며, APK 파일의 크기는 커질 수 밖에 없다. APK 파일이 커지는 경우 스토어를 통해 앱을 다운받는 사용자에게 안좋은 경험을 제공할 수 밖에 없다. 실제로 나도 스토어에서 앱을 다운받는데 시간이 오래걸리면 굉장히 짜증이 나기 때문에 안좋은 경험을 제공한다는 것은 빼도박도 못하는 사실이라는 생각이 든다. 앱 번들 APK의 용량 문제를 해결하기 위해 개..
** 해당 도서를 구매하며 학습해보며 내용을 정리하는 목적으로 글을 작성하였습니다. ** 문제가 되는 경우 말씀해주시면 조치를 취하도록 하겠습니다. 감사합니다 :) 쿠버네티스 컨트롤러 중에서도 오늘은 "Replication Controller와 ReplicaSet"에 대해서 정리를 진행하려 합니다. "#4 컨트롤러 개념 정리"에서 간단하게 알아보았는데, Replication Controller와 ReplicaSet은 stateless 한 컨테이너를 관리합니다. # 레플리케이션 컨트롤러(Replication Controller) 레플리케이션 컨트롤러는 쿠버네티스 프로젝트 초기부터 있었던 컨트롤러입니다. 앞서 말한 것처럼 레플리케이션 컨트롤러는 파드를 관리하며 파드의 개수가 항상 일정하도록 유지합니다. 예를..
틈틈이 쿠버네티스 관련 서적들을 읽어가며 학습을 하고 있는데, 아무래도 단순히 읽고 예제를 따라가는 속도보다 블로그에 포스팅을 위해 글을 작성하고 정리하는 시간이 오래 걸리다 보니 포스팅이 굉장히 미뤄지는 듯한 느낌입니다 제가 다 게을러서 생기는 일 입니다. 흑.. 반성을 해야겠어요. 오늘은 무작정 따라가기만 바빳던 예제는 잠시 그만두고 쿠버네티스 클러스터 내에서 설정하는 포트에 대한 종류를 한번 짚고 넘어가는 포스팅을 작성하겠습니다. 1. 서비스에서는 어떤 포트 설정을 사용할까? 서비스 설정에서는 어떤 포트를 사용하고 어떻게 설정을 진행 할까요? //nodeport-service.yaml apiVersion: v1 kind: Service metadata: name: nodeport-service sp..
** 해당 도서를 구매하며 학습해보며 내용을 정리하는 목적으로 글을 작성하였습니다. ** 문제가 되는 경우 말씀해주시면 조치를 취하도록 하겠습니다. 감사합니다 :) 컨트롤러? 파드를 관리하는 역할을 한다. 다양한 목적에 따라 쿠버네티스에서 제공하는 컨트롤러를 사용하면 된다. 쿠버네티스에서 제공하는 컨트롤러의 종류로는 "레플리케이션 컨트롤러", "레플리카 세트", "디플로이먼트", "데몬" , "스테이트풀세트", "크론잡" 등이 있다. 각각의 컨트롤러를 용도에 맞게 정리해보면! 일반적으로 상태를 유지하지 않아도 되는 파드를 관리하는 경우 - 레플리케이션 컨트롤러(Relication Controller) - 레플리카 세트(Replica Set) - 디플로이먼트(Deployment) 클러스터 전체에 배포가 필..
** 해당 도서를 구매하며 학습해보며 내용을 정리하는 목적으로 글을 작성하였습니다. ** 문제가 되는 경우 말씀해주시면 조치를 취하도록 하겠습니다. 감사합니다 :) 파드(Pod)란 무엇인가..? 파드란 실제로 마스터와 연결된 노드에서 작업을 수행하는 최소 단위입니다. "엥?! 무슨 소리? 컨테이너가 최소 단위 아니야?"라고 생각할 수 있지만 파트의 경우 여러 개의 컨테이너를 묶어서 관리하게 되고 쿠버네티스에서는 파드를 작업 수행의 최소 단위로 구분합니다. 파드를 구성하는 컨테이너가 단일인 경우에는 물리적으론 단일 컨테이너가 작업을 수행하는 최소 단위가 될 수 있을 것 같네요. 마스터 노드, 워커 노드에 대한 기본적인 작업(join)이 되어 있는 경우 워커노드에 파드를 구동할 수 있는 기본 예제입니다. 파..
RPC란 무엇일까? RPC(Remote Procedure call)이란, 별도의 원격 제어를 위한 코딩 없이 다른 주소 공간에서 리모트의 함수나 프로시저를 실행 할 수 있게 해주는 프로세스간 통신입니다. 즉, 위치에 상관없이 RPC를 통해 개발자는 위치에 상관없이 원하는 함수를 사용할 수 있습니다. 운영체제를 공부하다 보며 프로세스간 통신을 위해 IPC(inter-Process Communication)을 이용하는 내용을 볼 수 있는데요, RPC는 IPC 방법의 한 종류로 원격지의 프로세스에 접근하여 프로시저 또는 함수를 호출하여 사용하는 방법을 말합니다. 기존에는 프로세스간 통신을 위해 소켓통신, RPC 같은 방식이나 RPC를 활용한 CORBA, RMI 같은 방식을 많이 사용했다면 현재는 웹기술의 발달..
오늘은 nginx에 인증 모듈을 추가하는 작업을 진행하였고 그중에서도 ldap을 연동하는 과정에 대해서 정리를 진행합니다. nginx 인증이란, nginx를 통해서 특정 페이지로 이동할 때, 로그인과 같은 인증과정을 nginx에서 처리할 수 있도록 하는 과정입니다. 인증을 위한 방법에는 여러가지가 존재하는데 그중에서도 LDAP을 통하여 인증과정을 진행하도록 하겠습니다. 우선, nginx를 통해서 인증을 진행하려면 nginx를 설치해야 됩니다. (당연한 소리) 1. 바이너리를 통해 설치하는 방법 2. 패키지 매니저를 통해 설치하는 방법 1. nginx 설치하기 저는 centoss7에서 yum 패키지를 통해 nginx를 설치하는 방법으로 진행하였습니다. yum 저장소에는 nginx가 포함되어 있지 않기 때문..
지난 글에서 Docker를 통해 Tomcat과 Redis를 구동하기 위해했던 작업 과정을 정리했었어요. 내용을 정리해놓은 링크는 글 맨 아래에 링크 걸어둘 테니 궁금하신 분들은 한번 들려주세요! 이번엔 두개의 컨테이너가 데이터를 주고받아야 하기 때문에 네트워크가 가능한 상태가 되어야 합니다. 그러기 위해서는 도커에서 사용하는 네트워크 구조에 대해서 어느 정도의 이해가 필요하기 때문에 도커의 네트워크 구조는 어떻게 이루어져 있는지 내용을 정리하는 시간을 갖도록 할게요~! 도커 네트워크의 구성 처음 도커를 설치하고 데몬은 구동하게 되면 docker0이라는 네트워크 인터페이스가 생성됩니다. 이는 기본적으로 도커에서 사용하는 가상의 네트워크 인터페이스입니다. 도커 데몬 구동시 도커 내부 로직에 의하여 172.1..
도커를 통한 작업을 하다 문제가 발생했을 때, 우리는 로그에 굉장히 많은 의존을 하게 된다. 원인모를 오류가 계속되는 것은 굉장히 답답한 일이기 때문에, 도커 로그를 확인하는 방법을 기록해두기로 하였다. 우선, 우리가 필요한 도커 파일을 전부 작업하고 도커 이미지를 기반으로 도커 컨테이너를 구동하게 된다. 우리가 내린 명령어에 의해 도커 데몬은 작업을 진행하게 되고, 우리의 컨테이너가 구동되는 과정에서 발생하는 디버그를 로깅할 수 있다. 1. 데몬 설정하기 도커 데몬의 디버그를 위해서는 도커 데몬에 대한 디버깅을 허용해야 한다. /etc/docker/daemon.json으로 이동하여 "debug " : true 로 설정하여 준다. # /etc/docker/daemon.json { "debug" : tru..