国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

容器和云原生(三):kubernetes搭建與使用

這篇具有很好參考價值的文章主要介紹了容器和云原生(三):kubernetes搭建與使用。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

? ? ? ?

目錄

單機K8S

docker

containerd

image依賴

kubeadm初始化

驗證

crictl工具

K8S核心組件


上文安裝單機docker是很簡單docker,但是生產(chǎn)環(huán)境需要多個主機,主機上啟動多個docker容器,相同容器會綁定形成1個服務(wù)service,微服務(wù)場景中多個service會互相調(diào)用,那么就需要保證多個service服務(wù)的編排、高可用、負(fù)載均衡,docker提供了自己的解決方案:docker-compose + docker-swarm,也可以不用docker提供的解決方案,自己通過Nginx+服務(wù)網(wǎng)關(guān)+HaProxy實現(xiàn)。

? ? ? ? 但是基本上所有線上生產(chǎn)環(huán)境都是用K8S來服務(wù)治理,這也被認(rèn)為是標(biāo)準(zhǔn)答案,K8S從V1.24版本不支持docker而是contained做為默認(rèn)容器管理,contained實際上是輕量化的docker,本次搭建k8s+containerd的集群,因此k8s多節(jié)點集群相對繁瑣且有資源要求,本次單機搭建。

單機K8S

????????2022年k8s的1.24版本正式剔除dockershim,不再支持讓docker去調(diào)用containerd,而是直接操作containerd,先安裝containerd來替換CRI接口調(diào)用,本次使用最新版本v1.28.0;

容器和云原生(三):kubernetes搭建與使用,# 容器和云原生,云原生,kubernetes,容器

?容器和云原生(三):kubernetes搭建與使用,# 容器和云原生,云原生,kubernetes,容器

docker

安裝docker用于后續(xù)依賴?image拉??;

containerd

# 下載 containerd
wget https://github.com/containerd/containerd/releases/download/v1.6.19/containerd-1.6.19-linux-amd64.tar.gz
# 下載contained服務(wù)
wget https://raw.githubusercontent.com/containerd/containerd/main/containerd.service -o /usr/lib/systemd/system/containerd.service
# 啟動服務(wù)
systemctl daemon-reload && systemctl enable containerd
# 配置文件
mkdir /etc/containerd
containerd config default > /etc/containerd/config.toml
# 需要鏡像地址為國內(nèi)的
vi /etc/containerd/config.toml
將 sandbox_image = "registry.k8s.io/pause:3.6"
修改為 sandbox_image = "registry.cn-hangzhou.aliyuncs.com/google_containers/pause:3.6"
# 配置鏡像加速器,在 [plugins."io.containerd.grpc.v1.cri".registry.mirrors] 后面增加兩行配置,注意縮進
[plugins."io.containerd.grpc.v1.cri".registry.mirrors]
  [plugins."io.containerd.grpc.v1.cri".registry.mirrors."docker.io"]
    endpoint = ["http://mirrors.ustc.edu.cn"]
  [plugins."io.containerd.grpc.v1.cri".registry.mirrors."*"]
    endpoint = ["http://hub-mirror.c.163.com"]
# 啟動服務(wù)
systemctl restart containerd

image依賴

kubeadm:用來初始化集群的指令,kubelet在集群中的每個節(jié)點上用來啟動 Pod 和容器等,kubectl:用來與集群通信的命令行工具,步驟中的docker image安裝可以不用;

# 關(guān)閉selinux
setenforce 0
# 增加yum源
vi /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://mirrors.aliyun.com/kubernetes/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=0
repo_gpgcheck=0
gpgkey=http://mirrors.aliyun.com/kubernetes/yum/doc/yum-key.gpg
 http://mirrors.aliyun.com/kubernetes/yum/doc/rpm-package-key.gpg
# yum 安裝
yum makecache all
yum install -y kubelet kubeadm kubectl
# 啟動kubelet
systemctl enable kubelet && systemctl start kubelet
# docker依賴安裝(可選)
vi install.sh
#!/bin/bash
images=(
    kube-apiserver:v1.28.0
    kube-controller-manager:v1.13.2
    kube-scheduler:v1.28.0
    kube-proxy:v1.28.0
    pause:3.6
    etcd:3.2.24
    coredns:1.2.6
)
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
# 運行install.sh(可選)
sh -x install.sh
# 查看鏡像(可選)
docker images
REPOSITORY                           TAG                 IMAGE ID            CREATED             SIZE
k8s.gcr.io/kube-apiserver            v1.28.0             bb5e0dde9054        2 days ago          126 MB
k8s.gcr.io/kube-controller-manager   v1.28.0             4be79c38a4ba        2 days ago          122 MB
k8s.gcr.io/kube-scheduler            v1.28.0             f6f496300a2a        2 days ago          60.1 MB
k8s.gcr.io/kube-proxy                v1.28.0             ea1030da44aa        2 days ago          73.1 MB
docker.io/becivells/soar-web         latest              93daf9d511a1        11 months ago       134 MB
k8s.gcr.io/coredns                   1.2.6               f59dcacceff4        4 years ago         40 MB
k8s.gcr.io/etcd                      3.2.24              3cab8e1b9802        4 years ago         220 MB
k8s.gcr.io/pause                     3.1                 da86e6ba6ca1        5 years ago         742 kB

# 網(wǎng)絡(luò)
vi /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1

kubeadm初始化

# 使用root啟動設(shè)置環(huán)境變量
export KUBECONFIG=/etc/kubernetes/admin.conf
# 初始化
kubeadm init --apiserver-advertise-address=10.121.198.235 --image-repository registry.aliyuncs.com/google_containers --kubernetes-version=v1.28.0   --service-cidr=172.96.0.0/12 --pod-network-cidr=10.244.0.0/16

驗證

# 查看集群信息
kubectl cluster-info
Kubernetes control plane is running at https://10.121.198.235:6443
CoreDNS is running at https://10.121.198.235:6443/api/v1/namespaces/kube-system/services/kube-dns:dns/proxy

# 查看pod信息
get pod -n kube-system
NAME                                            READY   STATUS    RESTARTS   AGE
coredns-66f779496c-d4rk9                        1/1     Running   0          71m
coredns-66f779496c-fvmzn                        1/1     Running   0          71m
etcd-localhost.localdomain                      1/1     Running   0          71m
kube-apiserver-localhost.localdomain            1/1     Running   0          71m
kube-controller-manager-localhost.localdomain   1/1     Running   0          71m
kube-proxy-tr75q                                1/1     Running   0          71m
kube-scheduler-localhost.localdomain            1/1     Running   0          71m

crictl工具

# 安裝 containerd 的 cli 管理工具(此步驟是非必選項)
# 官方文檔https://github.com/kubernetes-sigs/cri-tools/blob/master/docs/crictl.md
# 下載解壓
wget https://github.com/kubernetes-sigs/cri-tools/releases/download/v1.26.0/crictl-v1.26.0-linux-amd64.tar.gz
tar zxvf crictl-v1.26.0-linux-amd64.tar.gz -C /usr/local/bin
# 創(chuàng)建配置文件,運行 crictl config 命令可獲取參數(shù)說明
cat <<EOF | sudo tee /etc/crictl.yaml
runtime-endpoint: unix:///run/containerd/containerd.sock
image-endpoint: unix:///run/containerd/containerd.sock
timeout: 2
debug: false
pull-image-on-create: false
disable-pull-on-run: false
EOF
# 測試
crictl pods
POD ID              CREATED             STATE               NAME                                            NAMESPACE           ATTEMPT             RUNTIME
c9f1f5a8e5f3b       About an hour ago   Ready               coredns-66f779496c-fvmzn                        kube-system         0                   (default)
92acc7d225059       About an hour ago   Ready               coredns-66f779496c-d4rk9                        kube-system         0                   (default)
2fdff0229921a       About an hour ago   Ready               kube-proxy-tr75q                                kube-system         0                   (default)
8cad99418e8dd       About an hour ago   Ready               kube-apiserver-localhost.localdomain            kube-system         0                   (default)
2f366285dbe4e       About an hour ago   Ready               kube-controller-manager-localhost.localdomain   kube-system         0                   (default)
ab2fb7aa95e40       About an hour ago   Ready               kube-scheduler-localhost.localdomain            kube-system         0                   (default)
c25f77697cc84       About an hour ago   Ready               etcd-localhost.localdomain                      kube-system         0                   (default)

K8S核心組件

待續(xù)

參考:搭建containerd+k8s集群-v1.26

參考:安裝docker依賴文章來源地址http://www.zghlxwxcb.cn/news/detail-667331.html

到了這里,關(guān)于容器和云原生(三):kubernetes搭建與使用的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如若轉(zhuǎn)載,請注明出處: 如若內(nèi)容造成侵權(quán)/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領(lǐng)支付寶紅包贊助服務(wù)器費用

相關(guān)文章

  • 云原生之深入解析如何正確計算Kubernetes容器CPU使用率

    使用 Prometheus 配置 kubernetes 環(huán)境中 Container 的 CPU 使用率時,會經(jīng)常遇到 CPU 使用超出 100%,現(xiàn)在來分析一下: container_spec_cpu_period:當(dāng)對容器進行 CPU 限制時,CFS 調(diào)度的時間窗口,又稱容器 CPU 的時鐘周期通常是 100000 微秒 container_spec_cpu_quota:是指容器的使用 CPU 時間周期總量

    2024年02月10日
    瀏覽(37)
  • 【云原生】Kubernetes臨時容器

    特性狀態(tài): Kubernetes v1.25 [stable] 本頁面概述了臨時容器:一種特殊的容器,該容器在現(xiàn)有 Pod 中臨時運行,以便完成用戶發(fā)起的操作,例如故障排查。 你會使用臨時容器來檢查服務(wù),而不是用它來構(gòu)建應(yīng)用程序 Pod 是 Kubernetes 應(yīng)用程序的基本構(gòu)建塊。 由于 Pod 是一次性且可替

    2024年02月15日
    瀏覽(56)
  • 【云原生】Kubernetes容器編排工具

    【云原生】Kubernetes容器編排工具

    目錄 1. K8S介紹 1.1 k8s的由來 下載地址 1.2 docker編排與k8s編排相比 1.3 傳統(tǒng)后端部署與k8s 的對比 傳統(tǒng)部署 k8s部署? ?2. k8s的集群架構(gòu)與組件 (1) Kube-apiserver (2)Kube-controller-manager? (3)Kube-scheduler?? 2.2?k8s的配置存儲中心 2.3? k8s的Node 組件? ?(1)Kubelet? ?(2)Kube-Proxy?

    2024年02月10日
    瀏覽(23)
  • 【云原生】容器編排工具Kubernetes

    【云原生】容器編排工具Kubernetes

    目錄 一、 K8S介紹 官網(wǎng)地址: 1.1docker編排與k8s編排相比 1.2特性 1.3功能 二、K8S重要組件 2.1核心組件 (1)Kube-apiserver (2)Kube-controller-manager (3)Kube-scheduler (4)Node ①kubelet ②kube-proxy ③docker (5)etcd 2.2Kubernetes工作原理 三、Pod 3.1 Pod控制器 (1)Deployment (2)ReplicaSet (3)

    2024年02月09日
    瀏覽(32)
  • 云原生、容器化、Kubernetes、微服務(wù)

    作者:禪與計算機程序設(shè)計藝術(shù) 云原生(Cloud Native)是一個開放且社區(qū)驅(qū)動的項目,它定義了一組架構(gòu)原則、最佳實踐和工具集,這些原則、實踐和工具圍繞業(yè)務(wù)需求和工程實踐而設(shè)計,可用于開發(fā)人員在構(gòu)建和運行分布式系統(tǒng)時更加順暢地交付可靠的軟件。云原生可以幫助

    2024年02月07日
    瀏覽(27)
  • 【云原生】kubernetes中容器的資源限制

    【云原生】kubernetes中容器的資源限制

    目錄 1 metrics-server 2 指定內(nèi)存請求和限制 3 指定 CPU 請求和限制 資源限制 在k8s中對于容器資源限制主要分為以下兩類: 內(nèi)存資源限制: 內(nèi)存 請求 (request)和內(nèi)存 限制 (limit)分配給一個容器。 我們保障容器擁有它請求數(shù)量的內(nèi)存,但不允許使用超過限制數(shù)量的內(nèi)存。 官網(wǎng)參

    2024年02月14日
    瀏覽(24)
  • 云原生Kubernetes:CRI 容器運行時接口

    云原生Kubernetes:CRI 容器運行時接口

    目錄 一、理論 1.?CRI 2.容器運行時層級 3.容器運行時比較 二、總結(jié) (1)概念 ? ? ? Kubernetes Node (kubelet) 的主要功能就是啟動和停止容器的組件,我們 稱之為容器運行時( Container Runtime) ,其中最知名的就是 Docker 。為了 更具擴展性, Kubernetes 1.5 版本開始就加入了容器運行

    2024年02月09日
    瀏覽(27)
  • 【云原生|Kubernetes】08-Pod中的Init容器

    Init 容器是一種特殊容器,在 Pod內(nèi)的應(yīng)用容器啟動之前運行。Init 容器可以包括一些應(yīng)用鏡像中不存在的實用工具和安裝腳本。 你可以在 Pod 的spec中與用來描述應(yīng)用容器的 containers 數(shù)組平行的位置指定 Init 容器。 Init 容器的狀態(tài)在 status.initContainerStatuses 字段中以容器狀態(tài)數(shù)組

    2024年02月09日
    瀏覽(50)
  • 【云原生-深入理解Kubernetes-1】容器的本質(zhì)是進程

    【云原生-深入理解Kubernetes-1】容器的本質(zhì)是進程

    大家好,我是秋意零。 ?? CSDN作者主頁 ?? 博客主頁 ?? 簡介 ?? 普通本科生在讀 在校期間參與眾多計算機相關(guān)比賽,如:?? “省賽”、“國賽” ,斬獲多項獎項榮譽證書 ?? 各個平臺, 秋意零/秋意臨 賬號創(chuàng)作者 ?? 云社區(qū) 創(chuàng)建者 點贊、收藏+關(guān)注下次不迷路! 歡迎加

    2024年02月02日
    瀏覽(29)
  • 云原生小疑問 ?? - Kubernetes 下重啟容器會丟失數(shù)據(jù)嗎?

    在 docker 環(huán)境下,容器重啟后還是原來的容器,數(shù)據(jù)并沒有丟失。那是不是 k8s 環(huán)境下,重啟也不會丟失呢? 在kubernetes/RainBond環(huán)境下, 最小化的管理單元是 Pod 。 對 Pod 的重啟,本質(zhì)上是先刪除,然后啟動新的容器 。所以原本容器中的數(shù)據(jù)會丟失。 java程序中一般如下數(shù)據(jù)需

    2024年04月25日
    瀏覽(26)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領(lǐng)取紅包,優(yōu)惠每天領(lǐng)

二維碼1

領(lǐng)取紅包

二維碼2

領(lǐng)紅包