분류 전체보기 681

[Kubernetes] Minikube 설치 및 인그레스 설치 및 설정하기

[Docker] Nginx - React - Nodejs - Mysql 연동 실습하기 이번 포스팅에서 구현할 시스템의 구성도는 위와 같다. Ngnix, React, NodeJS, MySQL을 도커 컨테이너로 띄어 간단한 시스템을 구현해보겠다. Docker 관련 포스팅이니 React, Nodejs, MySQL 관련 소스는 블로그 lordofkangs.tistory.com 지난 포스팅에서 도커 환경에서 도커 컴포즈로 Ngnix-React-NodeJS-MySQL 시스템을 개발환경용으로 구현해보았다. 이번 포스팅에서는 쿠버네티스 환경에서 Ngnix-React-NodeJS-MySQL 시스템을 구현해보려고 한다. 1. MiniKube 설치하기 나는 쿠버네티스 환경을 MiniKube로 구성하였다. 원래 목적은 VM환..

Ops/Kubernetes 2023.10.12

[Kubernetes] 인그레스(Ingress)란 무엇인가?

인그레스(Ingress)란? ingress를 이해하려면 ingress controller를 이해해야 한다. ingress는 트래픽을 어떻게 라우팅 할 것인가를 정리한 '룰'이고ingress controller는 ingress의 룰을 적용하여 실제로 라우팅하는 App이다. 정리하면 ingress로 라우팅룰을 설정하면ingress controller은 ingress를 검증하고 룰을 적용한다. 오픈소스로 공개된 ingress-nginx-controller를 기준으로 보자.( https://raw.githubusercontent.com/kubernetes/ingress-nginx/main/deploy/static/provider/cloud/deploy.yaml ) K8S 외부의 트래픽은 ingre..

Ops/Kubernetes 2023.10.11

[PS] BOJ1826 연료 채우기 ( Greedy ) with JAVA

1826번: 연료 채우기 첫째 줄에 주유소의 개수 N(1 ≤ N ≤ 10,000)가 주어지고 두 번째 줄부터 N+1번째 줄 까지 주유소의 정보가 주어진다. 주유소의 정보는 두개의 정수 a,b로 이루어 져 있는데 a(1 ≤ a ≤ 1,000,000)는 성경 www.acmicpc.net ◎ 문제풀이 문제를 풀려면 우선순위큐 두 개를 사용해야 한다. 입력받은 주유소는 우선순위큐에 저장하고 거리를 기준으로 오름차순하여 정렬한다. 오름차순으로 정렬해야 현재 자동차 주유량을 기준으로 주유소에 차례로 접근이 가능하다. 현재 자동차 주유량이 10L라고 해보자. 10L로 접근가능한 주유소를 우선순위큐에서 하나씩 꺼낸다. 주유소의 주유량을 주유량 우선순위큐에 저장한다. 주유량 우선순위큐는 내림차순이다. 주유량 우선순위큐에..

문제풀이 2023.10.10

[Docker] Nginx - React - Nodejs - Mysql 연동 실습하기

이번 포스팅에서 구현할 시스템의 구성도는 위와 같다. Ngnix, React, NodeJS, MySQL을 도커 컨테이너로 띄어 간단한 시스템을 구현해보겠다. Docker 관련 포스팅이니 React, Nodejs, MySQL 관련 소스는 블로그가 아닌 깃허브에 남겨놓으니 관심있는 분은 참고하기를 바란다. GitHub - mgKang3646/Docker-Fullstack-App Contribute to mgKang3646/Docker-Fullstack-App development by creating an account on GitHub. github.com Ngnix ( 리버스 프록시 서버 ) 클라이언트(User)가 웹페이지를 요청하면 FrontEnd 서비스에서 제공 가능하지만, API로 데이터를 요구한다..

Ops/Docker 2023.10.05

[PS] BOJ1911 흙길 보수하기 ( Line Sweeping ) with JAVA

1911번: 흙길 보수하기 어젯밤 겨울 캠프 장소에서 월드 본원까지 이어지는, 흙으로 된 비밀길 위에 폭우가 내려서 N(1 ≤ N ≤ 10,000)개의 물웅덩이가 생겼다. 월드학원은 물웅덩이를 덮을 수 있는 길이가 L(1 ≤ L ≤ 1,000 www.acmicpc.net ◎ 문제풀이 풀이를 알면 굉장히 쉬운 문제인데... 쉬운 풀이까지 가기란 참으로 어려운 것 같다. 변수(range)를 하나 선언한다. 변수(range)는 현재 설치된 널빤지 정보를 갖는다. range가 9이면 현재 9까지 널빤지가 설치된 것이다. 처음에는 설치된 널빤지가 없으니 range는 0이다. 다음 물웅덩이가 3(start)부터 10(end)까지라고 가정해보자. start(3)가 range(0)보다 크므로 range를 start(3..

문제풀이 2023.10.03

[PS] BOJ10159 저울 ( Floyd-warshall ) with JAVA

10159번: 저울 첫 줄에는 물건의 개수 N 이 주어지고, 둘째 줄에는 미리 측정된 물건 쌍의 개수 M이 주어진다. 단, 5 ≤ N ≤ 100 이고, 0 ≤ M ≤ 2,000이다. 다음 M개의 줄에 미리 측정된 비교 결과가 한 줄에 하나씩 www.acmicpc.net ◎ 문제풀이 ( 1의 무게 ) > ( 4의 무게 ) 이고 ( 4의 무게 ) > ( 3의 무게 ) 이면 ( 1의 무게 ) > ( 4의 무게 ) > ( 3의 무게 ) 가 성립된다. 위 관계가 성립되지 않는 것의 개수를 구해야 한다. 1,2,3,4 .. 를 노드로 보고 크고 작음의 관계를 간선으로 한다면 그래프를 떠올릴 수 있다. [Algorithm] 플로이드-워셜(Floyd-Warshall) 알고리즘이란? [Algorithm] 다익스트라 알고..

문제풀이 2023.09.28

[PS] BOJ8980 택배 ( greedy ) with JAVA

8980번: 택배 입력의 첫 줄은 마을 수 N과 트럭의 용량 C가 빈칸을 사이에 두고 주어진다. N은 2이상 2,000이하 정수이고, C는 1이상 10,000이하 정수이다. 다음 줄에, 보내는 박스 정보의 개수 M이 주어진다. M은 1이 www.acmicpc.net ◎ 문제풀이 각 지점에서 트럭이 택배를 싣고 내릴 때, 최대 몇 개의 택배를 전달할 수 있는지 묻는 문제이다. 가장 최적의 상황을 발상하기 어려운 문제였다. 처음에는 시작점을 오름차순하고 그 다음 도착점을 오름차순하여 택배를 트럭에 싣는 방식을 생각했다. 그러나 문제가 있었다. 지점이 1 부터 5까지 있다고 해보자. 1을 시작으로 하고 5를 도착으로 하는 택배는 1부터 5까지 트럭이 이동하는 동안 공간을 차지하고 있게 된다. 이는 최적의 상황..

문제풀이 2023.09.27

[PS] BOJ11066 파일 합치기 ( dp ) with JAVA

11066번: 파일 합치기 소설가인 김대전은 소설을 여러 장(chapter)으로 나누어 쓰는데, 각 장은 각각 다른 파일에 저장하곤 한다. 소설의 모든 장을 쓰고 나서는 각 장이 쓰여진 파일을 합쳐서 최종적으로 소설의 완성본 www.acmicpc.net ◎ 문제풀이 아직까지는 하나의 알고리즘 문제에 다른 알고리즘이 응용되는 문제를 푸는게 쉽지 않은 것 같다. '파일 합치기' 문제도 DP 알고리즘에 누적합 알고리즘을 적용해야 풀리는 문제이다. 파일은 최종적으로 두개의 묶음으로 합쳐진다. dp[i][j]가 i부터 j까지 묶음의 최대값이라고 해보자. > dp[1][5] = dp[1][1] + dp[2][5] + C1 ~ C5까지의 합 > dp[1][5] = dp[1][3] + dp[4][5] + C1 ~ C5..

문제풀이 2023.09.26

[Kubernetes] 우분투 환경에서 클러스터 구성하기(4) - 마스터노드, 워커노드 구성하기

[Kubernetes] 우분투 환경에서 클러스터 구성하기(3) - 넷필터 브릿지 [Kubernetes] 우분투 환경에서 클러스터 구성하기(2) - kubeadm, kubelet, kubectl [Kubernetes] 우분투 환경에서 클러스터 구성하기(1) - 컨테이너D 설치하기 [Kubernetes] Google Cloud에서 VM인스턴스 만들기 [Kubernetes] lordofkangs.tistory.com 지난 포스팅에서 넷필터 브릿지 설정을 완료하였다. 이번 포스팅에서는 본격적으로 쿠버네티스 클러스터를 구성해보겠다. 1) 마스터 노드 생성하기 sudo kubeadm init 마스터 노드로 설정할 노드를 선택하여 sudo kubeadm init 을 입력한다. 성공문구가 뜨면 클러스터에 마스터노드(C..

Ops/Kubernetes 2023.09.26

[Kubernetes] 우분투 환경에서 클러스터 구성하기(3) - 넷필터 브릿지

[Kubernetes] 우분투 환경에서 클러스터 구성하기(2) - kubeadm, kubelet, kubectl [Kubernetes] 우분투 환경에서 클러스터 구성하기(1) - 컨테이너D 설치하기 [Kubernetes] Google Cloud에서 VM인스턴스 만들기 [Kubernetes] GKE 클러스터에서 톰캣 컨테이너 배포 및 외부접속하기 [Kubernetes] 클러 lordofkangs.tistory.com 지난 포스팅까지 kubeadm, kubectl, kubelet 구성까지 완료하였다. 이번 포스팅에서는 넷필터 브릿지 설정을 해보겠다. sudo -i # sudo 권한으로 실행 modprobe br_netfilter # 넷필터 브릿지 모듈 플러그인 echo 1 > /proc/sys/net/ipv..

Ops/Kubernetes 2023.09.25