真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

基于Ubuntu20.04如何安裝MicroK8s1.20.2

這篇文章給大家分享的是有關(guān)基于Ubuntu 20.04如何安裝MicroK8s 1.20.2的內(nèi)容。小編覺得挺實(shí)用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

成都創(chuàng)新互聯(lián)專注于鹽津企業(yè)網(wǎng)站建設(shè),響應(yīng)式網(wǎng)站設(shè)計,商城網(wǎng)站定制開發(fā)。鹽津網(wǎng)站建設(shè)公司,為鹽津等地區(qū)提供建站服務(wù)。全流程按需網(wǎng)站建設(shè),專業(yè)設(shè)計,全程項(xiàng)目跟蹤,成都創(chuàng)新互聯(lián)專業(yè)和態(tài)度為您提供的服務(wù)

MicroK8s是目前最小、最快與Kubernetes全面兼容的集群系統(tǒng),主要用于工作站和小型團(tuán)隊(duì),但是目前鏡像并沒有與snap打包在一起,還在gcr.io上,國內(nèi)下載上還是有問題。MicroK8s適合離線開發(fā)、原型開發(fā)和測試,尤其是運(yùn)行VM作為小、便宜、可靠的k8s用于CI/CD。支持arm架構(gòu),也適合開發(fā) IoT 應(yīng)用,通過 MicroK8s 部署應(yīng)用到小型Linux設(shè)備上。

1、安裝MicroK8s

通過snap進(jìn)行安裝:

sudo snap install microk8s --classic

試一下:

microk8s status

#輸出如下
microk8s is running
high-availability: no
  datastore master nodes: 127.0.0.1:19001
  datastore standby nodes: none
addons:
  enabled:
    dashboard            # The Kubernetes dashboard
    DNS                  # CoreDNS
    ha-cluster           # Configure high availability on the current node
    ingress              # Ingress controller for external access
    metallb              # Loadbalancer for your Kubernetes cluster
    metrics-server       # K8s Metrics Server for API access to service metrics
    storage              # Storage class; allocates storage from host directory
  disabled:
    ambassador           # Ambassador API Gateway and Ingress
    cilium               # SDN, fast with full network policy
    fluentd              # Elasticsearch-Fluentd-Kibana logging and monitoring
    gpu                  # Automatic enablement of Nvidia CUDA
    helm                 # Helm 2 - the package manager for Kubernetes
    helm3                # Helm 3 - Kubernetes package manager
    host-access          # Allow Pods connecting to Host services smoothly
    istio                # Core Istio service mesh services
    jaeger               # Kubernetes Jaeger operator with its simple config
    keda                 # Kubernetes-based Event Driven Autoscaling
    knative              # The Knative framework on Kubernetes.
    kubeflow             # Kubeflow for easy ML deployments
    linkerd              # Linkerd is a service mesh for Kubernetes and other frameworks
    multus               # Multus CNI enables attaching multiple network interfaces to pods
    portainer            # Portainer UI for your Kubernetes cluster
    prometheus           # Prometheus operator for monitoring and logging
    rbac                 # Role-Based Access Control for authorisation
    registry             # Private image registry exposed on localhost:32000
    traefik              # traefik Ingress controller for external access

準(zhǔn)備Microk8s需要的鏡像:

MicroK8s的Kubernetes基礎(chǔ)服務(wù)是通過systemd的多個服務(wù)來提供的(參考/etc/systemd/system目錄下的服務(wù)名稱)。但是目前(1.20.2)的pause服務(wù)(3.0)還是在gcr.io上,因此需要單獨(dú)抓取下來離線部署,否則就會出現(xiàn)各種服務(wù)運(yùn)行正常,但是kubelet服務(wù)運(yùn)行時出錯的情況。

#針對Microk8s 1.20.2

MY_REGISTRY=registry.cn-hangzhou.aliyuncs.com/google_containers

microk8s ctr images pull ${MY_REGISTRY}/pause:3.1
microk8s ctr images tag ${MY_REGISTRY}/pause:3.1 k8s.gcr.io/pause:3.1

microk8s ctr images pull docker.io/pollyduan/ingress-nginx-controller:v0.35.0
microk8s ctr images tag docker.io/pollyduan/ingress-nginx-controller:v0.35.0 k8s.gcr.io/ingress-nginx/controller:v0.35.0

microk8s ctr images pull docker.io/faizanofc/metrics-server-amd64:v0.3.6
microk8s ctr images tag docker.io/faizanofc/metrics-server-amd64:v0.3.6 k8s.gcr.io/metrics-server-amd64:v0.3.6

2、安裝基礎(chǔ)服務(wù)

安裝dns和本地存儲服務(wù):

microk8s dns storage

安裝gpu支持:

microk8s enable gpu

3、安裝metallb服務(wù)

metallb提供一個本地的LoadBalancer服務(wù),可以自動分配IP給服務(wù),從而讓外部可以訪問。

  • 為私有Kubernetes集群創(chuàng)建LoadBalancer服務(wù)

microk8s enable metallb
3.1 配置

接下來我們要生成一個 Configmap 文件,為 Metallb 設(shè)置網(wǎng)址范圍以及協(xié)議相關(guān)的選擇和配置,這里以一個簡單的二層配置為例:

apiVersion: v1kind: ConfigMapmetadata:  namespace: metallb-system  name: configdata:  config: |    address-pools:    - name: my-ip-space      protocol: layer2      addresses:      - 10.211.55.240/28

注意:這里的 IP 地址范圍需要跟集群實(shí)際情況相對應(yīng)。

使用 kubectl apply 命令應(yīng)用之后,使用 microk8s.kubectl logs -f [metallb-controller-pod] 會看到配置更新過程。

3.2 使用測試

創(chuàng)建一個 Nginx 的服務(wù),服務(wù)類型為 LoadBalancer

apiVersion: apps/v1beta2kind: Deploymentmetadata:  name: nginxspec:  selector:    matchLabels:      app: nginx  template:    metadata:      labels:        app: nginx    spec:      containers:      - name: nginx        image: nginx:1        ports:        - name: http          containerPort: 80---apiVersion: v1kind: Servicemetadata:  name: nginxspec:  ports:  - name: http    port: 80    protocol: TCP    targetPort: 80  selector:    app: nginx  type: LoadBalancer

4、安裝Dashboard

4.1 安裝

microk8s enable dashboard

4.2 配置服務(wù)

配置dashboard服務(wù)可以外部訪問,可以是proxy、NodePort、LoadBalancer。我還是喜歡用NodePort,把ClusterType改為NodePort,然后port部分增加一個30000-32768之間的端口號。如下:

microk8s.kubectl edit svc/dashboard -n kube-system

如果編輯有問題,先安裝vim。

sudo apt install vim

再執(zhí)行上面的kubectl edit命令,按 i 進(jìn)入編輯模式,esc 退出,按 : 進(jìn)入命令行,按 wq寫入后退出,強(qiáng)制退出按q!。

  • 關(guān)于暴露服務(wù)到外部訪問,有多種方法:

    • Nodeport、Loadbalancer和Ingress,https://my.oschina.net/u/2306127/blog/1647202

4.3 獲取服務(wù)端口

microk8s.kubectl get svc -n kube-system

根據(jù)上面顯示的dashboard的外部端口,輸入瀏覽器。

4.4 獲取token

通過下面的方法獲取登錄的token:

token=$(microk8s kubectl -n kube-system get secret | grep default-token | cut -d " " -f1)
microk8s kubectl -n kube-system describe secret $token

然后,在dashboard中選擇使用token登錄,并把上面的token復(fù)制到輸入框中,出現(xiàn)dashboard界面。

5、安裝KubeFlow

執(zhí)行:

microk8s enable kubeflow

最后失敗,安裝回滾。

  • 安裝KubeFlow時出現(xiàn)問題,跟蹤該issue:

    • https://github.com/ubuntu/microk8s/issues/958

    • https://github.com/kubeflow/manifests/issues/1761

  • 在安裝過程中,我使用Jupyter創(chuàng)建了服務(wù)和notebook,發(fā)現(xiàn)microk8s命令不能在notebook中執(zhí)行。確認(rèn)是路徑的問題,如下即可:

%%bash
export PATH=$PATH:/snap/bin/
microk8s status

或者將/snap/bin加入到啟動時的profile之中。

感謝各位的閱讀!關(guān)于“基于Ubuntu 20.04如何安裝MicroK8s 1.20.2”這篇文章就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!


網(wǎng)頁名稱:基于Ubuntu20.04如何安裝MicroK8s1.20.2
網(wǎng)站路徑:http://weahome.cn/article/igjddj.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部