精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

Longhorn 云原生容器分布式存儲 - 故障排除指南

云計算 存儲軟件 云原生 分布式
當 Longhorn 卷的文件系統損壞時,Longhorn 無法重新掛載該卷。因此,workload 無法重新啟動。

[[429654]]

目錄

  1. 當 Longhorn 卷文件系統損壞時,Pod 卡在 creating 狀態
  2. 非標準 Kubelet 目錄
  3. Longhorn 默認設置不保留
  4. 分離和附加卷后,Recurring job 不會創建新 job
  5. 使用 Traefik 2.x 作為 ingress controller
  6. 使用 cURL 創建 Support Bundle
  7. Longhorn RWX 共享掛載所有權在 consumer Pod 中顯示為 nobody
  8. 由于節點上的多路徑,MountVolume.SetUp for volume 失敗
  9. Longhorn-UI:WebSocket 握手期間出錯:意外響應代碼:200 #2265
  10. Longhorn 卷需要很長時間才能完成安裝
  11. volume readonly or I/O error
  12. volume pvc-xxx not scheduled

1. 當 Longhorn 卷文件系統損壞時,Pod 卡在 creating 狀態

適用版本

所有 Longhorn 版本。

癥狀

Pod 停留在容器 Creating 中,日志中有錯誤。

  1. Warning  FailedMount             30s (x7 over 63s)  kubelet                  MountVolume.SetUp failed for volume "pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d" : rpc error: code = Internal desc = 'fsck' found errors on device /dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d but could not correct them: fsck from util-linux 2.31.1 
  2. ext2fs_check_if_mount: Can't check if filesystem is mounted due to missing mtab file while determining whether /dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d is mounted. 
  3. /dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d contains a file system with errors, check forced. 
  4. /dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d: Inodes that were part of a corrupted orphan linked list found.   
  5.  
  6. /dev/longhorn/pvc-bb8582d5-eaa4-479a-b4bf-328d1ef1785d: UNEXPECTED INCONSISTENCY; RUN fsck MANUALLY. 
  7.   (i.e., without -a or -p options) 

原因

當 Longhorn 卷的文件系統損壞時,Longhorn 無法重新掛載該卷。因此,workload 無法重新啟動。

Longhorn 無法自動修復此問題。發生這種情況時,您需要手動解決此問題。

解決方案

尋找跡象:

  • 如果卷未處于 error 狀態,則 Longhorn 卷內的文件系統可能因外部原因而損壞。
    • 從 Longhorn UI 檢查卷是否處于 error 狀態。
    • 檢查 Longhorn 管理器 pod 日志以了解系統損壞錯誤消息。
  • 縮減 workload。
  • 從 UI 將卷附加到任何一個 node。
  • SSH 進入 node。
  • 在 /dev/longhorn/ 下找到 Longhorn 卷對應的塊設備。
  • 運行 fsck 來修復文件系統。
  • 從 UI 分離卷。
  • 擴大 workload。

2. 非標準 Kubelet 目錄

適用版本

所有 Longhorn 版本。

癥狀

當 Kubernetes 集群使用非標準的 Kubelet 目錄時,longhorn-csi-plugin 無法啟動。

  1. ip-172-30-0-73:/home/ec2-user # kubectl -n longhorn-system get pod 
  2. NAME                                        READY   STATUS              RESTARTS   AGE 
  3. longhorn-ui-5b864949c4-4sgws                1/1     Running             0          7m35s 
  4. longhorn-manager-tx469                      1/1     Running             0          7m35s 
  5. longhorn-driver-deployer-5444f75b8f-kgq5v   1/1     Running             0          7m35s 
  6. longhorn-csi-plugin-s4fg7                   0/2     ContainerCreating   0          6m59s 
  7. instance-manager-r-d185a1e9                 1/1     Running             0          7m10s 
  8. instance-manager-e-b5e69e2d                 1/1     Running             0          7m10s 
  9. csi-attacher-7d975797bc-qpfrv               1/1     Running             0          7m 
  10. csi-snapshotter-7dbfc7ddc6-nqqtg            1/1     Running             0          6m59s 
  11. csi-attacher-7d975797bc-td6tw               1/1     Running             0          7m 
  12. csi-resizer-868d779475-v6jvv                1/1     Running             0          7m 
  13. csi-resizer-868d779475-2bbs2                1/1     Running             0          7m 
  14. csi-provisioner-5c6845945f-46qnb            1/1     Running             0          7m 
  15. csi-resizer-868d779475-n5vjn                1/1     Running             0          7m 
  16. csi-provisioner-5c6845945f-fjnrq            1/1     Running             0          7m 
  17. csi-snapshotter-7dbfc7ddc6-mhfpl            1/1     Running             0          6m59s 
  18. csi-provisioner-5c6845945f-4lx5c            1/1     Running             0          7m 
  19. csi-attacher-7d975797bc-flldq               1/1     Running             0          7m 
  20. csi-snapshotter-7dbfc7ddc6-cms2v            1/1     Running             0          6m59s 
  21. engine-image-ei-611d1496-dlqcs              1/1     Running             0          7m10s 

原因

由于 Longhorn 無法檢測到 Kubelet 的根目錄設置在哪里。

解決方案

Longhorn 通過 longhorn.yaml 安裝:

取消注釋并編輯:

  1. #- name: KUBELET_ROOT_DIR 
  2. #  value: /var/lib/rancher/k3s/agent/kubelet 

Longhorn 通過 Rancher - App 安裝:

  • 點擊 Customize Default Settings 設置 Kubelet 根目錄
  • 相關信息
  • Longhorn issue:

https://github.com/longhorn/longhorn/issues/2537

更多信息可以在 OS/Distro 特定配置 下的故障排除部分找到。

3. Longhorn 默認設置不保留

適用版本

所有 Longhorn 版本。

癥狀

  • 通過 helm 或 Rancher App 升級 Longhorn 系統時,修改后的 Longhorn 默認設置不會保留。
  • 通過 kubectl -n longhorn-system edit configmap longhorn-default-setting 修改默認設置時,修改不會應用于 Longhorn 系統。

背景

此默認設置僅適用于尚未部署的 Longhorn 系統。它對現有的 Longhorn 系統沒有影響。

解決方案

我們建議使用 Longhorn UI 更改現有集群上的 Longhorn 設置。

您也可以使用 kubectl,但請注意這將繞過 Longhorn 后端驗證。

kubectl edit settings -n longhorn-system

4. 分離和附加卷后,Recurring job 不會創建新 job

適用版本

所有 Longhorn 版本。

癥狀

當卷被分離很長時間后被附加時,循環作業不會創建新 job。

根據 Kubernetes CronJob 限制:

  • https://kubernetes.io/docs/concepts/workloads/controllers/cron-jobs/#cron-job-limitations
  1. 對于每個 CronJob,CronJob 控制器會檢查它在從上次調度時間到現在的持續時間內錯過了多少個 schedule。如果有超過 100 個錯過的 schedule,則它不會啟動 job 并記錄 error 
  2.  
  3. Cannot determine if job needs to be started. Too many missed start time (> 100). Set or decrease .spec.startingDeadlineSeconds or check clock skew. 

例如,如果 recurring backup job 設置為每分鐘運行一次,則容限為 100 分鐘。

解決方案

直接刪除卡住的 cronjob,讓 Longhorn 重新創建。

  1. ip-172-30-0-211:/home/ec2-user # kubectl -n longhorn-system get cronjobs 
  2. NAME                                                  SCHEDULE    SUSPEND   ACTIVE   LAST SCHEDULE   AGE 
  3. pvc-394e6006-9c34-47da-bf27-2286ae669be1-c-ptl8l1-c   * * * * *   False     1        47s             2m23s 
  4.  
  5. ip-172-30-0-211:/home/ec2-user # kubectl -n longhorn-system delete cronjobs/pvc-394e6006-9c34-47da-bf27-2286ae669be1-c-ptl8l1-c 
  6. cronjob.batch "pvc-394e6006-9c34-47da-bf27-2286ae669be1-c-ptl8l1-c" deleted 
  7.  
  8. ip-172-30-0-211:/home/ec2-user # kubectl -n longhorn-system get cronjobs 
  9. No resources found in longhorn-system namespace. 
  10.  
  11. ip-172-30-0-211:/home/ec2-user # sleep 60 
  12.  
  13. ip-172-30-0-211:/home/ec2-user # kubectl -n longhorn-system get cronjobs 
  14. NAME                                                  SCHEDULE    SUSPEND   ACTIVE   LAST SCHEDULE   AGE 
  15. pvc-394e6006-9c34-47da-bf27-2286ae669be1-c-ptl8l1-c   * * * * *   False     1        2s             3m21s 

相關信息

  • 相關 Longhorn issue:
    • https://github.com/longhorn/longhorn/issues/2513

5. 使用 Traefik 2.x 作為 ingress controller

適用版本

所有 Longhorn 版本。

癥狀

Longhorn GUI 前端 API 請求有時無法到達 longhorn-manager 后端。

原因

API 請求會改變 HTTPS/WSS 之間的協議,而這種改變會導致 CORS 問題。

解決方案

Traefik 2.x ingress controller 沒有設置 WebSocket header。

1.將以下中間件添加到 Longhorn 前端 service 的路由中。

  1. apiVersion: traefik.containo.us/v1alpha1 
  2. kind: Middleware 
  3. metadata: 
  4.   name: svc-longhorn-headers 
  5.   namespace: longhorn-system 
  6. spec: 
  7.   headers: 
  8.     customRequestHeaders: 
  9.       X-Forwarded-Proto: "https" 

2.更新 ingress 以使用中間件規則。

  1. apiVersion: networking.k8s.io/v1beta1 
  2. kind: Ingress 
  3. metadata: 
  4.   name: longhorn-ingress 
  5.   namespace: longhorn-system 
  6.   annotations: 
  7.     traefik.ingress.kubernetes.io/router.entrypoints: websecure 
  8.     traefik.ingress.kubernetes.io/router.tls: "true"        
  9.     traefik.ingress.kubernetes.io/router.middlewares: longhorn-system-svc-longhorn-headers@kubernetescrd 
  10. spec: 
  11.   rules: 
  12.   - http: 
  13.       paths: 
  14.       - path: / 
  15.         backend: 
  16.           serviceName: longhorn-frontend 
  17.           servicePort: 80 

相關信息

  • Longhorn issue comment:
    • https://github.com/longhorn/longhorn/issues/1442#issuecomment-639761799

6. 使用 cURL 創建 Support Bundle

適用版本

所有 Longhorn 版本。

癥狀

無法使用 Web 瀏覽器創建 support bundle。

解決方案

暴露 Longhorn 后端服務。下面是一個使用 NodePort 的示例,如果設置了負載均衡器,您也可以通過負載均衡器暴露。

  1. ip-172-30-0-21:~ # kubectl -n longhorn-system     patch svc longhorn-backend -p '{"spec":    {"type":"NodePort"}}' 
  2. service/longhorn-backend patched 
  3. ip-172-30-0-21:~ # kubectl -n longhorn-system get     svc/longhorn-backend 
  4. NAME               TYPE       CLUSTER-IP          EXTERNAL-IP   PORT(S)          AGE 
  5. longhorn-backend   NodePort   10.43.136.157       <none>        9500:32595/TCP   156m 

運行以下腳本以創建和下載 support bundle。您需要替換 BACKEND_URL、ISSUE_URL、ISSUE_DESCRIPTION。

  1. Replace this block ====> 
  2. BACKEND_URL="18.141.237.97:32595" 
  3.  
  4. ISSUE_URL="https://github.com/longhorn/longhorn/issues/dummy" 
  5. ISSUE_DESCRIPTION="dummy description" 
  6. # <==== Replace this block 
  7.  
  8. # Request to create the support bundle 
  9. REQUEST_SUPPORT_BUNDLE=$( curl -sSX POST -H 'Content-Type: application/json' -d '{ "issueURL": "'"${ISSUE_URL}"'""description""'"${ISSUE_DESCRIPTION}"'" }' http://${BACKEND_URL}/v1/supportbundles ) 
  10.  
  11. ID=$( jq -r '.id' <<< ${REQUEST_SUPPORT_BUNDLE} ) 
  12. SUPPORT_BUNDLE_NAME=$( jq -r '.name' <<< ${REQUEST_SUPPORT_BUNDLE} ) 
  13. echo "Creating support bundle ${SUPPORT_BUNDLE_NAME} on Node ${ID}" 
  14.  
  15. while [ $(curl -sSX GET http://${BACKEND_URL}/v1/supportbundles/${ID}/${SUPPORT_BUNDLE_NAME} | jq -r '.state' ) != "ReadyForDownload" ]; do 
  16.   echo "Progress: $(curl -sSX GET http://${BACKEND_URL}/v1/supportbundles/${ID}/${SUPPORT_BUNDLE_NAME} | jq -r '.progressPercentage' )%" 
  17.   sleep 1s 
  18. done 
  19.  
  20. curl -i -X GET http://${BACKEND_URL}/v1/supportbundles/${ID}/${SUPPORT_BUNDLE_NAME}/download --output /tmp/${SUPPORT_BUNDLE_NAME}.zip 
  21. echo "Downloaded support bundle to /tmp/${SUPPORT_BUNDLE_NAME}.zip" 

相關信息

  • 相關的 Longhorn comment:
    • https://github.com/longhorn/longhorn/issues/2118#issuecomment-748099002

7. Longhorn RWX 共享掛載所有權在 consumer Pod 中顯示為 nobody

適用版本

Longhorn 版本 = v1.1.0

癥狀

當 Pod 使用 RWX 卷掛載時,Pod 共享掛載目錄及其 recurring contents 的所有 ownership 顯示為 nobody,但在 share-manager 中顯示為 root。

  1. root@ip-172-30-0-139:/home/ubuntu# kubectl exec -it rwx-test-2pml2 -- ls -l /data 
  2. total 16 
  3. drwx------ 2 nobody 42949672 16384 Mar 31 04:16 lost+found 
  4.  
  5. root@ip-172-30-0-139:~# kubectl -n longhorn-system exec -it share-manager-pvc-f3775852-1e27-423f-96ab-95ccd04e4777 -- ls -l /export/pvc-f3775852-1e27-423f-96ab-95ccd04e4777 
  6. total 16 
  7. drwx------ 2 root root 16384 Mar 31 04:42 lost+found 

背景

share-manager 中的 nfs-ganesha 使用 idmapd 進行 NFSv4 ID 映射,并設置為使用 localdomain 作為其導出域。

原因

client(host) 和 server(share-manager) 之間 /etc/idmapd.conf 中的內容不匹配導致 ownership 更改。

讓我們看一個例子:

我們假設您沒有修改集群主機上的 /etc/idmapd.conf。對于某些操作系統,Domain = localdomain 被注釋掉,默認情況下它使用 FQDN 減去 hostname。

當主機名為 ip-172-30-0-139 且 FQDN 為 ip-172-30-0-139.lan 時,主機 idmapd 將使用 lan 作為 Domain。

  1. root@ip-172-30-0-139:/home/ubuntu# hostname 
  2. ip-172-30-0-139 
  3.  
  4. root@ip-172-30-0-139:/home/ubuntu# hostname -f 
  5. ip-172-30-0-139.lan 

這導致 share-manager(localdomain) 和集群主機(lan)之間的域不匹配。因此觸發文件權限更改為使用 nobody。

  1. [Mapping] section variables 
  2.  
  3. Nobody-User 
  4. Local user name to be used when a mapping cannot be completed. 
  5. Nobody-Group 
  6. Local group name to be used when a mapping cannot be completed. 

解決方案

1.在所有群集主機上的 /etc/idmapd.conf 中取消注釋或添加 Domain = localdomain。

  1. root@ip-172-30-0-139:~# cat /etc/idmapd.conf  
  2. [General] 
  3.  
  4. Verbosity = 0 
  5. Pipefs-Directory = /run/rpc_pipefs 
  6. set your own domain here, if it differs from FQDN minus hostname 
  7. Domain = localdomain 
  8.  
  9. [Mapping] 
  10.  
  11. Nobody-User = nobody 
  12. Nobody-Group = nogroup 

2.刪除并重新創建 RWX 資源堆棧(pvc + pod)。

  1. root@ip-172-30-0-139:/home/ubuntu# kubectl exec -it volume-test -- ls -l /data 
  2. total 16 
  3. drwx------    2 root     root         16384 Mar 31 04:42 lost+found 

相關信息

  • 相關的 Longhorn issue:
    • https://github.com/longhorn/longhorn/issues/2357
  • 相關的 idmapd.conf 文檔:
    • https://linux.die.net/man/5/idmapd.conf

8. 由于節點上的多路徑,MountVolume.SetUp for volume 失敗

適用版本

所有 Longhorn 版本。

癥狀

帶有卷的 pod 未啟動并在 longhorn-csi-plugin 中遇到錯誤消息:

  1. time="2020-04-16T08:49:27Z" level=info msg="GRPC request: {\"target_path\":\"/var/lib/kubelet/pods/cf0a0b5b-106e-4793-a74a-28bfae21be1a/volumes/kubernetes.io~csi/pvc-d061512e-870a-4ece-bd45-2f04672d5256/mount\",\"volume_capability\":{\"AccessType\":{\"Mount\":{\"fs_type\":\"ext4\"}},\"access_mode\":{\"mode\":1}},\"volume_context\":{\"baseImage\":\"\",\"fromBackup\":\"\",\"numberOfReplicas\":\"3\",\"staleReplicaTimeout\":\"30\",\"storage.kubernetes.io/csiProvisionerIdentity\":\"1586958032802-8081-driver.longhorn.io\"},\"volume_id\":\"pvc-d061512e-870a-4ece-bd45-2f04672d5256\"}" 
  2. time="2020-04-16T08:49:27Z" level=info msg="NodeServer NodePublishVolume req: volume_id:\"pvc-d061512e-870a-4ece-bd45-2f04672d5256\" target_path:\"/var/lib/kubelet/pods/cf0a0b5b-106e-4793-a74a-28bfae21be1a/volumes/kubernetes.io~csi/pvc-d061512e-870a-4ece-bd45-2f04672d5256/mount\" volume_capability:<mount:<fs_type:\"ext4\" > access_mode:<mode:SINGLE_NODE_WRITER > > volume_context:<key:\"baseImage\" value:\"\" > volume_context:<key:\"fromBackup\" value:\"\" > volume_context:<key:\"numberOfReplicas\" value:\"3\" > volume_context:<key:\"staleReplicaTimeout\" value:\"30\" > volume_context:<key:\"storage.kubernetes.io/csiProvisionerIdentity\" value:\"1586958032802-8081-driver.longhorn.io\" > " 
  3. E0416 08:49:27.567704 1 mount_linux.go:143] Mount failed: exit status 32 
  4. Mounting command: mount 
  5. Mounting arguments: -t ext4 -o defaults /dev/longhorn/pvc-d061512e-870a-4ece-bd45-2f04672d5256 /var/lib/kubelet/pods/cf0a0b5b-106e-4793-a74a-28bfae21be1a/volumes/kubernetes.io~csi/pvc-d061512e-870a-4ece-bd45-2f04672d5256/mount 
  6. Output: mount: /var/lib/kubelet/pods/cf0a0b5b-106e-4793-a74a-28bfae21be1a/volumes/kubernetes.io~csi/pvc-d061512e-870a-4ece-bd45-2f04672d5256/mount: /dev/longhorn/pvc-d061512e-870a-4ece-bd45-2f04672d5256 already mounted or mount point busy. 
  7. E0416 08:49:27.576477 1 mount_linux.go:487] format of disk "/dev/longhorn/pvc-d061512e-870a-4ece-bd45-2f04672d5256" failed: type:("ext4") target:("/var/lib/kubelet/pods/cf0a0b5b-106e-4793-a74a-28bfae21be1a/volumes/kubernetes.io~csi/pvc-d061512e-870a-4ece-bd45-2f04672d5256/mount") options:(["defaults"])error:(exit status 1) 
  8. time="2020-04-16T08:49:27Z" level=error msg="GRPC error: rpc error: code = Internal desc = exit status 1" 

詳情

這是由于多路徑為任何符合條件的設備路徑創建了多路徑設備,包括未明確列入黑名單的每個 Longhorn 卷設備。

故障排除

1.查找 Longhorn 設備的 major:minor 編號。在節點上,嘗試 ls -l /dev/longhorn/。major:minor 編號將顯示在設備名稱前,例如 8、32。

  1. ls -l /dev/longhorn 
  2. brw-rw---- 1 root root 8, 32 Aug 10 21:50 pvc-39c0db31-628d-41d0-b05a-4568ec02e487 

2.查找 Linux 為相同的 major:minor 編號生成的設備是什么。使用 ls -l /dev 并找到相同 major:minor 編號的設備,例如 /dev/sde。

  1. brw-rw---- 1 root disk      8,  32 Aug 10 21:50 sdc 

找到進程。使用 lsof 獲取正在使用的文件處理程序列表,然后使用 grep 獲取設備名稱(例如 sde 或 /dev/longhorn/xxx。您應該在那里找到一個。

  1. lsof | grep sdc 
  2. multipath 514292                              root    8r      BLK               8,32        0t0        534 /dev/sdc 
  3. multipath 514292 514297 multipath             root    8r      BLK               8,32        0t0        534 /dev/sdc 
  4. multipath 514292 514299 multipath             root    8r      BLK               8,32        0t0        534 /dev/sdc 
  5. multipath 514292 514300 multipath             root    8r      BLK               8,32        0t0        534 /dev/sdc 
  6. multipath 514292 514301 multipath             root    8r      BLK               8,32        0t0        534 /dev/sdc 
  7. multipath 514292 514302 multipath             root    8r      BLK               8,32        0t0        534 /dev/sdc 
  8. multipath 514292 514304 multipath             root    8r      BLK       

解決方案

按照以下步驟防止多路徑守護進程(multipath daemon)添加由 Longhorn 創建的額外塊設備。

首先使用 lsblk 檢查 Longhorn 創建的設備:

  1. root@localhost:~# lsblk 
  2. NAME MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT 
  3. sda    8:0    0 79.5G  0 disk / 
  4. sdb    8:16   0  512M  0 disk [SWAP] 
  5. sdc    8:32   0    1G  0 disk /var/lib/kubelet/pods/c2c2b848-1f40-4727-8a52-03a74f9c76b9/volumes/kubernetes.io~csi/pvc-859bc3c9-faa8-4f54-85e4-b12935b5ae3c/mount 
  6. sdd    8:48   0    1G  0 disk /var/lib/kubelet/pods/063a181a-66ac-4644-8268-9215305f9b73/volumes/kubernetes.io~csi/pvc-837eb6ac-45fe-4de7-9c97-8d371eb02190/mount 
  7. sde    8:64   0    1G  0 disk /var/lib/kubelet/pods/4c80842d-7257-4b91-b668-bb5b111da003/volumes/kubernetes.io~csi/pvc-c01cee3e-f292-4979-b183-6546d6397fbd/mount 
  8. sdf    8:80   0    1G  0 disk /var/lib/kubelet/pods/052dadd9-042a-451c-9bb1-2d9418f0381f/volumes/kubernetes.io~csi/pvc-ba7a5c9a-d84d-4cb0-959d-3db39f34d81b/mount 
  9. sdg    8:96   0    1G  0 disk /var/lib/kubelet/pods/7399b073-c262-4963-8c7f-9e481272ea36/volumes/kubernetes.io~csi/pvc-2b122b42-141a-4181-b8fd-ce3cf91f6a64/mount 
  10. sdh    8:112  0    1G  0 disk /var/lib/kubelet/pods/a63d919d-201b-4eb1-9d84-6440926211a9/volumes/kubernetes.io~csi/pvc-b7731785-8364-42a8-9e7d-7516801ab7e0/mount 
  11. sdi    8:128  0    1G  0 disk /var/lib/kubelet/pods/3e056ee4-bab4-4230-9054-ab214bdf711f/volumes/kubernetes.io~csi/pvc-89d37a02-8480-4317-b0f1-f17b2a886d1d/mount 

請注意,Longhorn 設備名稱以 /dev/sd[x] 開頭

  • 如果不存在,則創建默認配置文件 /etc/multipath.conf
  • 將以下行添加到黑名單部分 devnode "^sd[a-z0-9]+"
  1. blacklist { 
  2.     devnode "^sd[a-z0-9]+" 
  • 重啟多路徑服務
  1. systemctl restart multipathd.service 
  • 驗證是否應用了配置
  1. multipath -t 

多路徑黑名單部分的默認配置默認阻止以下設備名稱 ^(ram|raw|loop|fd|md|dm-|sr|scd|st|dcssblk)[0-9] ^(td|hd|vd)[a-z]

相關信息

  • 相關 Longhorn issue:
    • https://github.com/longhorn/longhorn/issues/1210
  • 相關手冊
    • http://manpages.org/multipathconf/5

9. Longhorn-UI:WebSocket 握手期間出錯:意外響應代碼:200 #2265

適用版本

現有 Longhorn 版本 < v1.1.0 升級到 Longhorn >= v1.1.0。

癥狀

Longhorn 升級到版本 >= v1.1.0 后,遇到如下情況:

入口消息:

  1. {"level":"error","msg":"vulcand/oxy/forward/websocket: Error dialing \"10.17.1.246\": websocket: bad handshake with resp: 200 200 OK","time":"2021-03-09T08:29:03Z"

Longhorn UI 消息:

  1. 10.46.0.3 - - [19/Feb/2021:11:33:24 +0000] "GET /node/v1/ws/1s/engineimages HTTP/1.1" 200 578 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68" 
  2. 10.46.0.3 - - [19/Feb/2021:11:33:29 +0000] "GET /node/v1/ws/1s/volumes HTTP/1.1" 200 578 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68" 
  3. 10.46.0.3 - - [19/Feb/2021:11:33:32 +0000] "GET /node/v1/ws/1s/nodes HTTP/1.1" 200 578 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68" 
  4. 10.46.0.3 - - [19/Feb/2021:11:33:37 +0000] "GET /node/v1/ws/1s/events HTTP/1.1" 200 578 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68" 
  5. 10.46.0.3 - - [19/Feb/2021:11:33:38 +0000] "GET /node/v1/ws/1s/engineimages HTTP/1.1" 200 578 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68" 
  6. 10.46.0.3 - - [19/Feb/2021:11:33:41 +0000] "GET /node/v1/ws/1s/volumes HTTP/1.1" 200 578 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/88.0.4324.150 Safari/537.36 Edg/88.0.705.68" 

原因

為了支持不同的路由(Rancher-Proxy、NodePort、Ingress 和 Nginx),Longhorn v1.1.0 重新構建了 UI 以使用 hash history,原因有兩個:

  • 支持 Longhorn UI 路由到不同路徑。例如,/longhorn/#/dashboard
  • 通過分離前端和后端來支持單頁應用程序。

結果,/ 更改為 /#/

之后,輸出消息應類似于以下內容:

Ingress 消息應該沒有 websocket 錯誤:

  1. time="2021-03-16T04:54:23Z" level=debug msg="websocket: open" id=6809628160892941023 type=events 
  2. time="2021-03-16T04:54:23Z" level=debug msg="websocket: open" id=3234910863291903636 type=engineimages 
  3. time="2021-03-16T04:54:23Z" level=debug msg="websocket: open" id=2117763315178050120 type=backingimages 
  4. time="2021-03-16T04:54:23Z" level=debug msg="websocket: open" id=621105775322000457 type=volumes 

Longhorn UI 消息:

使用 Ingress:

  1. 10.42.0.8 - - [16/Mar/2021:04:54:34 +0000] "GET /v1/nodes HTTP/1.1" 200 6729 "http://10.17.0.169/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  2. 10.42.0.8 - - [16/Mar/2021:04:54:34 +0000] "GET /v1/backingimages HTTP/1.1" 200 117 "http://10.17.0.169/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  3. 10.42.0.8 - - [16/Mar/2021:04:54:34 +0000] "GET /v1/volumes HTTP/1.1" 200 162 "http://10.17.0.169/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  4. 10.42.0.8 - - [16/Mar/2021:04:54:34 +0000] "GET /v1/engineimages HTTP/1.1" 200 1065 "http://10.17.0.169/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  5. 10.42.0.8 - - [16/Mar/2021:04:54:34 +0000] "GET /v1/settings HTTP/1.1" 200 30761 "http://10.17.0.169/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  6. 10.42.0.8 - - [16/Mar/2021:04:54:34 +0000] "GET /v1/events HTTP/1.1" 200 62750 "http://10.17.0.169/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 

使用 Proxy:

  1. 10.42.0.0 - - [16/Mar/2021:05:03:51 +0000] "GET /v1/engineimages HTTP/1.1" 200 1070 "http://localhost:8001/api/v1/namespaces/longhorn-system/services/http:longhorn-frontend:80/proxy/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  2. 10.42.0.0 - - [16/Mar/2021:05:03:51 +0000] "GET /v1/events HTTP/1.1" 200 62904 "http://localhost:8001/api/v1/namespaces/longhorn-system/services/http:longhorn-frontend:80/proxy/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  3. 10.42.0.0 - - [16/Mar/2021:05:03:52 +0000] "GET /v1/engineimages HTTP/1.1" 200 1071 "http://localhost:8001/api/v1/namespaces/longhorn-system/services/http:longhorn-frontend:80/proxy/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  4. 10.42.0.0 - - [16/Mar/2021:05:03:52 +0000] "GET /v1/nodes HTTP/1.1" 200 6756 "http://localhost:8001/api/v1/namespaces/longhorn-system/services/http:longhorn-frontend:80/proxy/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  5. 10.42.0.0 - - [16/Mar/2021:05:03:52 +0000] "GET /v1/settings HTTP/1.1" 200 30882 "http://localhost:8001/api/v1/namespaces/longhorn-system/services/http:longhorn-frontend:80/proxy/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  6. 10.42.0.0 - - [16/Mar/2021:05:03:52 +0000] "GET /v1/volumes HTTP/1.1" 200 168 "http://localhost:8001/api/v1/namespaces/longhorn-system/services/http:longhorn-frontend:80/proxy/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  7. 10.42.0.0 - - [16/Mar/2021:05:03:52 +0000] "GET /v1/backingimages HTTP/1.1" 200 120 "http://localhost:8001/api/v1/namespaces/longhorn-system/services/http:longhorn-frontend:80/proxy/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 
  8. 10.42.0.0 - - [16/Mar/2021:05:03:52 +0000] "GET /v1/events HTTP/1.1" 200 62900 "http://localhost:8001/api/v1/namespaces/longhorn-system/services/http:longhorn-frontend:80/proxy/" "Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/89.0.4389.90 Safari/537.36" 

解決方案

  1. 清除瀏覽器緩存。
  2. /# 訪問/重新收藏 Longhorn URL。

相關信息

  • 相關 Longhorn issue:
    • https://github.com/longhorn/longhorn/issues/2265
    • https://github.com/longhorn/longhorn/issues/1660

10. Longhorn 卷需要很長時間才能完成安裝

適用版本

所有 Longhorn 版本。

癥狀

啟動使用 Longhorn 卷的工作負載 pod 時,Longhorn UI 顯示 Longhorn 卷連接很快,但卷完成掛載和工作負載能夠啟動需要很長時間。

僅當 Longhorn 卷具有許多文件/目錄并且在工作負載 pod 中設置 securityContext.fsGroup 時才會發生此問題,如下所示:

  1. spec: 
  2.   securityContext: 
  3.     runAsUser: 1000 
  4.     runAsGroup: 3000 
  5.     fsGroup: 2000 

原因

默認情況下,當看到 fsGroup 字段時,每次掛載卷時,Kubernetes 都會對卷內的所有文件和目錄遞歸調用 chown() 和 chmod()。即使卷的組所有權已經與請求的 fsGroup 匹配,也會發生這種情況,并且對于包含大量小文件的較大卷來說可能非常昂貴,這會導致 pod 啟動需要很長時間。

解決方案

在 Kubernetes v1.19.x 及之前版本中沒有解決此問題的方法。

自從版本 1.20.x 以來,Kubernetes 引入了一個新的 beta 特性:字段 fsGroupChangePolicy。即,

  1. spec: 
  2.   securityContext: 
  3.     runAsUser: 1000 
  4.     runAsGroup: 3000 
  5.     fsGroup: 2000 
  6.     fsGroupChangePolicy: "OnRootMismatch" 

當 fsGroupChangePolicy 設置為 OnRootMismatch 時,如果卷的根已具有正確的權限,則將跳過遞歸權限和所有權更改。這意味著,如果用戶在 pod 啟動之間不更改 pod.spec.securityContext.fsGroup,K8s 只需檢查根目錄的權限和所有權,與總是遞歸地更改卷的所有權和權限相比,裝載過程將快得多。

相關信息

  • 相關 Longhorn issue:
    • https://github.com/longhorn/longhorn/issues/2131
  • 相關 Kubernetes 文檔:
    • https://kubernetes.io/blog/2020/12/14/kubernetes-release-1.20-fsgroupchangepolicy-fsgrouppolicy/#allow-users-to-skip-recursive-permission-changes-on-mount

11. volume readonly or I/O error

適用版本

所有 Longhorn 版本。

癥狀

當應用程序將數據寫入現有文件或在 Longhorn 卷的掛載點創建文件時,將顯示以下消息:

  1. / # cd data 
  2. /data # echo test > test 
  3. sh: can't create test: I/O error 

在相關 pod 或節點主機中運行 dmesg 時,會顯示以下消息:

  1. [1586907.286218] EXT4-fs (sdc): mounted filesystem with ordered data mode. Opts: (null
  2. [1587396.152106] EXT4-fs warning (device sdc): ext4_end_bio:323: I/O error 10 writing to inode 12 (offset 0 size 4096 starting block 33026) 
  3. [1587403.789877] EXT4-fs error (device sdc): ext4_find_entry:1455: inode #2: comm sh: reading directory lblock 0 
  4. [1587404.353594] EXT4-fs warning (device sdc): htree_dirblock_to_tree:994: inode #2: lblock 0: comm ls: error -5 reading directory block 
  5. [1587404.353598] EXT4-fs error (device sdc): ext4_journal_check_start:61: Detected aborted journal 
  6. [1587404.355087] EXT4-fs (sdc): Remounting filesystem read-only 
  7. ...... 

使用 `kubectl -n longhorn-system get event 檢查事件時 | grep ,顯示如下事件:

使用 kubectl -n longhorn-system get event | grep 檢查事件時,顯示如下事件:

  1. 2m26s       Warning   DetachedUnexpectly       volume/pvc-342edde0-d3f4-47c6-abf6-bf8eeda3c32c               Engine of volume pvc-342edde0-d3f4-47c6-abf6-bf8eeda3c32c dead unexpectedly, reattach the volume 

通過運行 kubectl -n longhorn-system logs | grep ,在工作負載運行的節點上檢查 Longhorn manager pod 的日志時,顯示以下消息:

  1. time="2021-01-05T11:20:46Z" level=debug msg="Instance handler updated instance pvc-342edde0-d3f4-47c6-abf6-bf8eeda3c32c-e-0fe2dac3 state, old state running, new state error" 
  2. time="2021-01-05T11:20:46Z" level=warning msg="Instance pvc-342edde0-d3f4-47c6-abf6-bf8eeda3c32c-e-0fe2dac3 crashed on Instance Manager instance-manager-e-a1fd54e4 at shuo-cluster-0-worker-3, try to get log" 
  3. ...... 
  4. time="2021-01-05T11:20:46Z" level=warning msg="Engine of volume dead unexpectedly, reattach the volume" accessMode=rwo controller=longhorn-volume frontend=blockdev node=shuo-cluster-0-worker-3 owner=shuo-cluster-0-worker-3 state=attached volume=pvc-342edde0-d3f4-47c6-abf6-bf8eeda3c32c 
  5. ...... 
  6. time="2021-01-05T11:20:46Z" level=info msg="Event(v1.ObjectReference{Kind:\"Volume\", Namespace:\"longhorn-system\", Name:\"pvc-342edde0-d3f4-47c6-abf6-bf8eeda3c32c\", UID:\"69bb0f94-da48-4d15-b861-add435f25d00\", APIVersion:\"longhorn.io/v1beta1\", ResourceVersion:\"7466467\", FieldPath:\"\"}): type: 'Warning' reason: 'DetachedUnexpectly' Engine of volume pvc-342edde0-d3f4-47c6-abf6-bf8eeda3c32c dead unexpectedly, reattach the volume" 

失敗原因

一旦 Longhorn 卷意外崩潰,Longhorn 卷的掛載點將失效。那么就無法通過掛載點讀取或寫入 Longhorn 卷中的數據。

根本原因

引擎崩潰通常是由于失去與每個副本的連接而導致的。以下是發生這種情況的可能原因:

1.節點上的 CPU 利用率過高。如果 Longhorn 引擎沒有足夠的 CPU 資源來處理請求,則請求可能會超時,導致與副本的連接丟失。您可以參考下面文檔,了解如何為 Longhorn 實例管理器 Pod 預留適當數量的 CPU 資源。

https://longhorn.io/docs/1.1.0/best-practices/#guaranteed-engine-cpu

2.網絡帶寬不夠。通常,如果所有這些卷都運行高密集型工作負載,則 1Gbps 網絡將只能為 3 個卷提供服務。

3.網絡延遲相對較高。如果一個節點上同時有多個卷 r/w,最好保證延遲小于 20ms。

4.網絡中斷。它可能導致所有副本斷開連接,然后引擎崩潰。

5.磁盤性能太低,無法及時完成請求。我們不建議在 Longhorn 系統中使用低 IOPS 磁盤(例如旋轉磁盤)。

自動恢復

對于 v1.1.0 之前的 Longhorn 版本,Longhorn 會嘗試自動重新掛載卷,但它可以處理的場景有限。

從 Longhorn v1.1.0 版本開始,引入了一個新設置“卷意外分離時自動刪除工作負載 Pod(Automatically Delete Workload Pod when The Volume Is Detached Unexpectedly)”,以便 Longhorn 將自動刪除由控制器管理的工作負載 Pod(例如 deployment、statefulset、daemonset 等)。

手動恢復

如果工作負載是一個簡單的 pod,您可以刪除并重新部署 pod。如果回收策略不是 Retain,請確保相關 PVC 或 PV 未被刪除。否則,一旦相關的 PVC/PV 消失,Longhorn 卷將被刪除。

如果工作負載 Pod 屬于 Deployment/StatefulSet,您可以通過縮減然后擴展工作負載副本來重新啟動 Pod。

對于 Longhorn v1.1.0 或更高版本,您可以啟用設置“卷意外分離時自動刪除工作負載 Pod(Automatically Delete Workload Pod when The Volume Is Detached Unexpectedly)”。

其他原因

當相關工作負載仍在使用卷時,用戶意外或手動分離了 Longhorn 卷。

相關信息

  • 最小資源需求調查和結果:
    • https://github.com/longhorn/longhorn/issues/1691
  • 設置 Automatically Delete Workload Pod when The Volume Is Detached Unexpectedly 的討論
    • https://github.com/longhorn/longhorn/issues/1719

12. volume pvc-xxx not scheduled

適用版本

所有 Longhorn 版本。

癥狀

使用 Longhorn Volume 作為 PVC 創建 Pod 時,Pod 無法啟動。

使用 kubectl describe 檢查錯誤消息時,會顯示以下消息:

  1. Warning  FailedAttachVolume  4m29s (x3 over 5m33s)  attachdetach-controller     AttachVolume.Attach failed for volume "pvc-xxx" : rpc error: code = Internal desc = Bad response statusCode [500]. Status [500 Internal Server Error]. Body: [message=unable to attach volume pvc-xxx to node-xxx: volume pvc-xxx not scheduled, code=Server Error, detail=] from [http://longhorn-backend:9500/v1/volumes/pvc-xxx?action=attach] 

在上面的錯誤中注意到 Longhorn 返回的消息:

  1. unable to attach volume pvc-xxx to node-xxx: volume pvc-xxx not scheduled 

詳情

這是由于 Longhorn 在不同節點上找不到足夠的空間來存儲卷的數據,導致卷調度失敗。

最常見的原因

對于 Longhorn v1.0.x,默認 Longhorn 安裝有以下設置:

  1. Node Level Soft Anti-affinity: false
  2. 默認 StorageClass longhorn 的副本計數設置為 3。

這意味著 Longhorn 將始終嘗試在三個不同節點上為三個副本分配足夠的空間。

如果無法滿足此要求,例如 由于集群中的節點少于 3 個,卷調度將失敗。

解決方案

如果是這種情況,您可以:

  1. 要么將節點級軟反親和性(Node Level Soft Anti-affinity)設置為 true。
  2. 或者,創建一個副本數設置為 1 或 2 的新 StorageClass。
  3. 或者,向集群添加更多節點。

其他原因

有關調度策略的詳細說明,請參閱 Longhorn 文檔中的調度部分。

https://longhorn.io/docs/1.0.2/volumes-and-nodes/scheduling/

相關信息

從 Longhorn v1.1.0 開始,我們將引入一個新設置 Allow Volume Creation With Degraded Availability(默認為 true),以幫助處理較小集群上的用例。

  • https://github.com/longhorn/longhorn/issues/1701

 

責任編輯:武曉燕 來源: 黑客下午茶
相關推薦

2021-09-03 05:00:28

分布式存儲云原生

2021-08-29 23:53:32

存儲Air Gap安裝

2021-08-26 00:23:14

分布式存儲高可用

2021-08-17 00:24:38

塊存儲云原生分布式

2021-08-24 05:02:34

云原生容器分布式

2022-02-21 10:17:33

Rancher開源云原生

2021-08-25 05:05:26

存儲 備份恢復

2021-08-28 05:04:19

存儲云原生分布式

2021-08-26 23:54:46

分布式存儲負載

2021-08-17 12:36:21

Longhorn云原生存儲

2020-08-24 07:08:37

分布式云云遷移云計算

2019-04-30 09:17:31

Ceph存儲OSD

2021-08-18 14:33:53

存儲云原生容器

2023-09-14 15:38:55

云原生分布式架構

2022-10-10 17:21:50

固態硬盤分布式云存儲

2017-10-27 08:40:44

分布式存儲剪枝系統

2021-10-13 10:24:29

云計算首席信息官分布式云

2022-09-15 21:04:20

JuiceFS云原生

2020-03-03 10:47:47

LinuxSystemdDocker
點贊
收藏

51CTO技術棧公眾號

在线看免费毛片| 亚洲 国产 日韩 综合一区| 久久久久久久蜜桃| 欧美一级三级| 欧美精品三级在线观看| 福利视频免费在线观看| 黄色影院在线播放| 国产乱人伦偷精品视频免下载| 久久久伊人欧美| 午夜精产品一区二区在线观看的| 伊人久久大香| 欧美日韩国产一区二区| 伊人久久大香线蕉午夜av| 日本人妻熟妇久久久久久| 日韩中文字幕亚洲一区二区va在线| 免费97视频在线精品国自产拍| 国产精品无码专区| 日韩一区二区三区四区五区 | 91网站免费视频| 成人网av.com/| 色综合欧美在线| 欧美另类videosbestsex日本| 性感美女一级片| 精品一区二区三区视频在线观看| 91精品国产777在线观看| 人人干在线观看| 欧美大片网址| 日韩三级中文字幕| 人人干人人干人人| 涩涩视频在线播放| 亚洲最新在线观看| 国产a级片免费看| 国产高清视频在线| 99精品在线观看视频| 51国产成人精品午夜福中文下载| 波多野结衣视频观看| 亚洲国产婷婷| 欧美精品在线观看| 欧美a级片免费看| 精品成人影院| 亚洲精品视频在线播放| 欧美一区二区三区影院| 一区二区三区日本视频| 欧美性一二三区| www.玖玖玖| 91超碰在线| 夜色激情一区二区| 免费看日b视频| 日本福利在线| 国产精品伦一区二区三级视频| 欧美极品一区二区| 天堂av网在线| 91老司机福利 在线| 久久精品99久久| 无码国产精品高潮久久99| 国产91精品精华液一区二区三区 | 国产深夜男女无套内射| 欧美男男video| 亚洲精品乱码久久久久久日本蜜臀| 一个色的综合| 精品欧美色视频网站在线观看| 国产精品妹子av| 亚洲欧美一区二区原创| 在线播放麻豆| 亚洲视频一二区| 波多野结衣激情| 2021国产在线| 亚洲一区二区三区在线播放| 日韩免费在线观看av| xxxx成人| 欧美三级免费观看| 欧美丰满熟妇xxxxx| av一区在线播放| 欧美日韩国产三级| 一级片免费在线观看视频| 日本精品国产| 亚洲国产福利在线| 成人片黄网站色大片免费毛片| 少妇精品久久久一区二区| 在线观看久久av| 亚洲成人生活片| 亚洲电影成人| 国产精品福利片| 国产女同91疯狂高潮互磨| 国产乱理伦片在线观看夜一区| 国产a一区二区| 牛牛影视精品影视| 中文字幕一区av| av日韩一区二区三区| 波多野结衣久久精品| 欧美特级限制片免费在线观看| 天堂网成人在线| 老司机精品在线| 一本色道久久88综合日韩精品| 卡通动漫亚洲综合| 制服诱惑一区二区| 国产精品无av码在线观看| 亚洲狼人综合网| 久久久久免费观看| 国产一二三四五| 小h片在线观看| 91精品国产综合久久精品性色| 无码人妻精品一区二区三| 国产精品三级| 欧美精品xxx| 最新中文字幕免费| 成人视屏免费看| 亚洲成人精品电影在线观看| 丁香花在线观看完整版电影| 欧美在线观看视频在线| 亚洲无人区码一码二码三码| 免费一区二区三区视频导航| 久久99亚洲热视| 国产在线观看第一页| 国产乱妇无码大片在线观看| 亚洲国产日韩欧美| 涩涩涩视频在线观看| 日韩视频免费直播| 人妻无码一区二区三区免费| 亚洲另类自拍| 91精品黄色| 最近高清中文在线字幕在线观看| 午夜激情一区二区| 中国老熟女重囗味hdxx| 日韩亚洲一区在线| 日本aⅴ大伊香蕉精品视频| 精品国自产拍在线观看| 国产精品成人网| www.色偷偷.com| 亚洲成a人片77777在线播放| 欧美激情欧美狂野欧美精品| 国产精品久久久久久69| 中文久久乱码一区二区| 久久久噜噜噜www成人网| 大伊香蕉精品在线品播放| 久久精品免费播放| 中文字幕在线日亚洲9| 久久久久久久久岛国免费| 人妻av中文系列| 爱高潮www亚洲精品| 欧美精品在线免费观看| 国产精品无码天天爽视频| 国产精品乱码妇女bbbb| 成人免费xxxxx在线视频| 综合伊思人在钱三区| 欧洲亚洲免费视频| 天堂av电影在线观看| 欧美日韩国产区| 亚洲av无码国产精品久久| 1024成人| 久久久精彩视频| 精精国产xxxx视频在线播放| 亚洲精美色品网站| 日韩乱码在线观看| av成人免费在线观看| 一二三四视频社区在线| 日韩深夜影院| 日本久久91av| 国产免费av高清在线| 欧美影视一区二区三区| 人妻互换一区二区激情偷拍| 蜜臀av性久久久久蜜臀av麻豆 | 男人女人拔萝卜视频| 欧美一区视频| 国产一区二区三区奇米久涩 | 日韩中文首页| 国产区亚洲区欧美区| 国产色在线观看| 日韩欧美成人激情| 欧美福利视频一区二区| 久久一区二区视频| 午夜激情av在线| 亚洲激情久久| 国产亚洲自拍偷拍| 另类激情视频| 久久精品91久久久久久再现| www.久久成人| 精品久久久久久久久久久久久久| 精品人妻无码一区二区三区换脸| 老司机精品视频在线| 欧美日韩中文字幕在线播放 | 久草这里只有精品视频| 久久综合亚洲精品| 欧美人妖在线| 999国内精品视频在线| 国产在线看片免费视频在线观看| 国产一区二区三区直播精品电影| 91午夜交换视频| 亚洲国产成人91porn| 一级黄色录像毛片| 国产成人8x视频一区二区| 日本在线观看a| 午夜激情久久| 免费成人深夜夜行视频| 97精品资源在线观看| 91国内在线视频| 日本在线天堂| 日韩av一区二区在线| 一级特黄特色的免费大片视频| 亚洲一区视频在线| 欧美人妻一区二区三区| 福利一区福利二区| 天天干天天干天天干天天干天天干| 狠狠88综合久久久久综合网| 视频一区不卡| 国偷自产视频一区二区久| 国产精品一区久久| 日韩在线伦理| 欧美日本精品在线| 波多野结衣一区二区| 亚洲福利视频网站| 99热这里是精品| 91精品1区2区| 日韩 欧美 亚洲| 亚洲男帅同性gay1069| 91成年人网站| caoporm超碰国产精品| 想看黄色一级片| 久久久久久久波多野高潮日日| www.av蜜桃| 一精品久久久| 亚洲在线视频一区二区| 蜜桃一区二区三区| 精品视频一区二区三区四区| 欧美电影在线观看一区| 国产区精品视频| 视频精品导航| 日本成人精品在线| 绿色成人影院| 久久久在线视频| 永久免费网站在线| www.久久久久| 日韩理伦片在线| 中文字幕无线精品亚洲乱码一区 | 国产区一区二| 国产日韩欧美在线观看| 日本精品另类| 国产国语刺激对白av不卡| 欧美日韩国产观看视频| 欧美精品国产精品日韩精品| 尤物在线网址| 欧美激情综合色| 亚洲奶水xxxx哺乳期| 久久久97精品| 国产cdts系列另类在线观看| 久久精品成人一区二区三区| 日本视频在线播放| 久久精品国产一区二区三区| 国产三级在线播放| 久久国产精品免费视频| 中文国产字幕在线观看| 欧美理论片在线观看| av网址在线| 欧美国产亚洲视频| 第四色日韩影片| 97精品视频在线| 午夜欧美激情| 国产精品久久一区| 国产超碰精品| 国产精品一区二区三区免费视频 | 好吊日视频在线观看| 久久午夜a级毛片| 亚洲男同gay网站| 91国内在线视频| 九九热线视频只有这里最精品| 日韩美女视频中文字幕| 成人一区视频| 亚洲自拍高清视频网站| 丁香综合av| 欧美激情国产日韩| 99热国内精品| 成人黄色大片网站| 亚洲欧美日本日韩| 亚洲36d大奶网| 国产高清无密码一区二区三区| 图片区偷拍区小说区| 久久综合色综合88| 亚洲一区 欧美| 一二三四社区欧美黄| 丁香六月婷婷综合| 欧美日本一区二区三区四区| 亚洲av无码片一区二区三区| 亚洲精品久久久久久久久久久久| 国产一区二区三区不卡在线| 日韩性生活视频| japanese色国产在线看视频| 日本一区二区在线免费播放| 伊人久久大香| 久久国产欧美精品| 亚洲成av人片一区二区密柚| 免费国产a级片| 久久成人免费网站| 亚洲国产精品无码久久久久高潮 | 欧美男体视频| 成人信息集中地欧美| 老司机成人在线| 中国成人在线视频| 国产日本精品| 日韩在线一区视频| 91蜜桃网址入口| 亚洲最大的黄色网址| 欧美性猛交xxxx黑人猛交| 国产情侣av在线| 亚洲欧美制服综合另类| 青春草免费在线视频| 国产精品精品一区二区三区午夜版| 美女精品视频在线| 三区精品视频| 国产一区二区三区久久| 亚洲精品免费一区亚洲精品免费精品一区 | 久久精品国产精品亚洲色婷婷| 精东粉嫩av免费一区二区三区| 青青草成人免费视频| 亚洲最大的成人av| 中文字幕一区2区3区| 精品呦交小u女在线| 调教一区二区| 91性高湖久久久久久久久_久久99| 小说区图片区色综合区| 国产成a人亚洲精v品在线观看| 蜜臀va亚洲va欧美va天堂| 亚洲午夜久久久久久久久红桃| 亚洲综合在线免费观看| 91在线精品入口| 在线播放日韩av| 欧美日韩免费看片| 国产一区二区高清不卡| 狠狠色丁香久久综合频道 | 成人动漫一区二区三区| 欧美 日韩 国产 一区二区三区| 欧美在线一区二区三区| 巨骚激情综合| 2020国产精品视频| 精品福利一区| 97干在线视频| 国产黄色精品视频| 日本中文在线视频| 欧美肥妇毛茸茸| 免费av在线网址| 国产日韩专区在线| 日韩一区二区在线| 小泽玛利亚视频在线观看| 欧美国产1区2区| 最近中文字幕在线观看| 一区二区三区高清国产| 外国电影一区二区| 亚洲春色在线视频| 蜜桃一区二区三区在线| youjizz亚洲女人| 欧美日韩二区三区| 黄色小网站在线观看| 91嫩草视频在线观看| 欧美日韩一区二区三区四区在线观看| 秋霞午夜鲁丝一区二区 | 女人十八岁毛片| 亚洲欧美国产精品专区久久| av日韩亚洲| 四虎永久在线精品免费一区二区| 日韩福利视频网| 久久99久久99精品免费看小说| 91精品国产丝袜白色高跟鞋| 97caopron在线视频| 成人av免费在线看| 一本一道久久综合狠狠老精东影业| 少妇饥渴放荡91麻豆| 在线一区二区三区四区五区| 91av资源在线| 亚洲自拍偷拍一区| 亚洲美女色禁图| 国产女主播喷水高潮网红在线| 欧美在线三级电影| 麻豆电影在线播放| 成人毛片网站| 先锋影音久久久| 国产又粗又猛又爽又黄的视频四季 | 精品久久免费| 欧美变态另类刺激| 国产亲近乱来精品视频| 国产免费高清av| 91精品国产91| 91综合久久| www.美色吧.com| 在线亚洲高清视频| 超碰在线观看免费| 蜜桃网站成人| 国产一区二区在线看| 久久狠狠高潮亚洲精品| 日韩中文字幕在线视频| 波多野结衣欧美| 韩国中文字幕av| 亚洲一区二区三区在线| 国产三级在线免费| av一区二区三区在线观看| 裸体素人女欧美日韩| 三级影片在线看| 亚洲视频在线观看免费| 日韩精品一区二区三区中文在线| 日韩网址在线观看| 一区二区三区在线观看欧美| 欧美黄色小说|