ubuntu

ubuntu18.04にkata containersをインストール

コンテナの軽量さと仮想マシンの堅牢さを兼ね備えているらしい。
https://www.publickey1.jp/blog/17/kata_containersopenstack_foundation.html

公式サイト
https://katacontainers.io/

ubuntuにインストールする方法。
https://github.com/kata-containers/documentation/blob/master/install/ubuntu-installation-guide.md
基本的に↑の公式githubのコマンドをコピペしていけば良い。以下は全部上記サイトのコピペ。ただ、最後にひとつだけトラブルシューティングあり。

まずkata containersのインストール

$ sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/katacontainers:/release/xUbuntu_$(lsb_release -rs)/ /' > /etc/apt/sources.list.d/kata-containers.list"
$ curl -sL  http://download.opensuse.org/repositories/home:/katacontainers:/release/xUbuntu_$(lsb_release -rs)/Release.key | sudo apt-key add -
$ sudo -E apt-get update
$ sudo -E apt-get -y install kata-runtime kata-proxy kata-shim

つぎはDockerを使うかKubernetesを使うかで変わる。私はDockerを使うので、
https://github.com/kata-containers/documentation/blob/master/install/docker/ubuntu-docker-install.md
のインストラクションに従い、以下のようにDockerをインストール(まだインストールしてない場合)。

$ sudo -E apt-get -y install apt-transport-https ca-certificates software-properties-common
$ curl -sL https://download.docker.com/linux/ubuntu/gpg | sudo apt-key add -
$ arch=$(dpkg --print-architecture)
$ sudo -E add-apt-repository "deb [arch=${arch}] https://download.docker.com/linux/ubuntu $(lsb_release -cs) stable"
$ sudo -E apt-get update
$ sudo -E apt-get -y install docker-ce

その後、/etc/docker/daemon.jsonを作成し、以下を書く。

{
  "default-runtime": "kata-runtime",
  "runtimes": {
    "kata-runtime": {
      "path": "/usr/bin/kata-runtime"
    }
  }
}

そして、

$ sudo systemctl daemon-reload
$ sudo systemctl restart docker

で、

$ sudo docker run busybox uname -a

しかし、以下のエラーが出た。

docker: Error response from daemon: OCI runtime create failed: Could not access KVM kernel module: No such file or directory
qemu-lite-system-x86_64: failed to initialize KVM: No such file or directory: unknown.
ERRO[0001] error waiting for container: context canceled 

調べてみると、VT-xというのが無効になっているらしい。これは、Intel virtualization technologyというもので、BIOSの設定で有効化する必要がある。
私の場合は、以下のサイトのとおりにした。
http://d.hatena.ne.jp/iww/20171222/intel_vt

で、再度先程のコマンドを実行すると成功した。

$ sudo docker run busybox uname -a
Unable to find image 'busybox:latest' locally
latest: Pulling from library/busybox
8c5a7da1afbc: Pull complete 
Digest: sha256:cb63aa0641a885f54de20f61d152187419e8f6b159ed11a251a09d115fdff9bd
Status: Downloaded newer image for busybox:latest
Linux 01190d59ba0b 4.14.51-134.container #1 SMP Wed Aug 15 16:27:33 UTC 2018 x86_64 GNU/Linux

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です