Minikube를 ubuntu19.04에 설치한 이야기 ​​[kvm2이용 · BIOS 화면에서 Virtualization 활성화]

소개



Kubernates를 다룰 가능성이 나왔기 때문에, kubectl 명령 정도는 사락과 만져 두고 싶고, Minikube를 로컬 pc에 넣기로 했습니다.

Minikube 설치에 대해 살펴보면 BIOS 주위의 설정을 할 필요가 있음을 알 수 있습니다.
비쿠비크하면서, 설치하는 일이 없도록 비망록으로서 남겨 둡니다 웃음.

환경/버전 정보


  • Dell xps13 9380
  • Ubuntu19.04 (Disco Dingo)
  • kvm QEMU emulator version 3.1.0 (Debian 1:3.1+dfsg-2ubuntu3.5)
  • minikube version: v1.5.2
  • kubectl Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2"

  • 말하기


  • 아래 준비 (Virtualization 사용)
  • kvm driver 설치
  • Minikube 설치
  • Minikube 시작
  • Minikube 정지/삭제

  • 아래 준비 (Virtualization 사용)


  • 전원 버튼을 누릅니다
  • Dell 로고가 나오면 화면이 바뀔 때까지 F2 키를 반복해서 누릅니다.
  • BIOS 설정 화면에서 아래의 Virtualization에 체크가 되어 있는지 확인


  • kvm driver 설치


    gkz@localhost ~ $ sudo apt install cpu-checker && sudo kvm-ok
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    cpu-checker is already the newest version (0.7-1.1).
    cpu-checker set to manually installed.
    gkz@localhost ~ $ sudo kvm-ok
    INFO: /dev/kvm exists
    KVM acceleration can be used
    gkz@localhost ~ $ sudo apt install libvirt-clients libvirt-daemon-system qemu-kvm \
    >     && sudo usermod -a -G libvirt $(whoami) \
    >     && newgrp libvirt
    Reading package lists... Done
    Building dependency tree       
    Reading state information... Done
    libvirt-clients is already the newest version (5.0.0-1ubuntu2.5).
    libvirt-daemon-system is already the newest version (5.0.0-1ubuntu2.5).
    qemu-kvm is already the newest version (1:3.1+dfsg-2ubuntu3.5).
    0 upgraded, 0 newly installed, 0 to remove and 9 not upgraded.
    
    gkz@localhost ~ $ sudo virt-host-validate
      QEMU: Checking for hardware virtualization                                 : PASS
      QEMU: Checking if device /dev/kvm exists                                   : PASS
      QEMU: Checking if device /dev/kvm is accessible                            : PASS
      QEMU: Checking if device /dev/vhost-net exists                             : PASS
    
    (略)
    
    gkz@localhost ~ $ kvm --version
    QEMU emulator version 3.1.0 (Debian 1:3.1+dfsg-2ubuntu3.5)
    Copyright (c) 2003-2018 Fabrice Bellard and the QEMU Project developers
    
    

    Minikube 설치


    gkz@localhost ~ $ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 \
    >    && sudo install minikube-linux-amd64 /usr/local/bin/minikube
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100 46.3M  100 46.3M    0     0  5699k      0  0:00:08  0:00:08 --:--:-- 7973k
    
    

    Minikube 시작


    gkz@localhost ~ $ minikube start --vm-driver=kvm2
    😄  minikube v1.5.2 on Ubuntu 19.04
    ✨  Automatically selected the 'kvm2' driver (alternates: [none])
    🔥  Creating kvm2 VM (CPUs=2, Memory=2000MB, Disk=20000MB) ...
    🌐  Found network options:
        ▪ NO_PROXY=localhost,127.0.0.0/8,::1
        ▪ no_proxy=localhost,127.0.0.0/8,::1
    🐳  Preparing Kubernetes v1.16.2 on Docker '18.09.9' ...
        ▪ env NO_PROXY=localhost,127.0.0.0/8,::1
        ▪ env NO_PROXY=localhost,127.0.0.0/8,::1
    💾  Downloading kubeadm v1.16.2
    💾  Downloading kubelet v1.16.2
    🚜  Pulling images ...
    🚀  Launching Kubernetes ... 
    ⌛  Waiting for: apiserver
    🏄  Done! kubectl is now configured to use "minikube"
    

    대시보드 열기


    gkz@localhost ~ $ minikube dashboard
    🤔  Verifying dashboard health ...
    🚀  Launching proxy ...
    🤔  Verifying proxy health ...
    🎉  Opening http://127.0.0.1:43933/api/v1/namespaces/kubernetes-dashboard/services/http:kubernetes-dashboard:/proxy/ in your default browser...
    Opening in existing browser session. 
    

    브라우저가 아래와 같이 시작됩니다.





    Minikube의 상태 확인


    # Minikubeを立ち上げる前
    gkz@localhost ~ $ minikube status
    host: 
    kubelet: 
    apiserver: 
    kubeconfig: 
    
    # Minikubeを立ち上げた後
    gkz@localhost ~ $ minikube status
    host: Running
    kubelet: Running
    apiserver: Running
    kubeconfig: Configured
    

    Minikube 정지/삭제


    gkz@localhost ~ $ minikube stop
    ✋  Stopping "minikube" in kvm2 ...
    🛑  "minikube" stopped.
    gkz@localhost ~ $ minikube delete
    🔥  Deleting "minikube" in kvm2 ...
    💔  The "minikube" cluster has been deleted.
    🔥  Successfully deleted profile "minikube"
    
    # まとめて消す方法
    gkz@localhost ~ $ minikube stop; minikube delete
    
    # Minikubeのステータスの確認
    gkz@localhost ~ $ minikube status
    host: 
    kubelet: 
    apiserver: 
    kubeconfig: 
    

    Minikube를 완전히 삭제


    gkz@localhost ~ $ sudo rm /usr/local/bin/minikube 
    [sudo] password for gkz: 
    gkz@localhost ~ $ rm -rf ~/.minikube
    
    # 削除できているか確認
    gkz@localhost ~ $ minikube start -vm-driver=kvm2
    bash: /usr/local/bin/minikube: No such file or directory
    gkz@localhost ~ $ kubectl version
    Client Version: version.Info{Major:"1", Minor:"16", GitVersion:"v1.16.2", GitCommit:"c97fe5036ef3df2967d086711e6c0c405941e14b", GitTreeState:"clean", BuildDate:"2019-10-15T19:18:23Z", GoVersion:"go1.12.10", Compiler:"gc", Platform:"linux/amd64"}
    Error from server (NotFound): the server could not find the requested resource
    gkz@localhost ~ $ minikube version
    bash: /usr/local/bin/minikube: No such file or directory
    

    Minikube 재설치


    gkz@localhost ~ $ curl -LO https://storage.googleapis.com/minikube/releases/latest/minikube-linux-amd64 \
    >     && sudo install minikube-linux-amd64 /usr/local/bin/minikube && rm minikube-linux-amd64
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100 46.3M  100 46.3M    0     0  5463k      0  0:00:08  0:00:08 --:--:-- 5424k
    gkz@localhost ~ $ minikube version
    minikube version: v1.5.2
    commit: 792dbf92a1de583fcee76f8791cff12e0c9440ad-dirty
    

    참고


  • 가상화
  • PC에서 가상화 (VT)를 활성화하는 방법?


  • kvm Minikube 설치
  • Running Kubernetes locally on Linux with Minikube - now with Kubernetes 1.14 support

  • kubectl 설치
     - Install and Set Up kubectl - Kubernetes

  • P.S. Twitter도 하고 있으므로 팔로우해 주시면 울고 기뻐합니다 :)



    @gkzvoice

    #gkz

    좋은 웹페이지 즐겨찾기