vagrant 시작하기

📝 1yangsh·2021년 3월 22일
0

kubernetes

목록 보기
2/12
post-thumbnail

Vagrant

가상화 프로그램인 hyper-v, VirtualBox 등의 VM을 생성하고 지우는 작업을 지원해주는 프로그램

vagrant command

  • 상태 정보 확인
    • vagrant status
  • 리눅스 서버 설치
    • Vagrantfile 작성
      ex)
      master노드와 Node1, Node2 생성하기
    Vagrant.configure("2") do |config|
      # Node1
      config.vm.define:"node-1" do |cfg|
        cfg.vm.box = "centos/7"
        cfg.vm.provider:virtualbox do |vb|
            vb.name="node-1"
            vb.customize ["modifyvm", :id, "--cpus", 1]
            vb.customize ["modifyvm", :id, "--memory", 1024]
        end
        cfg.vm.host_name="node1"
        # cfg.vm.synced_folder ".", "/vagrant", type: "nfs"
        cfg.vm.network "private_network", ip: "192.168.56.11"
        cfg.vm.network "forwarded_port", guest: 22, host: 19211, auto_correct: false, id: "ssh"
        cfg.vm.network "forwarded_port", guest: 8080, host: 18080
        cfg.vm.provision "shell", path: "bash_ssh_conf_4_CentOS.sh"
      end

      # Node2
      config.vm.define:"node-2" do |cfg|
        cfg.vm.box = "centos/7"
        cfg.vm.provider:virtualbox do |vb|
            vb.name="node-2"
            vb.customize ["modifyvm", :id, "--cpus", 1]
            vb.customize ["modifyvm", :id, "--memory", 1024]
        end
        cfg.vm.host_name="node2"
        # cfg.vm.synced_folder ".", "/vagrant", type: "nfs"
        cfg.vm.network "private_network", ip: "192.168.56.12"
        cfg.vm.network "forwarded_port", guest: 22, host: 19212, auto_correct: false, id: "ssh"
        cfg.vm.network "forwarded_port", guest: 8080, host: 28080
        cfg.vm.network "forwarded_port", guest: 30234, host: 30234 
        cfg.vm.provision "shell", path: "bash_ssh_conf_4_CentOS.sh"
      end

      # master
      config.vm.define:"master" do |cfg|
        cfg.vm.box = "centos/7"
        cfg.vm.provider:virtualbox do |vb|
            vb.name="master"
            vb.customize ["modifyvm", :id, "--cpus", 2]
            vb.customize ["modifyvm", :id, "--memory", 2048]
        end
        cfg.vm.host_name="master"
        # cfg.vm.synced_folder ".", "/vagrant", type: "nfs"
        cfg.vm.network "private_network", ip: "192.168.56.10"
        cfg.vm.network "forwarded_port", guest: 22, host: 19214, auto_correct: false, id: "ssh"
        cfg.vm.network "forwarded_port", guest: 8080, host: 48080
        cfg.vm.network "forwarded_port", guest: 8001, host: 48001

      end
    end
  • vagrant up

  • 서버 중지

    • vagrant halt <서버 이름>
    • vagrant halt # 서버 전부 중지
  • 서버 기동

    • vagrant up <서버 이름>
    • vagrant up # 서버 전부 기동
  • 서버 삭제

    • vagrant destroy <서버 이름>
  • 서버 접속

    • vagrant ssh <서버 이름>
  • 서버 재실행

    • vagrant reload
  • 호스트 네임 변경

    • sudo vi /etc/hostname
  • ssh 정보 확인

    • vagrant ssh-config <서버 이름>

SSH 연결

  • Xshell 연결
    • 새 세션 등록
      • 이름 : Node1
      • 호스트 : 172.0.0.1
      • 포트 번호 : ssh-config에서 확인
    • 사용자 인증
      • 사용자 이름 : vagrant
      • 방법 : Public key
        • 가져오기 : ssh-config에서 확인
profile
개발 경험 저장소

0개의 댓글