본문 바로가기

Development(Web, Server, Cloud)/22) LINUX - Cloud90

클라우드 72일차 vagrant 에서 network 지정을 하지 않아도 KVM 과 연결되어 있다면 kvm에서 제공되는 기본 네트워크 (default;virbr0;192.168.122.0/24) 를 자동으로 연결시켜준다. vagrant 에서 제공하는 "private_network"는 변수명이고 사설 네트워크이므로 외부와의 연결은 불가하다. 이 네트워크는 우리가 지정해줄 수 있다. 이걸 또 네트워크를 잘라서 독립적인 사설 네트워크로 만들 수도 있다. 외부에서 인스턴스로 들어오기 위해서는 default network의 NAT 기능을 이용해서 forwarded_port로 작성된 host 포트로 접속하면된다. Vagrantfile에서 privileged 로 해놓은 부분은 root로 실행되는 부분이다. Vagrant의 단점일 수도 .. 2022. 5. 9.
클라우드 71일차 ansible 서버가 노드들에게 docker 을 설치하라는 playbook을 만들어서 전달하게 된다. 그런데 node 들 별로 배포판 정보가 다른것이다. 그러면 모든 node에서 설치가 안될 수 있다. 왜냐하면 명령어가 다르기 때문이다. 그래도 다양한 서비스를 받아들이기 위해서는 각 조건에 맞는 환경을 구축해주어야 한다. 그리고 각 환경에 따른 파일을 나누어 주어야 한다. 1. 재사용성 2. 개발용의(협업) 두가지 장점이 있기 때문이다. 개발시 파일을 나누게 되면 main.yaml을 기반으로 나누어서 개발이 가능해지기 때문에 협업이 가능하게 된다. 또 파일별로 CI/CD 가 가능해진다는 장점도 존재한다. --- vagrant init 을 하면 로컬 저장소/Vagrantfile가 생성된다 (.vagrant.. 2022. 5. 9.
클라우드 70일차(kvm,vagrant, ansible) DC 환경 배포 -> KVM -> instance를 배포하면 VM 들이 배포된다. 문제는 DC에 너무 많은 compute node들이 존재한다. 이들이 관리가 안된다. 그래서 우리가 필요하다고 느끼는 노드에 가서 하이퍼 바이저를 이용하여 VM을 생성하라고 요청을 받으면 하이퍼바이저가 위쪽에 vResource가 할당되고 그 위에 VM이 생성된다. 그래서 전체를 클러스터로 묶고, 전체를 오케스트레이션 하기 위한 도구가 필요해지는데 이 도구를 우리는 controller라고 부른다. 보통 DC에는 노드들이 위치하게 되는데 하나는 compute 노드(HV 노드 : 인스턴스, vNetwork 만듬), Controller를 이용한 오케스트레이션을 한다, 관리자는 controller에 작업지시를 해서 인스턴스에 작업을.. 2022. 5. 3.
클라우드 69일차(aws-정리중, ansible, ????) 어제자에 실행이 잘되었다면 위와같이 인스턴스 두개가 생긴것을 확인할 수 있다. 그리고 클러스터도 보인다. 이렇게 되면 cloudformation 용 맞춤 yaml 파일이 만들어진다. 실재로 템플릿을 확인해보면 ScalingConfig 부분이 위와같이 작성된 것을 확인해볼 수 있다. eksctl(쿠버네티스 관리자) -> 옵션 -> cloudformation(yaml)(클러스터-eks 클러스터 자체, 노드그룹-worker 에 대한 scale 조정을 위한 템플릿) -> 인프라 구현 deployment -> replicas 2 + autoscaler 를 이용하게 되면 최소 개수, 최대 개수(2-5) 지정가능. 이렇게 설정하면 동작중인 두 노드를 중지 시키면? 다시 작동한다. --- aws에서 EKS중 하나의 노.. 2022. 5. 2.