当前位置 博文首页 > 文章内容

    【Baetyl】国内环境安装

    作者: 栏目:未分类 时间:2020-08-14 11:01:13

    本站于2023年9月4日。收到“大连君*****咨询有限公司”通知
    说我们IIS7站长博客,有一篇博文用了他们的图片。
    要求我们给他们一张图片6000元。要不然法院告我们

    为避免不必要的麻烦,IIS7站长博客,全站内容图片下架、并积极应诉
    博文内容全部不再显示,请需要相关资讯的站长朋友到必应搜索。谢谢!

    另祝:版权碰瓷诈骗团伙,早日弃暗投明。

    相关新闻:借版权之名、行诈骗之实,周某因犯诈骗罪被判处有期徒刑十一年六个月

    叹!百花齐放的时代,渐行渐远!



    Docker

    /etc/docker/daemon.json中添加/修改:

    {
        "exec-opts": ["native.cgroupdriver=systemd"],
        "registry-mirrors": ["https://docker.mirrors.ustc.edu.cn/"],
    }
    

    重启Docker

    安装 k8s

    # 安装 kubeadm kubectl kubelet
    gpg --keyserver keyserver.ubuntu.com --recv-keys BA07F4FB
    gpg --export --armor BA07F4FB | sudo apt-key add -
    echo "deb https://mirrors.tuna.tsinghua.edu.cn/kubernetes/apt kubernetes-xenial main" > /etc/apt/sources.list.d/kubernetes.list 
    apt update
    apt install kubeadm kubectl kubelet
    
    # 查看指定k8s版本需要哪些镜像
    kubeadm config images list --kubernetes-version v1.18.3
    

    终端输出:

    k8s.gcr.io/kube-apiserver:v1.18.3                                                                                                                                          k8s.gcr.io/kube-controller-manager:v1.18.3
    k8s.gcr.io/kube-scheduler:v1.18.3
    k8s.gcr.io/kube-proxy:v1.18.3
    k8s.gcr.io/pause:3.2
    k8s.gcr.io/etcd:3.4.3-0
    k8s.gcr.io/coredns:1.6.7
    

    新建脚本get-k8s-images.sh 并替换版本号:

    #!/bin/bash
    
    images=(
        kube-apiserver:v1.18.3
        kube-controller-manager:v1.18.3
        kube-scheduler:v1.18.3
        kube-proxy:v1.18.3
        pause:3.2
        etcd:3.4.3-0
        coredns:1.6.7
    )
    
    for imageName in ${images[@]} ; do
        docker pull registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName
        docker tag registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName k8s.gcr.io/$imageName
        docker rmi registry.cn-hangzhou.aliyuncs.com/google_containers/$imageName
    done
    

    执行get-k8s-images.sh 以便从国内hub获取镜像。修改kubelet配置中的默认cgroup driver:

    cat > /var/lib/kubelet/config.yaml <<EOF
    apiVersion: kubelet.config.k8s.io/v1beta1
    kind: KubeletConfiguration
    cgroupDriver: systemd
    EOF
    systemctl restart kubelet
    

    启动k8s:

    kubeadm init --pod-network-cidr=10.244.0.0/16 --kubernetes-version=v1.18.3
    

    启动完毕后有后续步骤的相关提示,具体操作为配置$HOME/.kube/config

    mkdir -p $HOME/.kube
    sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
    sudo chown $(id -u):$(id -g) $HOME/.kube/config
    

    添加网络组件(Flannel):

    wget https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
    kubectl apply -f kube-flannel.yml
    

    添加本地存储支持:

    wget https://raw.githubusercontent.com/rancher/local-path-provisioner/master/deploy/local-path-storage.yaml
    kubectl create -f local-path-storage.yaml
    

    设置该存储为默认存储:

    kubectl patch storageclass local-path -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
    

    安装Baetyl

    官方文档

    在安装边缘节点时报错:

    curl -d "{\"name\":\"demo-node\"}" -H "Content-Type: application/json" -X POST http://0.0.0.0:30004/v1/nodes
    {"code":"UnknownError","message":"nodes.cloud.baetyl.io \"demo-node\" is forbidden: User \"system:serviceaccount:default:baetyl-cloud\" cannot get resource \"nodes\" in API group \"cloud.baetyl.io\" in the namespace \"baetyl-cloud\"","requestId":""}