diff --git a/ReadME.MD b/ReadME.MD index 35cf1d9..d74870c 100644 --- a/ReadME.MD +++ b/ReadME.MD @@ -1,20 +1,102 @@ -# Kubernetes 1.22 -cs:~containers/charmed-kubernetes-814 +## 安装 Charm 2.x + +```bash +sudo snap install charm --channel=2.x --classic +``` + +## 基础安装包 + +```bash +charm list-resources cs:~containers/etcd-583 +wget https://api.jujucharms.com/charmstore/v5/~containers/etcd-583/resource/etcd/3 -O etcd.tar.gz + +charm list-resources cs:~containers/easyrsa-373 +wget https://api.jujucharms.com/charmstore/v5/~containers/easyrsa-373/resource/easyrsa/5 -O easyrsa.tar.gz + +charm list-resources cs:~containers/kubernetes-master-990 +wget https://api.jujucharms.com/charmstore/v5/~containers/kubernetes-master-990/resource/cni-amd64/12 -O cni-amd64.tar.gz +wget https://api.jujucharms.com/charmstore/v5/~containers/kubernetes-master-990/resource/cni-arm64/12 -O cni-arm64.tar.gz +wget https://api.jujucharms.com/charmstore/v5/~containers/kubernetes-master-990/resource/cni-s390x/12 -O cni-s390x.tar.gz + +charm list-resources cs:~containers/kubernetes-worker-757 +wget https://api.jujucharms.com/charmstore/v5/~containers/kubernetes-worker-757/resource/cni-amd64/983 -O cni-amd64.tgz +wget https://api.jujucharms.com/charmstore/v5/~containers/kubernetes-worker-757/resource/cni-arm64/974 -O cni-arm64.tgz +wget https://api.jujucharms.com/charmstore/v5/~containers/kubernetes-worker-757/resource/cni-s390x/986 -O cni-s390x.tgz + +charm list-resources cs:~containers/calico-838 +wget https://api.jujucharms.com/charmstore/v5/~containers/calico-812/resource/calico/1027 -O calico.tgz +wget https://api.jujucharms.com/charmstore/v5/~containers/calico-812/resource/calico-arm64/1026 -O calico-arm64.tgz +wget https://api.jujucharms.com/charmstore/v5/~containers/calico-812/resource/calico-node-image/709 -O calico-node-image.tgz +wget https://api.jujucharms.com/charmstore/v5/~containers/calico-812/resource/calico-upgrade/854 -O calico-upgrade.tgz +wget https://api.jujucharms.com/charmstore/v5/~containers/calico-812/resource/calico-upgrade-arm64/854 -O calico-upgrade-arm64.tgz +``` + +## 向 controller 上传资源 + +```bash +juju attach-resource resource-name= +juju attach-resource calico calico=/home/sa/charm/calico/calico-amd64.tar.gz +juju attach-resource calico calico-upgrade=/home/sa/charm/calico/calico-upgrade-amd64.tar.gz +``` + +## Snap Download + +```bash +#!/bin/bash + +set -eux + +SNAP_CHANNEL="1.21/stable" # Need juju 2.9 + +ALL_SNAPS="kube-apiserver kube-scheduler kube-controller-manager kube-proxy kubectl kubelet cdk-addons" +MASTER_SNAPS="kube-apiserver kube-scheduler kube-controller-manager kube-proxy kubectl cdk-addons" +WORKER_SNAPS="kube-proxy kubelet kubectl" + +# Download Juju 2.9 +snap download --channel=2.9 juju + +# Download latest snaps from designated channel +for snap in $ALL_SNAPS +do + snap download --channel=$SNAP_CHANNEL $snap +done + +# Attach new snaps to master units +for snap in $MASTER_SNAPS +do + juju attach kubernetes-master $snap=`ls ${snap}_*.snap` +done + +# Attach new snaps to worker units +for snap in $WORKER_SNAPS +do + juju attach kubernetes-worker $snap=`ls ${snap}_*.snap` +done + +# Upgrade to new snaps on masters, one at a time +for unit in `juju status --format json | jq -r '.applications|.["kubernetes-master"].units | keys[]'` +do + juju run-action $unit upgrade --wait +done + +# Upgrade to new snaps on workers, one at a time +for unit in `juju status --format json | jq -r '.applications|.["kubernetes-worker"].units | keys[]'` +do + juju run-action $unit upgrade --wait +done +``` + +## Final Release + +需要手动做 Fix ```Bash -charm pull cs:~containers/etcd-633 -charm pull cs:~containers/easyrsa-419 -charm pull cs:~containers/kubernetes-master-1077 -charm pull cs:~containers/kubernetes-worker-815 -charm pull cs:~containers/containerd-177 -charm pull cs:~containers/kata-138 -charm pull cs:~containers/calico-838 -charm pull cs:~containers/flannel-596 -# Extend -charm pull cs:~containers/kubeapi-load-balancer-843 -charm pull cs:~containers/keepalived-110 -charm pull cs:~containers/coredns-20 -# Other -charm pull cs:~containers/ubuntu-20 -charm pull cs:~containers/nrpe-75 +https://raw.githubusercontent.com/charmed-kubernetes/bundle/main/releases/1.21/bundle.yaml +charm pull cs:~containers/containerd-146 +charm pull cs:~containers/easyrsa-395 +charm pull cs:~containers/etcd-607 +charm pull cs:~containers/kubernetes-master-1034 +charm pull cs:~containers/kubernetes-worker-788 +charm pull cs:~containers/calico-812 +charm pull cs:~containers/kubeapi-load-balancer-814 ``` \ No newline at end of file