日韩精品一区二区三区在线视频放-无码中文字幕V?一区二区-成年片免费观看视频-国内少妇人妻丰满av-国产精品中文字幕免费观看-亚洲成人久久一区二区三区-国内少妇偷人精品视频无缓冲-一区二区国产精品日本一区二区三区在线网

ARTICLE DETAIL

資訊詳情

深耕商務(wù)建站與企業(yè)官網(wǎng)運(yùn)營的一線實(shí)戰(zhàn)洞察。

kubeadm安裝Kubernetes 1.37并集成Docker運(yùn)行時(shí)教程

kubeadm安裝Kubernetes 1.37并集成Docker運(yùn)行時(shí)教程 這次我們來看一個(gè)用 kubeadm 安裝最新 Kubernetes 集群的完整過程目標(biāo)版本是 k8s 1.37.x并且讓底層容器運(yùn)行時(shí)真正走 Docker。這里需要先把背景說清楚Kubernetes 從 1.24 開始移除了內(nèi)置 dockershimK8s 高版本不再直接內(nèi)置 Docker 支持。如果想在 1.37.x 繼續(xù)使用 Docker Engine正確做法是安裝 cri-dockerd 適配器讓 kubelet 通過 CRI 接口與 Docker 通信。整篇文章會(huì)給出從環(huán)境準(zhǔn)備到集群驗(yàn)證的完整命令同時(shí)對這個(gè)方案背后的原理做說明方便你判斷哪種運(yùn)行時(shí)更適合自己的項(xiàng)目。適用讀者主要是這幾類第一公司服務(wù)器上已經(jīng)大量使用 Docker想把業(yè)務(wù)平滑遷移到 Kubernetes第二正在學(xué)習(xí) K8s想對比 containerd 與 Docker 在集群中的行為差異第三需要一個(gè)可復(fù)現(xiàn)的 kubeadm 安裝步驟把集群搭出來給開發(fā)或測試環(huán)境用。本文不會(huì)花太多篇幅講 Kubernetes 基礎(chǔ)概念而是直接圍繞部署鏈路展開所以如果你已經(jīng)知道 Deployment、Service、Pod 的基本含義理解起來會(huì)更快。對完全沒接觸過 K8s 的讀者先把這套安裝跑通再回來看概念文檔效果也會(huì)比空談概念好很多。部署細(xì)節(jié)上我會(huì)以 Ubuntu 22.04 作為示例系統(tǒng)過程中會(huì)同步給出 Rocky Linux / CentOS 等發(fā)行版的差異說明。硬件方面測試環(huán)境建議至少兩個(gè)節(jié)點(diǎn)master 2 核 4Gworker 2 核 4G系統(tǒng)盤 40G 以上。如果只是單機(jī)學(xué)習(xí)也可以把 master 和 worker 放在同一臺機(jī)器但需要處理 master 節(jié)點(diǎn)的 taint這部分我會(huì)在功能驗(yàn)證時(shí)提到。下面先從整體能力開始給出一張快速判斷表。1. 核心能力速覽能力項(xiàng)說明集群安裝工具kubeadm、kubelet、kubectl底層容器運(yùn)行時(shí)Docker Engine通過 cri-dockerd 適配 CRI目標(biāo)版本Kubernetes 1.37.x具體以官方軟件倉庫實(shí)際提供為準(zhǔn)節(jié)點(diǎn)組成至少 1 個(gè) master 和 1 個(gè) worker單機(jī)測試時(shí)可合并推薦硬件Master 2C4G 以上Worker 按業(yè)務(wù)負(fù)載評估操作系統(tǒng)Ubuntu 22.04/24.04、Rocky Linux 9、CentOS 7/9 等主流 Linux 發(fā)行版網(wǎng)絡(luò)方案Flannel、Calico、Cilium 等 CNI 插件任選一種API 能力kube-apiserver 提供完整 REST APIkubectl 和 HTTP 客戶端都能調(diào)用批量任務(wù)原生支持 Deployment、StatefulSet、Job、CronJob 等工作負(fù)載適用場景生產(chǎn)集群搭建、容器化應(yīng)用遷移、Docker 生態(tài)兼容性驗(yàn)證、K8s 學(xué)習(xí)上表最需要關(guān)注的是“底層容器運(yùn)行時(shí)”這一行。Docker 并不是一個(gè)能直接接入 Kubernetes 高版本的 CRI 實(shí)現(xiàn)因此一旦你決定“底層走 Docker”就等于在 kubelet 和 Docker Engine 之間增加了一個(gè)適配組件 cri-dockerd。這個(gè)組件會(huì)帶來少量額外管理和資源開銷但能讓你繼續(xù)使用熟悉的 docker ps、docker logs、docker exec 等命令排查集群里的容器這是很多從 Docker 遷移過來的運(yùn)維團(tuán)隊(duì)比較看重的一點(diǎn)。2. 為什么 K8s 與 Docker 之間多了一層適配在 Kubernetes 的設(shè)計(jì)里每個(gè)節(jié)點(diǎn)上的 kubelet 只通過 CRIContainer Runtime Interface與容器運(yùn)行時(shí)通信。早期版本內(nèi)置了 dockershim讓 kubelet 可以直接操作 Docker但在 1.24 版本后這個(gè) shim 被徹底移除官方推薦直接使用 containerd 或 CRI-O。很多用戶還想繼續(xù)使用 Docker主要原因是團(tuán)隊(duì)已有的鏡像倉庫里可能全是 Docker 構(gòu)建的鏡像或者從 Docker Compose 遷移到 Kubernetes 的過程中希望底層行為和 Docker 保持一致方便對照排查。cri-dockerd 就是為這個(gè)場景準(zhǔn)備的適配器。它實(shí)現(xiàn)了 Kubernetes 的 CRI 接口把 kubelet 發(fā)出的請求轉(zhuǎn)換成 Docker API 調(diào)用最終由 Docker Engine 完成容器生命周期管理。數(shù)據(jù)鏈路大致是這樣的kubelet - CRI 調(diào)用 - cri-dockerd - Docker API - dockerd - containerd - runc - 容器進(jìn)程安裝 cri-dockerd 之后kubelet 通過unix:///var/run/cri-dockerd.sock這個(gè) socket 與它通信而不是默認(rèn)的unix:///var/run/containerd/containerd.sock。kubeadm init 和 kubeadm join 時(shí)需要顯式指定 cri socket這一點(diǎn)非常關(guān)鍵否則 kubeadm 會(huì)優(yōu)先去尋找 containerd導(dǎo)致集群雖然裝好了但底層還是 containerd和你預(yù)想的不一致。還有一個(gè)必須處理的點(diǎn)是 cgroup 驅(qū)動(dòng)。Kubernetes 控制面和 kubelet 默認(rèn)傾向于使用 systemd cgroup driver而 Docker 安裝后默認(rèn)可能是 cgroupfs。如果兩者不一致節(jié)點(diǎn)會(huì)一直處于 NotReady 狀態(tài)或者 Pod 調(diào)度后報(bào)錯(cuò)。下文安裝 Docker 時(shí)會(huì)直接修改 daemon.json把 Docker 的 cgroup driver 固定為 systemd。這也意味著這套方案并不是“裝完就能跑”需要在配置層面做好對齊。3. 節(jié)點(diǎn)規(guī)劃與環(huán)境準(zhǔn)備3.1 節(jié)點(diǎn)規(guī)劃開始安裝前先確認(rèn)節(jié)點(diǎn)和網(wǎng)絡(luò)條件。這里給出一個(gè)兩節(jié)點(diǎn)測試環(huán)境作為示例生產(chǎn)環(huán)境可根據(jù)業(yè)務(wù)規(guī)模擴(kuò)展。節(jié)點(diǎn)角色主機(jī)名IP 示例配置建議masterk8s-master192.168.1.102C4G 以上workerk8s-worker1192.168.1.112C4G 以上按業(yè)務(wù)評估所有節(jié)點(diǎn)都需要有固定的主機(jī)名并且/etc/hosts中最好寫入包含其他節(jié)點(diǎn)的 IP 映射避免 DNS 解析問題。3.2 關(guān)閉 swap 與加載內(nèi)核模塊kubelet 默認(rèn)不允許節(jié)點(diǎn)使用 swap。測試環(huán)境直接關(guān)掉最省事避免后續(xù)參數(shù)不一致sudo swapoff -a sudo sed -i / swap / s/^/#/ /etc/fstab然后加載 Kubernetes 需要的內(nèi)核模塊并調(diào)整網(wǎng)絡(luò)轉(zhuǎn)發(fā)參數(shù)cat EOF | sudo tee /etc/modules-load.d/k8s.conf overlay br_netfilter EOF sudo modprobe overlay sudo modprobe br_netfilter cat EOF | sudo tee /etc/sysctl.d/k8s.conf net.bridge.bridge-nf-call-iptables 1 net.bridge.bridge-nf-call-ip6tables 1 net.ipv4.ip_forward 1 EOF sudo sysctl --system如果不加載br_netfilter常見的現(xiàn)象是 Flannel 或 Calico 容器啟動(dòng)后網(wǎng)絡(luò)策略和流量轉(zhuǎn)發(fā)異常節(jié)點(diǎn)狀態(tài)倒是 Ready但跨節(jié)點(diǎn) Pod 通信不通。所以這步不要跳過。3.3 防火墻與端口規(guī)劃各節(jié)點(diǎn)之間需要放行 Kubernetes 組件通信端口。如果使用云廠商安全組或者本機(jī)啟用 firewalld / ufw需要按下面這張表精確放行端口協(xié)議用途6443TCPkube-apiserver所有節(jié)點(diǎn)訪問10250TCPkubelet 指標(biāo)、日志、exec10259TCPkube-scheduler10257TCPkube-controller-manager2379/2380TCPetcd 客戶端和集群通信30000-32767TCP/UDPNodePort 服務(wù)訪問內(nèi)網(wǎng)測試環(huán)境如果節(jié)點(diǎn)彼此信任可以臨時(shí)關(guān)閉防火墻來減少變量但生產(chǎn)環(huán)境建議精確放行端口不要直接關(guān)閉防火墻。3.4 設(shè)置主機(jī)名在 master 節(jié)點(diǎn)執(zhí)行sudo hostnamectl set-hostname k8s-master在 worker 節(jié)點(diǎn)執(zhí)行sudo hostnamectl set-hostname k8s-worker1同時(shí)在所有節(jié)點(diǎn)的/etc/hosts中加入192.168.1.10 k8s-master 192.168.1.11 k8s-worker14. 安裝 Docker 與 cri-dockerd4.1 安裝 Docker Engine以 Ubuntu 22.04 為例安裝 Docker 官方源的常用步驟是sudo apt-get update sudo apt-get install -y ca-certificates curl gnupg sudo install -m 0755 -d /etc/apt/keyrings curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg sudo chmod ar /etc/apt/keyrings/docker.gpg echo \ deb [arch$(dpkg --print-architecture) signed-by/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \ $(. /etc/os-release echo $VERSION_CODENAME) stable | \ sudo tee /etc/apt/sources.list.d/docker.list /dev/null sudo apt-get update sudo apt-get install -y docker-ce docker-ce-cli containerd.io docker-buildx-plugin docker-compose-plugin安裝完成后創(chuàng)建一個(gè)/etc/docker/daemon.json把 cgroup driver 固定為 systemd同時(shí)設(shè)置日志輪轉(zhuǎn)避免容器日志無限增長sudo mkdir -p /etc/docker cat EOF | sudo tee /etc/docker/daemon.json { exec-opts: [native.cgroupdriversystemd], log-driver: json-file, log-opts: { max-size: 100m }, storage-driver: overlay2 } EOF sudo systemctl enable docker sudo systemctl restart docker這里必須確認(rèn) docker 服務(wù)正常sudo systemctl status docker docker info | grep -i cgroup輸出應(yīng)該能看到Cgroup Driver: systemd。4.2 安裝 cri-dockerdcri-dockerd 是 Mirantis 維護(hù)的開源適配器GitHub 倉庫名為Mirantis/cri-dockerd。安裝方式是下載 release 二進(jìn)制放到/usr/local/bin再注冊 systemd 服務(wù)。版本以官方 Releases 頁面為準(zhǔn)我這里以 v0.3.16 作為示例版本號wget https://github.com/Mirantis/cri-dockerd/releases/download/v0.3.16/cri-dockerd-0.3.16.amd64.tgz tar -xvf cri-dockerd-0.3.16.amd64.tgz sudo install -o root -g root -m 0755 cri-dockerd /usr/local/bin/cri-dockerd然后創(chuàng)建兩個(gè) systemd 文件。第一個(gè)是 cri-docker.socketsudo tee /etc/systemd/system/cri-docker.socket EOF [Unit] DescriptionCRI Docker Socket for the API PartOfcri-docker.service [Socket] ListenStream%t/cri-dockerd.sock SocketMode0660 SocketUserroot SocketGrouproot [Install] WantedBysockets.target EOF第二個(gè)是 cri-docker.servicesudo tee /etc/systemd/system/cri-docker.service EOF [Unit] DescriptionCRI Interface for Docker Application Container Engine Documentationhttps://docs.mirantis.com Afterdocker.service Requiresdocker.service [Service] Typenotify ExecStart/usr/local/bin/cri-dockerd --container-runtime-endpoint fd:// Restartalways RestartSec10 StartLimitInterval0 StartLimitBurst5 [Install] WantedBymulti-user.target EOF啟動(dòng)并設(shè)置開機(jī)自啟sudo systemctl daemon-reload sudo systemctl enable cri-docker.socket cri-docker.service sudo systemctl start cri-docker.socket cri-docker.service驗(yàn)證 socket 是否存在ls -l /var/run/cri-dockerd.sock sudo systemctl status cri-docker.socket cri-docker.service到這里Docker 底層已經(jīng)通過 cri-dockerd 暴露出了 CRI 接口。kubelet 使用這個(gè) socket 就能把 Pod 的創(chuàng)建請求交給 Docker Engine 處理。5. 安裝 kubeadm、kubelet、kubectl安裝 kubeadm、kubelet、kubectl 的方式通常通過官方軟件倉庫。以 Ubuntu/Debian 為例使用 pkgs.k8s.io 的 v1.37 倉庫sudo apt-get update sudo apt-get install -y apt-transport-https ca-certificates curl gpg curl -fsSL https://pkgs.k8s.io/core:/stable:/v1.37/deb/Release.key | sudo gpg --dearmor -o /etc/apt/keyrings/kubernetes-apt-keyring.gpg echo deb [signed-by/etc/apt/keyrings/kubernetes-apt-keyring.gpg] https://pkgs.k8s.io/core:/stable:/v1.37/deb/ / | sudo tee /etc/apt/sources.list.d/kubernetes.list sudo apt-get update sudo apt-get install -y kubelet kubeadm kubectl sudo apt-mark hold kubelet kubeadm kubectl如果你的倉庫里還沒有提供 1.37.x 的完整版本可以用下面的命令查看可安裝的版本列表apt-cache madison kubeadmRHEL/Rocky/CentOS 的倉庫寫法稍有不同cat EOF | sudo tee /etc/yum.repos.d/kubernetes.repo [kubernetes] nameKubernetes baseurlhttps://pkgs.k8s.io/core:/stable:/v1.37/rpm/ enabled1 gpgcheck1 gpgkeyhttps://pkgs.k8s.io/core:/stable:/v1.37/rpm/repodata/repomd.xml.key excludekubelet kubeadm kubectl EOF sudo setenforce 0 sudo sed -i s/^SELINUXenforcing$/SELINUXpermissive/ /etc/selinux/config sudo yum install -y kubelet kubeadm kubectl --disableexcludeskubernetesRHEL 系列需要把 SELinux 設(shè)成 permissive否則 CNI 插件創(chuàng)建 veth 口時(shí)會(huì)受到限制。安裝完成后三個(gè)組件會(huì)自動(dòng)注冊 systemd 服務(wù)但kubelet現(xiàn)在先不要啟動(dòng)因?yàn)榧哼€沒初始化kubelet 啟動(dòng)后只會(huì)反復(fù)報(bào)錯(cuò)等待配置文件。等 kubeadm init 結(jié)束后再啟動(dòng)。6. 初始化 Master 節(jié)點(diǎn)6.1 準(zhǔn)備初始化參數(shù)到了最關(guān)鍵的一步。由于我們要讓底層運(yùn)行時(shí)走 Dockerkubeadm init必須帶上--cri-socketunix:///var/run/cri-dockerd.sock否則 kubeadm 自動(dòng)探測 CRI 時(shí)很可能找到 containerd導(dǎo)致后續(xù)集群雖然能用但容器實(shí)際由 containerd 管理。下面給出兩種初始化方式。第一種直接用命令行參數(shù)sudo kubeadm init \ --kubernetes-versionv1.37.x \ --apiserver-advertise-address192.168.1.10 \ --pod-network-cidr10.244.0.0/16 \ --cri-socketunix:///var/run/cri-dockerd.sock \ --image-repository registry.aliyuncs.com/google_containers注意v1.37.x要替換成你倉庫里看到的實(shí)際版本號比如v1.37.2。如果網(wǎng)絡(luò)能正常訪問 K8s 官方鏡像倉庫可以不加--image-repository如果拉鏡像比較慢或失敗再考慮使用國內(nèi)鏡像倉庫。第二種方式把參數(shù)寫入 kubeadm 配置文件。以 kubeadm.k8s.io/v1beta4 為例部分實(shí)際版本字段需要按你的 kubeadm 版本調(diào)整apiVersion: kubeadm.k8s.io/v1beta4 kind: InitConfiguration localAPIEndpoint: advertiseAddress: 192.168.1.10 bindPort: 6443 nodeRegistration: criSocket: unix:///var/run/cri-dockerd.sock name: k8s-master --- apiVersion: kubeadm.k8s.io/v1beta4 kind: ClusterConfiguration kubernetesVersion: 1.37.x networking: podSubnet: 10.244.0.0/16保存為kubeadm-config.yaml后執(zhí)行sudo kubeadm init --configkubeadm-config.yaml6.2 配置 kubectl初始化成功后末尾會(huì)輸出一段配置 kubectl 的命令。復(fù)制到 shell 里執(zhí)行mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config然后確認(rèn)集群組件狀態(tài)kubectl get nodes kubectl get pods -A這里會(huì)遇到一個(gè)正常的現(xiàn)象Node 可能是 NotReady很多系統(tǒng) PodCoreDNS顯示 Pending。原因不是集群壞了而是還沒有安裝 CNI 網(wǎng)絡(luò)插件。6.3 安裝 CNI 網(wǎng)絡(luò)插件CNI 負(fù)責(zé) Pod 網(wǎng)絡(luò)不裝的話節(jié)點(diǎn)無法變成 Ready。這里以 Flannel 為例因?yàn)樗鼘?Pod CIDR 的默認(rèn)配置正好是10.244.0.0/16和上面的初始化參數(shù)匹配kubectl apply -f https://raw.githubusercontent.com/flannel-io/flannel/master/Documentation/kube-flannel.yml如果使用 Calico則把--pod-network-cidr192.168.0.0/16寫入初始化參數(shù)再應(yīng)用 Calico 的 manifest。安裝后等待 1-2 分鐘kubectl get nodes -o wide kubectl get pods -A | grep -E flannel|calico當(dāng) master 節(jié)點(diǎn)狀態(tài)變成 Ready并且 CNI Pod 都處于 Running說明集群控制面已經(jīng)可用。7. 加入 Worker 節(jié)點(diǎn)kubeadm init成功時(shí)終端會(huì)輸出一條 join 命令類似sudo kubeadm join 192.168.1.10:6443 --token token \ --discovery-token-ca-cert-hash sha256:hash \ --cri-socketunix:///var/run/cri-dockerd.sock這里必須把--cri-socket補(bǔ)上否則 worker 節(jié)點(diǎn)的 kubelet 會(huì)去找 containerd和 master 使用的運(yùn)行時(shí)不一致雖然也可能加入成功但后續(xù)排查時(shí)會(huì)多一層問題。如果當(dāng)時(shí)沒復(fù)制 join 命令可以在 master 節(jié)點(diǎn)重新生成 tokensudo kubeadm token create --print-join-command拿到 token 后在 worker 節(jié)點(diǎn)執(zhí)行 join 命令。執(zhí)行完畢后回到 master 節(jié)點(diǎn)查看kubectl get nodes -o wide正常情況下master 和 worker 都應(yīng)該是 Ready 狀態(tài)。如果 worker 一直 NotReady先看 worker 節(jié)點(diǎn) kubelet 狀態(tài)systemctl status kubelet journalctl -u kubelet -f8. 功能測試與效果驗(yàn)證8.1 驗(yàn)證節(jié)點(diǎn)和系統(tǒng) Pod集群搭建完成后第一件事是確認(rèn)所有節(jié)點(diǎn) Ready并且所有kube-system命名空間下的 Pod 都處于 Runningkubectl get nodes kubectl get pods -A這個(gè)步驟能判斷集群組件是否健康。如果某個(gè) system Pod 反復(fù)重啟優(yōu)先看它的日志kubectl logs -n kube-system pod-name8.2 部署一個(gè)測試應(yīng)用為了驗(yàn)證業(yè)務(wù)調(diào)度和 Service 暴露創(chuàng)建一個(gè)簡單的 Nginx DeploymentapiVersion: apps/v1 kind: Deployment metadata: name: nginx-test spec: replicas: 2 selector: matchLabels: app: nginx-test template: metadata: labels: app: nginx-test spec: containers: - name: nginx image: nginx:1.27 ports: - containerPort: 80 --- apiVersion: v1 kind: Service metadata: name: nginx-test-svc spec: type: NodePort selector: app: nginx-test ports: - port: 80 targetPort: 80 nodePort: 30080保存為nginx-test.yaml并應(yīng)用kubectl apply -f nginx-test.yaml kubectl get deployment nginx-test kubectl get pods -o wide kubectl get svc nginx-test-svc然后通過任意節(jié)點(diǎn)的30080端口訪問測試服務(wù)。如果訪問不到先查 Service 和 Endpointskubectl describe svc nginx-test-svc kubectl get endpoints nginx-test-svc8.3 驗(yàn)證底層確實(shí)走 Docker這是本文方案的關(guān)鍵驗(yàn)證點(diǎn)。在任意節(jié)點(diǎn)上執(zhí)行docker ps --format table {{.Names}}\t{{.Image}}\t{{.Status}} | grep k8s_只要看到容器名帶k8s_前綴就說明這個(gè)節(jié)點(diǎn)的 Pod 容器確實(shí)由 Docker 創(chuàng)建和管理。再用 crictl 驗(yàn)證同一個(gè)視圖cat EOF | sudo tee /etc/crictl.yaml runtime-endpoint: unix:///var/run/cri-dockerd.sock image-endpoint: unix:///var/run/cri-dockerd.sock EOF sudo crictl pscrictl ps會(huì)列出 Kubernetes 視角下的容器列表。如果 Docker 和 crictl 都能看到相同容器說明這層適配鏈路是通的kubelet - cri-dockerd - Docker Engine - 容器如果 crictl 報(bào)錯(cuò)找不到 socket多半是 cri-dockerd 服務(wù)沒起來或者/etc/crictl.yaml的配置沒有生效。8.4 驗(yàn)證擴(kuò)容和滾動(dòng)更新Kubernetes 的日常操作驗(yàn)證可以先擴(kuò)容看 Pod 分布kubectl scale deployment nginx-test --replicas5 kubectl get pods -o wide再做一個(gè)原地滾動(dòng)更新鏡像標(biāo)簽kubectl set image deployment/nginx-test nginxnginx:1.27-alpine kubectl rollout status deployment/nginx-test最后看日志是否能正常輸出kubectl logs -l appnginx-test --tail109. 接口 API 與批量任務(wù)示例9.1 通過 kubectl proxy 調(diào)用 APIKubernetes 的 kube-apiserver 暴露了一整套 REST API日??吹降氖?kubectl 封裝。你可以開啟一個(gè)本地代理直接用 curl 調(diào)用kubectl proxy --port8080 然后請求 APIcurl http://127.0.0.1:8080/api/v1/namespaces/default/pods返回結(jié)果是 JSON 格式的 Pod 列表。這里可以用一個(gè)小腳本提取 Pod 名稱curl -s http://127.0.0.1:8080/api/v1/namespaces/default/pods | \ python3 -c import sys, json; datajson.load(sys.stdin); print(\n.join([item[metadata][name] for item in data[items]]))如果需要更完整的授權(quán)方式推薦使用 ServiceAccount token。這就涉及到 RBAC 配置生產(chǎn)環(huán)境不建議直接使用kubectl proxy給外部系統(tǒng)調(diào)用只適合本地調(diào)試。9.2 用 CronJob 做批量任務(wù)Kubernetes 原生支持 Job 和 CronJob適合批量處理和定時(shí)任務(wù)。下面這個(gè)示例每天凌晨兩點(diǎn)執(zhí)行一次歸檔操作apiVersion: batch/v1 kind: CronJob metadata: name: batch-archive-job spec: schedule: 0 2 * * * jobTemplate: spec: template: spec: containers: - name: archive image: busybox:1.36 command: [/bin/sh, -c, echo batch job at $(date); ls /data] restartPolicy: OnFailure應(yīng)用并查看執(zhí)行記錄kubectl apply -f cronjob.yaml kubectl get cronjob kubectl get jobs --watch批量任務(wù)的重點(diǎn)是給容器配置足夠的資源限制和超時(shí)避免某個(gè)異常任務(wù)一直占住節(jié)點(diǎn)資源。生產(chǎn)級批量框架還可以搭配 Argo Workflows 或 Volcano但基礎(chǔ)的 CronJob 對很多運(yùn)維場景已經(jīng)夠用。10. 資源占用與性能觀察10.1 控制面組件資源占用master 節(jié)點(diǎn)部署了 kube-apiserver、etcd、kube-controller-manager、kube-scheduler再加上 kubelet 和 Docker / cri-dockerd即使不跑業(yè)務(wù)也會(huì)占一部分內(nèi)存。從低負(fù)載測試集群的經(jīng)驗(yàn)看空閑狀態(tài)下這些組件常駐內(nèi)存加起來在 1.5GB 到 2.5GB 之間具體數(shù)值與集群規(guī)模、日志量、etcd 數(shù)據(jù)量有關(guān)實(shí)際以你的環(huán)境為準(zhǔn)。建議 master 節(jié)點(diǎn)不要低于 4G 內(nèi)存否則初始化過程中容易出現(xiàn)一次拉起多個(gè)鏡像失敗的情況。觀察命令如下free -h docker stats --no-stream crictl stats kubectl top node注意kubectl top node需要先安裝 metrics-server。如果是臨時(shí)查看節(jié)點(diǎn)資源直接在節(jié)點(diǎn)上執(zhí)行free -h和docker stats更直接。10.2 Docker cri-dockerd 與 containerd 的差異相比直接在節(jié)點(diǎn)上使用 containerd這套方案多了一層 cri-dockerd 適配器因此 CPU 和內(nèi)存占用會(huì)略高一些。優(yōu)勢是運(yùn)維習(xí)慣不變你可以用 docker exec 進(jìn)入任意容器排查用 docker logs 拉取標(biāo)準(zhǔn)輸出鏡像構(gòu)建和 Docker Compose 遷移也更順暢。劣勢是容器的創(chuàng)建路徑更長大規(guī)模高并發(fā)創(chuàng)建 Pod 時(shí)性能會(huì)有輕微損耗。如果集群規(guī)模在幾十個(gè)節(jié)點(diǎn)以內(nèi)這個(gè)差異通常感知不明顯。如果集群會(huì)擴(kuò)展到幾百個(gè)節(jié)點(diǎn)或者對 Pod 啟動(dòng)速度和資源占用有極致要求建議考慮 containerd 作為運(yùn)行時(shí)。選擇哪種運(yùn)行時(shí)本質(zhì)上是運(yùn)維習(xí)慣和性能效率之間的取舍。10.3 與網(wǎng)絡(luò)插件配合時(shí)的資源觀察CNI 組件同樣會(huì)占用節(jié)點(diǎn)資源。以 Flannel 為例每個(gè)節(jié)點(diǎn)都會(huì)運(yùn)行一個(gè) flanneld 進(jìn)程負(fù)責(zé)維護(hù) vxlan 網(wǎng)絡(luò)。如果節(jié)點(diǎn)數(shù)量很多或者 Pod 流量很大可以觀察 flannel 進(jìn)程的 CPU 和內(nèi)存ps aux | grep flanneld如果發(fā)現(xiàn) CNI 組件異常消耗內(nèi)存優(yōu)先檢查節(jié)點(diǎn)是否出現(xiàn)了大量 Pod 重建以及網(wǎng)絡(luò)策略是否過于復(fù)雜。11. 常見問題與排查方法問題現(xiàn)象可能原因排查方式解決方案kubeadm init 拉鏡像失敗網(wǎng)絡(luò)無法訪問鏡像倉庫或鏡像倉庫地址不通查看 init 輸出日志確認(rèn)鏡像名稱使用--image-repository指定可訪問的鏡像倉庫節(jié)點(diǎn)一直 NotReadyCNI 未安裝或 kubelet 與運(yùn)行時(shí)通信異常kubectl get nodesjournalctl -u kubelet -f安裝 Flannel/Calico檢查 cri socket 配置CoreDNS Pod 反復(fù) CrashLoopBackOff網(wǎng)絡(luò)插件未就緒或容器運(yùn)行時(shí)異常kubectl logs -n kube-system coredns-pod等待網(wǎng)絡(luò)插件就緒重啟 CoreDNS DeploymentPod 調(diào)度后容器創(chuàng)建失敗cgroup driver 不一致docker info | grep Cgroupkubelet 配置統(tǒng)一為 systemd修改 daemon.json 后重啟 dockercri-dockerd.sock 不存在cri-dockerd 服務(wù)沒啟動(dòng)systemctl status cri-docker.socket cri-docker.service啟動(dòng)服務(wù)檢查 ExecStart 路徑是否正確kubeadm join 找不到 K8s API Servertoken 過期或端口不通在 master 執(zhí)行kubeadm token list檢查 6443 端口重新生成 token或放行防火墻端口NodePort 無法訪問Service 類型不是 NodePort或防火墻未放行 30000-32767kubectl get svcss -lntp | grep 30080修改 Service 類型或在安全組放行 NodePort 段kubectl logs卡住無輸出kubelet 與 apiserver 網(wǎng)絡(luò)異?;蛉萜饕淹顺鰇ubectl describe pod檢查節(jié)點(diǎn) 10250 端口確認(rèn)節(jié)點(diǎn)間網(wǎng)絡(luò)排查 kubelet 狀態(tài)集群 Pod IP 在不同節(jié)點(diǎn)間不通CNI 插件異?;?bridge-nf-call-iptables 未開啟sysctl net.bridge.bridge-nf-call-iptables查看 CNI 日志重新執(zhí)行 sysctl 配置重啟 CNI Pod業(yè)務(wù)容器重啟頻率很高資源限制過低或健康檢查失敗kubectl describe pod查看 OOMKilled 狀態(tài)調(diào)高資源 limits或調(diào)整 liveness/readiness 探針排查 Kubernetes 問題時(shí)最重要的兩個(gè)命令是kubectl describe和日志查看。很多表面現(xiàn)象比如 Pod 一直 Pending、Node 狀態(tài) NotReady、Service 不通最后都能在 describe 輸出和系統(tǒng)組件日志里找到直接原因。12. 最佳實(shí)踐與使用建議12.1 第一次部署先小參數(shù)驗(yàn)證不要一上來就鋪幾十個(gè)節(jié)點(diǎn)。先在兩個(gè)節(jié)點(diǎn)上跑通整套流程確認(rèn) Docker、cri-dockerd、kubeadm 的版本匹配關(guān)系再逐步增加節(jié)點(diǎn)。尤其是 cri-dockerd 版本和 Docker 版本之間最好以官方 Release 說明為準(zhǔn)。沒有驗(yàn)證過的新版本先在小環(huán)境里跑幾天再考慮上生產(chǎn)。12.2 模型文件、鏡像、配置文件分目錄管理集群運(yùn)維中建議把 kubeadm 配置、CNI manifest、業(yè)務(wù) YAML 分目錄存放。比如/opt/k8s/ └── manifests/ ├── kubeadm-config.yaml ├── cni/ └── apps/這樣升級集群、排查配置差異時(shí)能快速找到對應(yīng)文件也方便用 git 做版本管理。12.3 批量任務(wù)要加日志和失敗重試Kubernetes 原生 Job 的重試策略有限。如果是重要批量任務(wù)建議在應(yīng)用層實(shí)現(xiàn)失敗重試并把日志寫入持久化存儲(chǔ)。CronJob 也建議設(shè)置startingDeadlineSeconds避免調(diào)度堆積時(shí)產(chǎn)生大量并發(fā) Job。12.4 安全與合規(guī)提醒部署 Kubernetes 集群時(shí)組件和鏡像應(yīng)該只從官方或可信來源獲取不要使用來路不明的二進(jìn)制和容器鏡像尤其是涉及生產(chǎn)數(shù)據(jù)和用戶隱私時(shí)。集群中如果運(yùn)行人臉、聲音、版權(quán)素材等敏感數(shù)據(jù)的處理任務(wù)必須先確認(rèn)數(shù)據(jù)來源合法、已獲得授權(quán)并按照企業(yè)內(nèi)部安全規(guī)范設(shè)置網(wǎng)絡(luò)策略和訪問控制。kube-apiserver 的 6443 端口不要直接暴露到公網(wǎng)建議放在內(nèi)網(wǎng)或通過堡壘機(jī)訪問啟用 RBAC 并配置認(rèn)證插件避免未授權(quán)訪問。12.5 定期備份 etcdetcd 是整個(gè)集群狀態(tài)的核心。生產(chǎn)環(huán)境要配置 etcd 的定期快照備份到獨(dú)立存儲(chǔ)。備份命令可以直接使用 etcdctlETCDCTL_API3 etcdctl --endpointshttps://127.0.0.1:2379 \ --cacert/etc/kubernetes/pki/etcd/ca.crt \ --cert/etc/kubernetes/pki/etcd/server.crt \ --key/etc/kubernetes/pki/etcd/server.key \ snapshot save /backup/etcd-snapshot.db出現(xiàn)節(jié)點(diǎn)恢復(fù)、集群擴(kuò)容等場景時(shí)這份備份就是最后的兜底。13. 總結(jié)與下一步這套 kubeadm 安裝 K8s 1.37.x 并讓底層走 Docker 的方案最值得嘗試的點(diǎn)在于它保留了 Docker 的運(yùn)維習(xí)慣同時(shí)讓你拿到一個(gè)可用的多節(jié)點(diǎn) Kubernetes 集群。安裝完成后最應(yīng)該先驗(yàn)證三件事第一節(jié)點(diǎn)是否為 Ready系統(tǒng) Pod 是否 Running第二docker ps 能否看到帶k8s_前綴的容器第三部署一個(gè) Nginx Service 并確認(rèn) NodePort 能正常訪問。這三步通過說明 kubelet、cri-dockerd、Docker Engine 整條鏈路是通的。最容易踩的坑有兩個(gè)一個(gè)是沒有在kubeadm init和kubeadm join中顯式指定 cri socket導(dǎo)致集群底層實(shí)際變成 containerd另一個(gè)是 Docker 的 cgroup driver 和 Kubernetes 不一致導(dǎo)致節(jié)點(diǎn)狀態(tài)異常。提前把這兩點(diǎn)處理好整個(gè)安裝過程會(huì)順暢很多。后續(xù)可以繼續(xù)擴(kuò)展的方向包括接入 Cilium 或 Calico 實(shí)現(xiàn)更精細(xì)的網(wǎng)絡(luò)策略安裝 metrics-server 或 Prometheus 做監(jiān)控告警通過 Ingress Controller 替代 NodePort 暴露服務(wù)把現(xiàn)有 Docker Compose 服務(wù)逐步改寫成 Deployment 和 StatefulSet。等這一套集群穩(wěn)定運(yùn)行一段時(shí)間后再評估是否需要切換到底層 containerd對比兩者的資源占用和管理成本。建議收藏備用尤其是準(zhǔn)備在多臺機(jī)器上復(fù)現(xiàn)這個(gè)部署流程的時(shí)候。
返回列表
PREV
查看更多資訊
NEXT
返回資訊列表
久久a久久| 日韩99999色| 久热伊人| 女人一区| 成人AV素股で擦久久| 欧美一级久久久丰满| 蜜桃传媒视频第一区入口在线看| 成人一级二级| a男人的天堂| 黄色av一区二区在线| 岛国1区2区3区在线观看| 无卡一区=区| 成人久久无码www| 日本中文字幕在线电影| 91美女中出| 91深夜夜| www.久久制服糖| 天天操天天舔| 日韩中文9| 97视频网站在线观看| 丁香五月久久| 国人欧美精品一区二区| 99久久婷婷丁香| 成 人 A V免费视频在线观看| 乱论91| 综合久久9| 久操影视| 亚洲一二三| 美女人妻色网站| 口爆综合网| 伊欧美综合视频| 午夜AV人气不卡| 男女激烈网站最新| 日本高清免费一本视频在线观看| 加勒比伊人| 国产天天骚| 97在线视频网站| 日韩精品一区二区三区色欲| 久久久国产成人一区二区三区在线| 久操91视频| 狠狠操狠狠操操| 日本精品一级二级三级| 免费操逼91| 97超碰碰| 9999免费精彩视频| 大香蕉碰| 少妇极品熟妇人妻无码| 97超碰中文| 国产深喉| 亚洲色图A| 女人天堂av在线播放| 亚洲久久久| 秋霞怕怕片| 国产精品免费久久久久久久久久| 欧美亚洲自拍另类人妻| 黄片免费视频2019| 午夜精品久久久久久久男人的天堂 | 丰满少妇一区二区三区免费看| 青草精品视频一日本久久久久网站| 91久久国产精品| 天天综合网网欲色| 国产av强奸美女| 亚洲第2页| 色色色综合网| 操死我了嗯嗯嗯| 9ⅰ久久久天天| 美女爽到高潮91| 999热这里只有精品| 日韩欧美大片免费高清啪啪| 91c色| 九九久久99| 久久久久久久一级黄色打同平台| 天天色怡春院| 免费a v| 女人午夜视频777| 久久99精品视频| 极品粉嫩一区二区| 91亚洲丝袜熟女| 亚洲动态色图| 久久精品国产免费观看99| 天天拍天天操| 日韩人妻精品中文字幕| 97亚洲中文| 中文字幕日韩电影人妻| 成功精品影院| 60秒免费视频| 国产 日韩,欧美 自拍| 一个色导综合| 天天爱天天韩国日本牛牛牛牛| 9国产超碰| 亚洲午夜福利视频| 91伊人久久在线| 97啪啪| 欧美黑人精品一区二区| 日日夜夜骚| AV女资源| 在线观看中文av字幕| 亚洲男人天堂2012| 97神马久久| 天天躁日日躁xxxxx| 夜夜肏2021| 大香蕉手机在线| 强奸乱伦AV网站| 96精品在线| 亚洲成人帖图| 粉嫩av在线一区二区| a男人的天堂| 亚洲高清欧美总合| 亚洲人人操| 精品综合久久久久久97| 亚洲精品官网在线观看| 九九热在线精品视频| 日韩在线电影| 日日夜夜干| 四虎免费视频| 六十路日本| 加勒比久久av| 亚洲黑丝在线| 色臀AV| 91人妻PORNY九色大屁股| 色眯眯av| 国产激情av女片自拍| 青青草精玖玖69精品| 91免费看一区二区三区| 99999精品视频| 酒色综合网| 色99在线| 亚洲丝袜综合| 射丝袜高跟鞋99| 欧洲精品一级二级精品综合视频综合 | 国产传媒操逼视频| 涩涩久久精品| 怡红院久久老司机| 夜夜操二区| 天久久久噜噜噜久久国产精品爽爽 | 久久久久亚洲三级电影| 亚洲精品国产熟女久久久| 免费的很黄很污的全部视频| 欧美,日韩,中文,另类| 日本五十路熟女一区二区| 福利在线视频一区二区| 婷婷亚洲五月***久久| 伊人久大| 91oumei| 欧美激情久操网| 操学生天天| 日韩高清黄片| 欧美亚洲韩国视频十五区 | 后入日本1234| 狠狠干综合| 国产激情视频一区区三区| 天天综合网在线| 欧美一级AAAAAAA| 久久鲁夜| 婷婷在线视频| yw尤物av无码点击进入麻豆| 97色涩| 探花激情视频| 欧美日韩性爱电影在线| 久久久91福利姬| 午夜天堂精品久久久久91| 亚洲国产综合图区中文字幕 | 国产午夜精品理论片一二三区区| 啪啪免费| 99国产女人| 动漫av中文| 99久久九九| 神马九九| 日本高清一本二本免费不卡| 欧美内射少妇| 婷婷丁香熟妇综合网| 国产精品 视频| 久久久久久久久久久久久久久久9| 久久综合五月天| 性色生活片久久毛片婬片免费放女人一级毛片| 亚洲日韩狠狠撸视频| 久久久啊啊| 999国产精品999| 国产无码三级视频在线观看| 亚洲色婷婷综合久久一区二区三区| 91女网站| 丝袜大香蕉| 99热99在线播放激情| 国产精品久久久久久久久久久久久久| 十八禁电影伊人网| 91骚妇| 69人妻精品一区二区绯色| 免费福利视频中文字幕| 内射老妇BBWX0C0CK| 欧美综合第一页| 加勒比伊人综合| 欧美亚男人的天堂| 嗯嗯啊在线视频| 亚洲福利中文字幕在线| 欧美人妻一区| 久久av成人无码免费| 黑人免费福利视频| 久久久无码视频| 欧美色图小说综合| 加勒比在线观看一区二区| 精品国产乱码久久| 久久春色| 亚洲天堂男人| 欧美色院| 网友自拍第一页| 99999久久精| 久久久青草青青国产亚洲免观精品高清完整版_97久久综合区小说区图片区,国精品 | 亚洲国产剧情少妇激情| 中文字幕一区 二区三四五 区日 日骚| 艹少妇网站| 日韩无码精品综合久久| 操国产逼| 玖玖爱在线视频免费观看| 玖玖综合网| 蜜臀Av一区二区三区| Aa东京男人的天堂| 青青操在线视频| 91蜜桃传媒精品久久久一区二区| 日本熟妇色熟妇在线视频播放| 91国产美女丝袜足交精品视频| 亚洲天堂第一页| 狠插 制服 自拍| 天天弄欧美| 91亚洲影院综合| n1038 一二三区| 亚洲日韩青青草色月| 无码人妻丰满熟妇奶水区毛片| 婷婷成人五月天| 91九九| 色色国产| 少妇毛片久久| 欧美色吧综合| 大色综合| 少妇啪啪自拍| www网站黄| 色婷婷五月天| 国产乱弄免费在线视频。| 嗯嗯啊啊视频一区二区三区| 激情文学小说一区二区| 亚洲欧洲综合| 美国aaaaa一级黄片| 国产精品久久久久久片| 五月香婷婷| 99热导航| 加勒比综合网| 中文字幕91页| av情色影音| 日本不卡一区二区三区| 超碰色老头| 豆花视频操逼网址| 一级免费啪啪片| 久久久九97| 男人精品天堂一区| 精品一级毛片在线观看| 日韩卡一卡二卡三在线| 丰满少妇人妻久久久久久| 欧美中字二区| 91狠狠综合久久| 黄色无码高清黄色无码网站| 日韩av影片在线观看| 日韩天美| 女人喷水视频在线观看| 青青青青草av在线观看| 无码一区免费在线不卡| 久久国产视频性吧| 五月开心久久AV官网| 午夜亚洲| 黄色电影观看久久9| 久久免费中文字幕在线观看| 国产在线激情| 性在久久久久久| 99久久这里只有精品| 91熟女少妇| 天天上日日上日韩精品| 91久青| 91麻豆天美国产欧美高潮| 男女做爰猛烈动高潮A片免费应用| 日本性爱不卡视频| 一本一首道人妻少妇免费久久| 91狠狠综合久久| 99精品欧美一区二区三区桃色| 色女女女导航| 97欧美超碰| 99免费视频| 土豪酒店各种姿势玩弄极品幼稚| 免费人成在线观看网站品爱网| 人妻久热在线| 一区二区三区四区理论片| 亚欧无码在线| 夜夜夜夜爽| 欧美日产国产在线成人第一区| 电影69乱码96| 成人国产视频在线观看| AV一二区| 国产精品久久久吖| 日韩99999色| 亚洲高潮影院| 99精彩视频| 日韩欧美中文| 精品国产乱码久久久久久日本公司| 亚洲自拍天堂| 中出91视频| 欧美性爱视频免费一区一A| 超碰97男人| 亚洲国产精品久久AV| 91久久久久免| 粉嫩av在线| 嗯嗯啊啊视频在线看| 日韩欧美麻豆 | 日韩性爱一级片| 国产伦精品免编号公布| 97精品免费| 夜夜操老骚逼视频网站| 国产中文字幕在线点播| 大肉棒导航| 日韩欧美中文| 97伊人| 狠狠操夜夜操蜜桃视频三区| Av手机版天堂网| 久久一二三四不卡 | 人人操人人狠狠操| 97亚洲综合影院| 淫色网综合| 天天懆天天日| 欧美日综合| 欧州色图区| 老外又粗又长一晚做五次| 精品国产99| 强奸乱伦AV网站| 天天综合站| 欧美1727免费观看视频| 強姦亂倫a| 成人麻豆av电影网站| A男人的天堂| 久久精品国产72国产精品福利| 一二区在线观看视频| 精品视频久久久久九九九九9999| 欧美日韩另类在线| 亚洲婷婷丁香在线| 一区二区三区四区在线不卡| 又大又黄国产| 久久综合激情| 88xx成人精品视频| 精品大全99999| 久久久久久久久久久97| 日本精品不卡一二三区| 少妇一区二区三区| 嗯嗯啊啊日韩精品| 欧中日成人免费影视| 人妻人人做人人澡人人爽欧美一区| 97综合激情| 亚州 综合 色图| A久久| 人人摸.人人色| 超碰色老头| 欧美大色交| 天天日天天操心| 中文字幕奈奈美被公侵犯| 国产区在线| 福利天堂| 淫色网综合| 亚洲黄色影视| 国产日本久久免费精品| 国产精品一区av在线| 东京热双插| 久久精品女同亚洲女同13| 国产精品制服丝袜中文字幕日韩一区二区三区| 五月婷色| 涩涩五月天| 中文字幕免费看大片| 中文字幕制服欧美久久一区| 乱人伦 国语对白:视频直接看| 大黄片做爱的大的| 性暴力欧美猛交在线直播| 久久区| 超碰99在线| 女人18精品一区二区三区| 91美女视频在线| 一区二区三区 丝袜 高跟 美腿| 99视频内射三四| 亚洲日本韩国在线| 亚洲中文字幕av| 久精品无码av一区二免费国产在线观看| 国内毛片热久久思思热| 人妻精品视频一区二区三区 | 2019精品国产无码成人| A级片日韩欧美国产欧美视频精选观看 | 久操视频免费在线观看| 综合日本女人伊人| 99青草| 亚洲激情综合| 国产精品小视频一区二区三区| 五月天成人综合| 992这里有精品| 清柠毛片| 久热久一区二区三区| 97欧美精品综合| 精品高潮| 91女优在线观看| 色视频蜜乳| 女人天堂av在线播放| 丁香六月激情综合| 乱人伦 国语对白:视频直接看| 久久久久9| www.久久爱| 久久久爆乳翘臀一线天伦理视频| 啊啊啊啊啊啊啊国| 色网在线| 亚洲九九视频| 超碰2017| 日小BB小视频| 国产AV超爽| www.久久| 嗯……啊…嗯嗯…啊…好舒服| 五月天久久婷婷亚洲| 天堂射| 亚洲国产97在线精品一区| 蜜臀久久99精品久久久久久成人小说 | 极品AV网站在线观看| 中文字幕日韩精品久久| 日韩一区二区三区四区五区| 青青11操操操操操操操操| 熟妇艹鸡八| 久久九九精品一区二区| 国产精品久久久久久久无码AV| 人妻啪| 91人妻Pr| 99国产在线绯色一区| 亚洲色图伊人网| 久久国产乱子伦精品免费女,网站| 日本影视久久免费| 亚洲最大无码中文字幕网站| 男人的天堂激情| 国产精品午夜福利视频| 亚洲图片欧美色| 波多野结衣被操50分钟免费视频 | 四虎AV影视国产精品亚洲精品| 国偷自 一区二区| 久久超碰97| 曰韩操B| 婷婷五月天色| 性交一区二区在线播放| 91亚州| 性色av婷婷久久一区二区点复制| 成人女人国产| 亚洲一区二区AV| 美中日韩无码| 国产成人AV麻豆| 久久97视频| 影音先锋视频在线| 久久最新免费视频23| 97情超碰色| 日本国产亚洲一区在线观看| 亚洲久热| 日韩91网站| 丝袜剧情| 亚洲国内精品成人不卡| 富女玩鸭子一级毛片| 久久久97| 欧美日日人人天天| 国产精品久久久久久片| 91欧美另类| 97视频网站| 日韩AV片| 人妻天堂网| 免费综合亚洲中文| 插入粉嫩少妇视频| 91午夜无码| 啊啊啊好湿久久| 欧美一级在线观看成人| 国产黄a三级三级三级av在线看| 久久是精品| 国产小黄片在线免费观看 | 97视频网站在线观看| 天天干18禁| 天天操综合网| 超碰碰97资源站| 国产日韩欧美三级片| 加勒比av官网在线| 高清在线偷拍自拍视频| 欧美色图欧美| 久久性爱视频| 综合网欧美| 色av中文字| 日本一区不卡| 九九久久久九九| 欧美黄色手机在线观看| 好看的久久不射无码影视影院| 黄色电影在线播放综合网站| 久久精品99久久久久久| 91呆哥人妻| 亚洲欧美校园| 久草久热| 天天操天天干一区二区| 91视频女生| 99爱在线视频| 久久精品午夜国产亚洲AV无码| 亚洲免费97免费| 国产欧美日韩一区二区三区| 欧美天天在线| 加勒比大香蕉视频在线| 亚洲中文字幕在线视频一区二区| 性爱AV天堂| 六月婷婷综合| 最近2018中文字幕在线高清第一页| 欧美韩国你懂得在线| 色婷婷九月天天综合| 我要色综合网站| 淫淫总合网| 日本十八禁免费看污网站| 日韩中文9| 九九九九九九九精品视频| 亚洲人妻在线精品| 精品综合久久久久久97| 99热97| 国产中文字幕曰本毛片| 偷拍精品一区二区三区| 亚州图片第一页| 欧美亚洲玖玖玖| 亚洲一区二区三区不卡国产欧美| 东北女人性交| 97在线观看免费视频l| 婬女免费一二三区A片| 91久久久亚洲| 九九久精品| 一起草高清无码| 日韩精品电影| 精品人妻二区三区| 90后性网国产欧美| 欧美性爱无码一区二区三区| 射久久| 99re6在线视频精品免费完整版安卓版| 亚洲国产精品久久久久久久久久| 黄片色区软件| 好色综合| 无人区高清电影免费观看一区二区三 www.qmcai2.com | 91精品久久久久五月天精品| AAAA级日本片免费视频| 午夜亚洲| 玖玖综合视频| 国产精品久久久久久久久久久久久久久| 任你爽视频| 国产色呦呦| AV天堂国产| 97干97色| 啊啊啊啊啊啊在线| 丰满少妇精品一区二区| 黄色十八禁| 欧亚久久偷拍视频| 欧美日本久久精品一区 | 97视频免费| 国产日韩中文字幕欧美| 人妻人妻天天碰| 60秒试看最爽10分钟网站| 久99久视频精选| 五月天色色色| 欧美99热| 东京日日夜夜| 亚洲人妻一区二区三区| 97天堂| 九九热精品| 久久久婷| 国产少妇肉丝在线观看| 婷婷五月天激情网| 91亚州日韩高清| 女优免费一区二区永久| 五月婷婷五月天| 色蜜AV| 96AV精品| 91丝袜美女| 少妇500双飞99| 亚洲av淫乱| 人人做,人人操,人人摸| 天天日天天干天天操| 蜜臀视频网站| 一级做a爰片性色毛片久久| 国产高清自拍视频| 看大黄色大片原件| 五月天黄色激情视频| 91超级碰| 亚洲欧洲视频小说在线观看| 欧美大香蕉97| 国产av又色又爽又黄| 强奸乱伦麻豆| 91久热| A级毛片在线看免费| 精品成人动漫一区二区| www.色婷婷色综合| 97AV爱| 精品然女一区二区| 日本精品九九九| 东京热男人天堂| 伊人网免费视频| 久久高清欧美国产| 黄色乱论网站| 欧美在线视频观看一二三四区高清| 免费视频观看60秒| 黑人精品一区二区在线播放| 激情看片网站| 青娱乐蜜桃臀AV色婷| 天天性射网| 无码人妻一区二区三区色欲aⅴ| 亚洲午夜福利在线影院| 精品国产自在在线99| 九九九九精品一区| 一级二级在线观看| 成人片在线播放| 97在线欧洲| 日本大香蕉综合网| 亚欧性爱ab| 欧美熟妇乱码在线一区| 台湾佬中文娱乐网久久久久久久久久com | 99久久9| 老汉网| 久久国产精品m码| 国产一在线观看| 国产伦精品一区二区三区视频女| 天天天堂影视日韩亚洲91| 美女诱惑一区| 久久激情视频| 97av,com| 影音先锋新男人| 偷窥自拍亚洲色图| 欧美性夜| 欧美一级A片在线看视频性色| 99啪啪视频| 色欧美亚洲| 五月婷婷久久综合| 97超色| 交换娇妻呻吟声不停中文字幕| 中文字幕一区 二区三四五 区日 日骚 | 农村女一级毛卡片| 国产sv美女内射| 美女操逼福利视频| 欧美国产有色电影| 蜜乳成人AV| 日韩一级二级在线| 91久久久亚洲| 蜜桃精品一区二区三区ww| 中文字幕一区二区三区人妻不卡 | 99re这里| 伦伦成年午夜免费视频| 91天天爱| 人妻一二三区| 国产噜噜噜噜噜久久久久久久久| 欧美成人A√在线一区二区| 有码免费观看| 亚洲?V高清一区二区三区尤物| 一区二区三区机械有限公司| 成人开心网在线视频| 日本熟女免费視颖| 素颜老阿姨乱情色| 亚洲色婷婷综合久久久久中文| 在线视频日韩欧美国产| 日韩av情韩国爱禁区av一区二区| 91丨熟女丨丰满熟女| 福利天堂| 图片区小说区| 国产91丝袜 在线播放| 91无码中出人妻视频| 久久久无码精品人妻二区| 国内自拍 日韩激情 99| 综合九九| 五月丁香婷婷色| 天天干夜夜鈤| 亚洲福利中文字幕在线| 久久二| 亚洲91av| www.av在线视频| 久久日本熟女精品一区| 日本亚洲熟女视频| 玖玖爱视频网站| 亚洲有薄码区日本系列中文字幕| 美女诱惑久久| 伊人一区二区三区| 免费在线观看国内色片网站网址| 亚洲高潮影院| 日韩人妻少妇 一区二区三区| 91无遮挡| 国产熟女精品区| 国产精品熟女丝袜一区二区| 综合亚洲网| 久久露脸国产老熟女| 精品视频一区二区| 国产夫妻一区二区| 精品黑人一区二区| 超碰欧美97| 久久久久9999精品九九九| 懂色AV蜜臀无码精品APP| 夜夜欢天天干| 91久久18禁| 丁香六月啪啪| 日本人妻伦在线中文字幕| 伊人久久亚洲色欲综合网站| 99热久| 亚洲精品国产熟女| 殴美色网| 久神马| 97精品综合| 自拍视频一区在线观看| 亚州欧美在线| 青青草视频这里只有精品| 不卡一区二区日本视频| 天天爱天天操| 天天热精品| 人妻一区二区三区| 五月婷婷色| 草草影院最新网址| 91久久久亚洲| 国产精品对白自产拍| 啊啊啊啊二区好大| 色色色综合网| 国产免费永久精品无码| 黑人精品XXX一区一二区| 人爽不卡视频| 少好三P| 日本黄色裸日本黄色裸体 | 欧美草草| 欧美综合在线91| 91是天天| 天天干天天做| 色婷婷狠狠| 亚洲人妻中文高清| 中国一级操逼视频| 国内偷拍精品一区二区| 69麻豆天美| 夜夜嗨一区二区三区三州加勒比 | 美女高潮国产高清| 午夜精品人妻二区三区| 69久久久久久久久久久久久| 人人爽夜夜操| 日本不卡码黄色| 2020中文字幕| 狠狠干综合| av资源在线观看少妇| 欧亚乱色熟女一区二区| 国产9 9在线 | 亚洲| 日韩av在线精品观看| 少妇熟女一区二区三区| 久久久久久久久久久久97| 天天干1区2区在线| 色哟哟av| 加勒比久久av| 暴力av在线| 久久噜噜噜精品国产亚洲综合| 亚洲天堂日本| 九九九热精品| 另类老少妇| 中字一区| 日日97| 五月天久久人妻| 婷婷色香伊人| 国产精品操| 中日韩免费看男女操逼大全| 欧美一级A一级a爱片久久| 绯色一区二区三区不卡少妇| 97精品视频| 久96热在线观看视频| 亚洲超碰97| 超碰国产精品无码| 26UUU欧美激情一区二区| 亚洲AV无码AV吞精久久久久| 无码免费精品高清| 一本久道久久综合狠狠爱| 狠狠狠狠狠狠| 日韩中文字幕av在线播放| 男人天堂日日夜夜| 日本天天干天天日一区| 蜜奶av| 2019午夜福利视频| 欧美性五月| 91少妇人妻| 97超碰伊人| 国产熟女精品一区二区| 午夜精品久久一区二区| 97资源视频| 国产一区二区三区影片| 五月天婷婷久久| 成人综合视频久久| 久久精品高清无码一区| 97极品无码| 国产一区二区在线播放量| 免费啪啪啪网站18岁| 亚洲有码 视频一区| 综合av影片| 99久久99九九99九九九| 日本欧美一区二区三区视频麻豆| 国产精品久久久久久无码红治院| 色色婷| 无码heyzo高清一区| 久久精品99| 久久久久久久9| 太久视频| 116美女午夜| 四虎884| 欧美日韩在线视频网站| 高清在线偷拍自拍视频| 亚洲无码99| 久草精品一区 | 久久人人爽人人爽人人片Ⅴ| 国产日本熟女顶级一区二区三区视频| 在线五区| 亚洲美女AV无码| 成人精品在线| 欧美78| 成·人免费午夜在线观看| 嫩草影院在线观看精品| 精品美女在线视频| 欧美激情 亚洲色图| 国产AV毛片| 精品视频123区小说区| 天天躁夜夜躁狠狠躁AV| 亚洲熟妇一,二,三期| 五月天婷婷色色| 青青草视频爽一爽| 欧美激情高清性猛交| 国产精品无码在线| 天天做天天爱天天爽AV| 中文字幕熟女人妻丝袜| 国产又粗又长又爽又色| 欧美熟女丝袜| 国产精品成人AV片免费看网站| 伊人久久婷婷| 在线电影亚洲色图| 国产精品亚洲一级av第二区| 日本不卡码黄色| 亚洲资源站| 69人妻精品一区二区绯色| 久久久精品视频欧州站| 粉嫩不卡一区二区性爱| 色九九九综合| 国产亚洲女v在线观看| 黄色小说亚洲| 懂色中文一区二区三区| 久久仑合| 青娱乐老司机视频| 青青草久久一区网| 欧美日本成人一区二区| 97一区二区蜜臀| 亚洲男人天堂网| AV天堂丝袜| 亚洲 欧美 色图| 欧亚综合一卡二卡中文字幕| 大屁股熟女一区二区三区| 久综合国内精品自在自线| 美女淫穴| 久操操AV电影| 亚洲宗合网| 欧美一区二区三区另类精品| 1.igao73.com 加入收藏 免费专区 国产精品 中文字幕 日韩精品 欧美精品 精彩 | 97超色| 午夜福利免费福利视频| 久久久性少妇| 粉嫩在线一区二区懂色| 大香蕉草草| 日韩人妻精品久久久久| 2019天天干| 在现视频女上位好爽| 国产精品久久久久久高清无码免费看| 少妇天堂网络| 国产精品一二三在线看| 97亚洲色图| 天天欧美色| 91丨豆花丨熟女| 日韩一级二级三级免费看完整版国语版 | 91jk色拍| 日韩欧美亚洲一区二区三区影院| 997色在线| 欧美亚洲玖玖玖| 看免费一级在线播放毛片| 99九九久久| 秋霞曰韩R级| 久久久一区二区三区麻豆| 淫淫总合网| 欧美性生活男人的天堂| 后入式999| 国产精品色色| 亚洲精品国产无码高清| 97中文字幕一区| 大香蕉伊人色偷偷在线| 最新岛国大片| 一二三四区操操Av| 亚洲图片欧美日韩| 日韩精品在线观看观看| 中出20p| 97中文天堂| 国产传媒操逼视频| 色爱亚洲| 久久久久久久久国产| 国产农村一一级特黄毛片| 国产精品久久| 美女91网址 | 啊啊啊啊免费视频| 97中文超碰| 成人八戒网站| 亚洲国产一级黄色视频| 日本中文字幕熟妇| 免費人妻夜夜爽天天爽爽一区| 欧美日本中字另类在线| 亚洲自拍偷拍视频在线| 风间由美日韩欧美久久| 午夜欧美J进J出白浆流出久久久| 中字乱伦AV| 久久精品国产AV一区二区三区| 澳门色噜噜色噜噜色噜噜色噜噜色噜噜| 人人操天天爽| 黄污污污污| 日韩精品一区二区三区色欲| 日本操逼视频不卡直接放| 资源新线在线天堂| 99热99re6国产在线播放| 久草新免费| 爱av免费| 欧美亚洲尤物久久| 日韩AV无码网站| 亚洲成成熟女人综合一区二区| 97超碰这里只有精品| 在线观看一卡二卡| 国产亚洲在线观看| 欧美成人黄网色网站| 久久男人精品| 91丨九色丨国产丨人妻在线 | 欧美激情性爱视频网站| 久久久久亚洲| 亚洲春色欧美| 91夜色chaopeng| 99色色网| 亚洲欧美日韩综合在线尤物 | 国产探花精品在线| 大香蕉一区二区在线观看.| 中文字幕天堂在线| 色噜噜国产精品视频一区二区| 九九九不卡| 久久久久久九九九九九| 67914在线兔费成人视频| 精品国产综合久久福利,热99这里有精品综合久久,99热这里只有免费国产精品,精 | 婷婷影院入口| 国产懂色精品国产av| 久久肏大逼| 91成人久久| 国产麻豆一级精品视频| 中文字幕aⅴ在线视频| JIZZJIZZ国产精品喷水| 久久久精品无码亚免费| 成人性爱视频在线看| 亚洲天堂人妻熟妇视频| 黄色视频60分钟| 成人5码视频| 欧美疯狂做爰xxxx| 麻豆啪啪啪视频| 婷婷五月色| 亚洲人妻一区二区三区| 激情四射婷婷四五月天| 久久夜色一区二区| 色九月综合| 国产精品视频在线播放| 2011国产精品| 四虎免费看黄| 97视频新免费| 999久久芭蕾| 国产精品福利视频| 日韩欧洲操屄视频| 国产精品探花色| 亚洲天堂人妻熟妇视频| 亚洲综合色婷婷| 中文字幕91综合| 99精品网站| 日韩无码服务区| 青草一区二区| 日韩精品色呦呦| 日本护士高潮| AND人妻系列| 9 7超碰在线免费观看| 综合91网| 亚洲国产精品无码AV久久久| 久久久免费高清中文视频| 天天日天天干天天摸天天操| 欧美熟女妇同| 97国伦国色| 欧美一区二区情色| 欧美女同在线| 日韩性爱一级片| 日韩欧美成人性爱在线| 日本免费中文一区二区三区四区 | 色五月综合| 久久99草| 2019天天干| 黑丝少妇| 国产一区二区在线播放,久久亚洲精品中文字幕第一区,亚洲精品在线中文字幕视频 | 久久中文字幕人妻熟av女蜜柚| 亚欧美色| 8x福利精品第一福利视频导航| 久久久久久久人妻| 欧美韩国你懂得在线 | 97国产精选| 爽极品影院| 欲色影视综合吧| 久久久久久9| 沈阳熟女高潮对白视频| 综合网,亚洲,欧美| 国产午夜福利合集| 不卡啪啪视频| 老女人老91妇女老热女| 亚洲熟伦熟妇AV无码春色| 亚洲夜色在线| 99re99| 婷婷五月天激情四射| 香港久久久| 日本黄 R色 成 人网站| 91热热色| 天天插天天操| 色色国产| 极品销魂美女一区二区| 亚洲熟女一区二区| 亚洲91射| 五月天人妻综合| 天天天乱色综合全| av情色影音| 色女99一级片在线观看| 欧美久久草熟女| 亚洲国产欧美中日韩成人综合视频| 欧美黄业| 国产传媒1234区| 精品国产乱码久久| 极品粉嫩少妇视频| 伊人五月天| 国产精品探花视频| 91熟女视频网| 亚洲Av无码成人精品国产| 亚洲操操操无码| 日韩乱码Av| 在线看的av| 日韩精品三级| 亚洲人在线| 99超级碰免费视频| 麻豆av一区二区| 狠狠 91| 久久久久久久久国产| 国产操伦| 日本精品加勒比海一区| 偷窥自拍亚洲色图| 在线观看成人性爱免费小视频| 91国精产品| 日韩精彩免费| 岛国成人av在线播放网址| 久久久啊啊啊| 亚洲91网。| av资源在线观看少妇| 久久免费99精品久久久久久| 九九碰九九爱97超碰| 黄色不卡视频| 4141514逼喷水三级片| 99精品久久久久久久婷婷蜜桃| 操操操日本的逼| 国产午夜福利专区综合| 熟女人妻一区二区三区免费看| 青青草中出视频| 色情婷婷久久五月天| 校园春色亚洲欧洲| 大鸡巴久久久| 求求你操操我| 伊人色综合超碰| 亚洲成人妻日韩在线| 蜜臀久久在线视频| 欧美影音在线| 免看60秒涩涩视频| 亚洲激情欧美色图 | 天天干天天爽| 日本三级日本三级99| 人妻99p| 中文字幕精品一区二区精品| 激情四射婷婷四五月天| 影音先锋视频在线| 国产日韩欧美三级片| 无码操逼网| 人人色人人操在线| 国产av尤物| 秋霞鲁丝午夜无码一区二区三| 男人的亚洲天堂| 777超碰| 国产一区二区三区视频在线看| 久操网无码在线| 亚洲Av无码成人精品国产| 99热久| 久久伦理视频久久大香蕉视频| 亚欧洲一区二区视频| 精品传媒在线一区| 国产亚洲精品A在线观看下载| 国产www色在线观看| 欧美精品在线观看| 国产欧美成人精品| 中文字幕一区二区视频在线观看 | 婷婷五月天久久精品视频一区二区三区| 嗯阿好爽好紧| www.男人的天堂| 久久久免费一级黄片| 老师充足的奶水小说| 骚鸭AV| 久久久999国产| 国产人伦a片信息免费片| 精品国产乱码久久久久久久久1| 综合亚洲网| 婷婷午夜成人色中色| 亚洲网自拍| 97超碰久久| 久热色情精品| 欧美综合综合| 农村妇女一级二级三级视频| 中文字幕久久亚州无码| 久久精品国产99精品亚洲蜜...| 久久免费中文字幕在线观看| 91精品国产91综合久久蜜臀| 超碰碰碰碰| 日韩福利电影网| 3571色综合一区二区二区| 91丝袜| 97资源超碰| 国产精品麻豆视频网站| 欧美色老汉| 校园春色综合香蕉| 青青草日本无码| 国产亚洲精品第一最新| av影片在线观看不卡| 人妻激情在线视频| 色女综合| 色色99| 再深点灬舒服灬太大了添视频| 我要色综合网站| 日韩一区二区精品视频| 亚洲国产丝袜熟女av| 五月花婷婷| 99精品国产户外露出| 久久综合女优| 91天美| 超碰无码五月97| 天天欧美欧美亚洲网| 亚洲九月丁香| 精品少妇高潮久久| 亚洲 se图 欧美电影| 操屄不卡视频| 日韩熟女操逼| 欧美性天天影视| 九九黄色视频在线观看| 色与欲影视| 学生妹天天看| 搞中出视频在线观看| 无码视频一区二区| 日本黄色裸日本黄色裸体| 99色婷婷中文字幕乱色| 极品粉嫩一区二区| 亚洲影院小综合| 亚洲人妖网| 欧洲一区二区三区免费| 天天插夜夜爽| ...日韩成人一区二区三区字幕| 狠狠干妹子| 成人天天爽| 91日韩网站| 淫荡网址| 在线观看中文字幕|