728x90
반응형
1. msa 네임스페이스 생성
kubectl create namespace msa
2. 네임스페이스 확인
kubectl get namespaces
root@master:/home/msa/k8s/envirionments/rabbitmq/ingress# kubectl get namespaces
NAME STATUS AGE
argocd Active 15d
calico-apiserver Active 19d
calico-system Active 19d
default Active 19d
harbor Active 8d
ingress-nginx Active 8d
jenkins Active 16d
kube-node-lease Active 19d
kube-public Active 19d
kube-system Active 19d
kubernetes-dashboard Active 16d
msa Active 11s
tigera-operator Active 19d
3. 네임스페이스 변경
kubectl ns msa
root@master:/home/msa/k8s/envirionments/rabbitmq/ingress# kubectl ns msa
Context "kubernetes-admin@kubernetes" modified.
Active namespace is "msa".
4. 디렉토리 구조
리눅스 홈밑에 아래와 같은 구조로 k8s 쿠버네티스 배포 디렉토리 생성
backend와 frontend단은 윈도우 스프링 부트 개발환경이니 제외하고 k8s 관련 폴더 생성
mkdir -p /home/msa/k8s 폴더 만들고 아래와 같은 구조의 폴더 생성
├─backend
│ ├─apigateway
│ ├─board-service
│ ├─config
│ ├─discovery
│ ├─module-common
│ ├─portal-service
│ ├─reserve-check-service
│ ├─reserve-item-service
│ ├─reserve-request-service
│ └─user-service
├─config
├─docker-compose
│ ├─app
│ │ ├─mesh
│ │ └─service
│ ├─elk
│ │ ├─kibana
│ │ │ └─config
│ │ └─logstash
│ │ ├─config
│ │ └─pipeline
│ ├─mysql
│ │ └─init
│ └─opensearch
│ └─logstash
│ ├─config
│ └─pipeline
├─frontend
│ ├─admin
│ │ ├─public
│ │ │ ├─images
│ │ │ └─locales
│ │ ├─server
│ │ ├─src
│ │ │ ├─@types
│ │ │ ├─components
│ │ │ ├─constants
│ │ │ ├─hooks
│ │ │ ├─libs
│ │ │ ├─pages
│ │ │ ├─service
│ │ │ ├─stores
│ │ │ ├─styles
│ │ │ └─utils
│ │ └─test
│ ├─portal
│ │ ├─public
│ │ │ ├─locales
│ │ │ └─styles
│ │ ├─src
│ │ │ ├─@types
│ │ │ ├─components
│ │ │ ├─constants
│ │ │ ├─hooks
│ │ │ ├─libs
│ │ │ │ └─Storage
│ │ │ ├─pages
│ │ │ ├─service
│ │ │ ├─stores
│ │ │ ├─styles
│ │ │ └─utils
│ │ └─test
│ └─practice-image
└─k8s
├─applications
│ ├─backend
│ │ ├─apigateway
│ │ │ └─ingress
│ │ ├─board-service
│ │ ├─config
│ │ ├─discovery
│ │ │ └─ingress
│ │ ├─portal-service
│ │ ├─reserve-check-service
│ │ ├─reserve-item-service
│ │ ├─reserve-request-service
│ │ └─user-service
│ └─frontend
│ ├─admin
│ │ └─ingress
│ └─portal
│ └─ingress
└─environments
├─configmaps
├─databases
│ └─mysql
│ └─init
├─jenkins
├─logging
│ └─elk
│ ├─elasticsearch
│ ├─kibana
│ │ └─ingress
│ └─logstash
├─nfs
├─rabbitmq
│ └─ingress
├─storage
├─vagrant
└─zipkin
└─ingress
디렉토리 설명
- /backend: Spring Boot를 기반으로 백앤드에 올려지는 서비스들
- /backend/apigateway: Microservice에 대한 API 관리 및 모니터링 서비스
- /backend/board-service: 게시판 서비스 (게시판, 게시물, 첨부파일 관리)
- /backend/config: 별도의 통합된 설정 관리 서비스 제공을 통해 환경 독립적 서비스 제공
- /backend/discovery: 마이크로서비스들을 등록하여 관리하고 요청 시 해당 서비스를 찾아 호출
- /backend/user-service: 사용자 서비스 (로그인, 회원가입, 비밀번호 찾기, 관리자)
- /backend/portal-service: 포털 공통 서비스 (메뉴, 코드, 컨텐츠, 권한, 인가, 배너, 첨부파일 관리)
- /backend/reserve-check-service: 예약 확인 서비스
- /backend/reserve-item-service: 예약 물품 서비스
- /backend/reserve-request-service: 예약 신청 서비스
- /config: backend 의 config 서버에서 사용하는 설정 yaml 파일 모음 폴더
- /docker-compose: Docker에 여러 컨테이너의 실행을 관리하는 yaml 구성 파일들
- /frontend/admin: Next.js + Typescript + Material UI 활용한 Admin Dashboard.
- /frontend/portal: Next.js + Typescript 활용한 React 기반 프론트엔드.
- /frontend/practice-image: 배너 이미지
- /k8s: Kubernetes 환경 배포를 위한 Resource 템플릿 yaml 파일
- /k8s/applications: Backend와 Frontend 애플리케이션의 k8s Resource 템플릿 yaml 파일
- /k8s/environments/configmaps: Pods에서 사용하는 환경변수로서 Key-Value 쌍의 형태로 저장된 객체 정의
- /k8s/environments/databases: MySQL 관련 객체 정의
- /k8s/environments/jenkins: Jenkins 관련 객체 정의
- /k8s/environments/logging: Centralized Logging을 위한 ELK 관련 객체 정의
- /k8s/environments/nfs: NFS 노드 볼륨 구성
- /k8s/environments/rabbitmq: Message Broker 관련 객체 정의
- /k8s/environments/storage: PersistentVolumeClaim 정의
- /k8s/environments/vagrant: 가상화 소프트웨어 개발환경의 생성을 쉽게 구성하도록 하는 Vagrant 관련 정의
- /k8s/environments/zipkin: 분산 트랜잭션 추적을 위한 Zipkin 관련 정의
참조화면
백단은 스프링부트로 할것이고 프론트 단은 NextJS로 진행
728x90
반응형
'시스템 > 쿠버네티스' 카테고리의 다른 글
[쿠버네티스] MSA(3) 도메인별 시크릿 키 생성 (0) | 2024.01.25 |
---|---|
[쿠버네티스] MSA(2) nfs공유폴더 설정 (0) | 2024.01.25 |
[쿠버네티스] 젠킨스에서 깃랩전송시 fatal: could not read Username 에러 발생시 (0) | 2024.01.24 |
[쿠버네티스] Argocd TLS/SSL 적용 (0) | 2024.01.24 |
[쿠버네티스] nginx TLS(SSL) 접속 & vhost & proxy 설정 젠킨스 ssl 적용 (0) | 2024.01.23 |
댓글