drogva

고정 헤더 영역

글 제목

메뉴 레이어

drogva

메뉴 리스트

  • 홈
  • 태그
  • 방명록
  • 분류 전체보기 (23)
    • web-application 시스템 구축 (10)
    • vpn을 활용한 백업데이터센터 구축 (2)
    • LINUX (1)
    • EKS - CI-CD (2)
    • Iac (4)
    • k8s (4)

검색 레이어

drogva

검색 영역

컨텐츠 검색

전체 글

  • nginx-ingress controller 와 베어메탈ip 로 ingress 생성해 보기

    2024.04.29 by drogva

  • 다중 마스터노드 구성 - 로드밸런서를 이용해 구현 하기

    2024.04.29 by drogva

  • 익스터널 etcd 구성

    2024.04.29 by drogva

  • k8s 구축해보기

    2024.04.29 by drogva

  • EKS - jenkins - ArgoCD 인프라 구축 -Terraform -(2)

    2024.04.18 by drogva

  • EKS - jenkins - ArgoCD 인프라 구축 -Terraform

    2024.04.18 by drogva

  • web-was 구축해보기 (nginx-proxy) -(3)

    2024.04.07 by drogva

  • web-was 구축해보기 (nginx-proxy) -(2)

    2024.04.07 by drogva

nginx-ingress controller 와 베어메탈ip 로 ingress 생성해 보기

구축 된 k8s 에 추가해본다. ingress 를 통해야만 외부 user 가 생성된 웹페이지에 접속 할 수 있다. 온프레미스이면 nginx-ingress controller의 svc 형식이 loadbalancer 라면  vm 의 ip 대역대를 공급해 줘야한다.nodePort 형식으로 하면 자동으로 ip 가 연결이 되는데 이번 환경은 production 상태라고 감안해 본다. ㅋ 그래서 필요한 것이 베어메탈 ip 이다. 베어메탈의 ip pool 를 설명하면 자동으로 nginx-ingress controller 의 익스터널 ip 가 설정된다.  결국 nginx-ingress 의 svc IP 를 통해 외부에서 접속 ING -> SVC -> POD 로 접속이 가능하다. -nginx -ingress 설치kubec..

k8s 2024. 4. 29. 12:31

다중 마스터노드 구성 - 로드밸런서를 이용해 구현 하기

- 마스터노드에 대한 부하 분산과 안정성 및 가용성을 위해 구성 (순서)  - keepalived 설치 8443 포트를 개방 vip 가 생성됨  -  haproxy 설치- 개방된 8443 포트를 프론트앤드로 하여 k8s 가 생성된 경우 6443 포트와 포트 포워딩 연결    -콘트롤 플레인 1 :6443   -콘트롤 플레인 2 : 6443  - sudo kubeadm init --control-plane-endpoint 172.30.1.139:8443 --pod-network-cidr=10.244.0.0/16  --upload-certs 8443포트는 프론트앤드 포트이다. 각 마스터노드의 6443 포트가 바인딩된다.  kubeadm join 10.0.1.11:6443 --token qp9ycm.qq06l..

k8s 2024. 4. 29. 11:44

익스터널 etcd 구성

가용성, 안정성 및 마스토노드에 대한 가중화 된 부하 부산 및 etcd 저장파일을 독립하여 안정하게 관리하기위해 분리 1. 독립된 etcd vm을 생성한 후 최소 3개 이상의 홀수 개 etcd vm을 클러스터로 구성한다.2. 클러스터 etcd 리더와 peer(다른 vm) 를 설정한 config.yaml 을  각  etcd vm 에 배포  - 3. vm에서는 config.yaml 을 기반으로 인증서를 생성. 각 vm etcd 클러스터에 속하게 됨을 증명 , pod manifest 가 생성된다.4. 아무 etcd 노드에서는 /etc/pki 에 생성된 etcd-api-server 인증서를 워커노드에 전달5. 워커노드는 etcd api-server 인증성를 기반으로 config.yaml 작성5. kubeadm ..

k8s 2024. 4. 29. 02:43

k8s 구축해보기

●-기본 구축 마스터노드1, 워커노드1 최소사양 cpu 2 GB RAM코어 2Centos 7  -선수조건 ● k8s 가 설치 되는 경우 cri (container runtime interfece) 는 contaierd 와 호환 되므로 모든 노드에 container runtime 은 containerd.service 설치●  마스터 노드에서 워커 노드간의 통신 혹은 vm 환경에서의 콘트롤노드에서 워커노드에 ip 를 통해 명령을 10250 포트를 통해 명령을 지시하기 위해서는 포트포워딩이 필요하다.# sysctl params required by setup, params persist across rebootscat Verify that net.ipv4.ip_forward is set to 1 with:sy..

k8s 2024. 4. 29. 01:54

EKS - jenkins - ArgoCD 인프라 구축 -Terraform -(2)

- argo 도 jenkins 설치와 거의 같다. 그러나 설치 후 수정 사항이 있어 config-map를 편집해야 한다. config-map 수정 후 유저생성, 권한부여가 한 번에 이뤄지면 애러가 발생함. 그리하여 중간에 local 도커 설치, ecr-registry-secret 생성하는 리소스 절차를 기입했다. resource "null_resource" "patch_argo_basehref" { depends_on = [null_resource.create_argo_namespace, null_resource.apply_kubernetes_manifest_ingress-argo] provisioner "local-exec" { command = "kubectl patch configmap argocd..

Iac 2024. 4. 18. 09:58

EKS - jenkins - ArgoCD 인프라 구축 -Terraform

목표: EKS 에서 로드밸런서로 구현한 jenkins, argoCD 인프라 구축 기존에 있던 ROOT 모듈에 bation.tf 작성 - eks가 생성된 후 local 에서 kubeconfig 추가, 기존의 yaml 을 적용 및, 레지스트리 리소스를 사용해 구현 jenkins-values.yaml , argo.yml - terraform-module/release/helm 리소스로 설치 시 템플릿 파일 변수로 사용. 1. ebs 생성 argo, jenkins 설치를 위해선 우선 볼륨이 필요하다. resource "aws_ebs_volume - 리소스를 사용해서 형식만 갖쳐주면 된다. resource "aws_ebs_volume" "jenkins" { availability_zone = "ap-northea..

Iac 2024. 4. 18. 09:30

web-was 구축해보기 (nginx-proxy) -(3)

-eks 에서 자동화 빌드하고 배포해 포기 젠킨슨으로 빌드하고 argo 를 통해 배포해보기 nginx 도커파일은 바로 도커이미지로 빌드 할 수 있으므로 kaniko 를 통해 빌드 jar 파일은 jib 를 통해 빌드 젠킨슨 빠이쁘라인 pipeline { options { timeout(time: 1, unit: 'HOURS') } environment { DOCKER_REPOSITORY = 'xxxxxxxxxxxxx.dkr.ecr.ap-northeast-2.amazonaws.com/drogva' TAG = 'page' KUBE_CREDENTIAL_ID = '5ff9cd68-e734-4bd9-9053-8041ae5f2648' AWS_CLI_PATH = '/var/jenkins_home/aws-cli/v2/c..

web-application 시스템 구축 2024. 4. 7. 00:29

web-was 구축해보기 (nginx-proxy) -(2)

백앤드의 rds 와 연결한 좌바 스프링부트는 앤드포인트 /api/url 에 대한 응답을 수신하면 requet를 출력 할 수 있도록 구성한다. main class (클라이언트 접속 시에 진입점을 담당하는 어플레케이션의 시작을 담당한다) 와 동일한 동일한 디렉토리에ApiController.java 를 작성한다. 동일 디렉토리에 있으면 jar 파일로 빌드되면서 자동으로 스캔이 된다. package cohttp://m.example.demo; import org.springframework.http.HttpStatus; import org.springframework.http.ResponseEntity; import org.springframework.web.bind.annotation.*; @RestContr..

web-application 시스템 구축 2024. 4. 7. 00:15

추가 정보

인기글

최신글

페이징

이전
1 2 3
다음
TISTORY
drogva © Magazine Lab
페이스북 트위터 인스타그램 유투브 메일

티스토리툴바