Skip to content

Instantly share code, notes, and snippets.

@TerenceLiu98
Last active July 4, 2023 08:48
Show Gist options
  • Save TerenceLiu98/c795d677f97956d4826cd12781c3cfbb to your computer and use it in GitHub Desktop.
Save TerenceLiu98/c795d677f97956d4826cd12781c3cfbb to your computer and use it in GitHub Desktop.
sudo modprobe overlay && sudo modprobe br_netfilter
cat <<EOF | sudo tee /etc/modules-load.d/containerd.conf
overlay
br_netfilter
EOF
cat <<EOF | sudo tee /etc/sysctl.d/99-kubernetes-cri.conf
net.bridge.bridge-nf-call-iptables = 1
net.ipv4.ip_forward = 1
net.bridge.bridge-nf-call-ip6tables = 1
EOF
echo "install containerd"
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://mirrors.bfsu.edu.cn/docker-ce/linux/ubuntu $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo mkdir -p /etc/containerd && sudo containerd config default | sudo tee /etc/containerd/config.toml
echo "install containerd...done"
curl https://mirrors.aliyun.com/kubernetes/apt/doc/apt-key.gpg | sudo apt-key add -
echo 'deb https://mirrors.aliyun.com/kubernetes/apt/ kubernetes-xenial main' | sudo tee -a /etc/apt/sources.list.d/kubernetes.list
sudo apt-get update
sudo apt-get -y install kubelet kubeadm kubectl
echo "install kubelet kubeadm kubectl...done"
echo "start kubelet"
sudo systemctl enable --now kubelet
echo "enable network forwarding"
cat "net."
sudo kubeadm init --pod-network-cidr <pod-cidr> \
--service-cidr <service-cidr> \
--apiserver-advertise-address <your-ip> \
--control-plane-endpoint <your-ip> \
--image-repository registry.cn-hangzhou.aliyuncs.com/google_containers \
--v 5
@TerenceLiu98
Copy link
Author

create a pod:

apiVersion: v1
kind: Pod
metadata:
  name: dig
  namespace: default
spec:
  containers:
    - name: dig
      image:  docker.io/azukiapp/dig
      command:
        - sleep
        - "3600"
      imagePullPolicy: IfNotPresent
  restartPolicy: Always

run sudo kubectl exec -it dig -- dig webhook-service.metallb-system.svc.cluster.local

@TerenceLiu98
Copy link
Author

TerenceLiu98 commented Nov 13, 2022

For K3s control plane:

curl -sfL https://rancher-mirror.oss-cn-beijing.aliyuncs.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn INSTALL_K3S_EXEC="server \
        --node-ip $(ip addr show eth0 | sed -n '/inet /{s/^.*inet \([0-9.]\+\).*$/\1/;p}') \
        --token $(openssl rand --hex 32) \
        --advertise-address $(ip addr show eth0 | sed -n '/inet /{s/^.*inet \([0-9.]\+\).*$/\1/;p}') \
        --node-external-ip $(ip addr show eth0 | sed -n '/inet /{s/^.*inet \([0-9.]\+\).*$/\1/;p}')  \
        --flannel-iface eth0   \
        --node-name $HOSTNAME \
        --cluster-init" sh -

For agent:

curl -sfL https://rancher-mirror.oss-cn-beijing.aliyuncs.com/k3s/k3s-install.sh | INSTALL_K3S_MIRROR=cn INSTALL_K3S_EXEC="agent \
        --server https://<server-ip>:6443 \
        --token <token> \
        --flannel-iface eth0 \
        --node-name $HOSTNAME" sh -

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