Skip to content

Instantly share code, notes, and snippets.

@egernst
Created June 19, 2018 03:04
Show Gist options
  • Select an option

  • Save egernst/947812a95b733a3b50d17c31d5dab2c0 to your computer and use it in GitHub Desktop.

Select an option

Save egernst/947812a95b733a3b50d17c31d5dab2c0 to your computer and use it in GitHub Desktop.
echo "Install Utilities"
sudo dnf -y install tc go git wget unzip vim
echo 'export GOPATH="$HOME/go"' | sudo tee -a /etc/profile
echo 'export PATH="$PATH:$GOPATH/bin"' | sudo tee -a /etc/profile
source /etc/profile
VERSION="1.1.0"
echo "Install Containerd ${VERSION}"
wget -q https://storage.googleapis.com/cri-containerd-release/cri-containerd-${VERSION}.linux-amd64.tar.gz
sudo tar -C / -xzf cri-containerd-${VERSION}.linux-amd64.tar.gz
sudo systemctl start containerd
echo "Install k8s binaries"
cat <<EOF | sudo tee /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-\$basearch
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
EOF
sudo setenforce 0
sudo yum install -y kubelet-1.10.* kubeadm kubectl
echo "Setup Kubelet"
cat <<EOF | sudo tee /etc/systemd/system/kubelet.service.d/0-containerd.conf
[Service]
Environment="KUBELET_EXTRA_ARGS=--container-runtime=remote --runtime-request-timeout=15m --container-runtime-endpoint=unix:///run/containerd/containerd.sock"
EOF
sudo modprobe br_netfilter
sudo systemctl daemon-reload && sudo systemctl enable kubelet && sudo systemctl start kubelet
@egernst
Copy link
Author

egernst commented Dec 18, 2018

Ubuntu

sudo modprobe
echo 1 > /proc/sys/net/ipv4/ip_forward

containerd

sudo apt-get update
sudo apt-get install libseccomp2
wget https://storage.googleapis.com/cri-containerd-release/cri-containerd-1.2.1.linux-amd64.tar.gz
sudo tar --no-overwrite-dir -C / -xzf cri-containerd-1.2.1.linux-amd64.tar.gz
sudo systemctl enable containerd
sudo systemctl start containerd

k8s

sudo apt-get update && sudo apt-get install -y apt-transport-https curl
curl -s https://packages.cloud.google.com/apt/doc/apt-key.gpg | apt-key add -
cat <<EOT | sudo tee /etc/apt/sources.list.d/kubernetes.list
deb https://apt.kubernetes.io/ kubernetes-xenial main
EOT
sudo apt-get update
sudo apt-get install -y kubelet kubeadm kubectl
sudo apt-mark hold kubelet kubeadm kubectl

configure

cat <<EOT | sudo tee /etc/systemd/system/kubelet.service.d/0-containerd.conf
[Service]
Environment="KUBELET_EXTRA_ARGS=--container-runtime=remote --runtime-request-timeout=15m --container-runtime-endpoint=unix:///run/containerd/containerd.sock"
EOT

sudo systemctl daemon-reload
sudo systemctl restart kubelet
wget https://raw.githubusercontent.com/clearlinux/cloud-native-setup/master/clr-k8s-examples/kubeadm.yaml

GO GO GO!

sudo -E kubeadm init --config=./kubeadm.yaml

@egernst
Copy link
Author

egernst commented Dec 18, 2018

Kata install / dev setup

ARCH=$(arch)
sudo sh -c "echo 'deb http://download.opensuse.org/repositories/home:/katacontainers:/releases:/${ARCH}:/master/xUbuntu_$(lsb_release -rs)/ /' > /etc/apt/sources.list.d/kata-containers.list"
curl -sL http://download.opensuse.org/repositories/home:/katacontainers:/releases:/${ARCH}:/master/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

curl -O https://storage.googleapis.com/golang/go1.11.2.linux-amd64.tar.gz
tar -xvf go1.11.2.linux-amd64.tar.gz
sudo mv go /usr/local

(edit PATH):
go get github.com/mikefarah/yq
go get github.com/kata-containers/runtime
go get github.com/kata-containers/shim
go get github.com/kata-containers/proxy
go get github.com/kata-containers/agent

readonly runtime_path=$(which ${RUNTIME:-kata-runtime})

sudo mkdir -p /etc/containerd/
cat << EOT | sudo tee /etc/containerd/config.toml
[plugins]
[plugins.cri.containerd]
[plugins.cri.containerd.untrusted_workload_runtime]
runtime_type = "io.containerd.runtime.v1.linux"
runtime_engine = "${runtime_path}"
EOT

git clone https://github.com/fatih/vim-go.git ~/.vim/pack/plugins/start/vim-go

git clone https://github.com/fatih/vim-go.git ~/.vim/bundle/vim-go

@egernst
Copy link
Author

egernst commented Dec 18, 2018

Agent quick update:

sudo pkill firecraker;make; sudo mount ./kata_fire.img ./rootfs/;sudo cp kata-agent ./rootfs/usr/bin/kata-agent;sudo zumount ./rootfs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment