Failed to create SubnetManager: error retrieving pod spec for ‘kube-system/kube-flannel-ds-amd64-xxx

2023-11-08

kubelet报错如下:

kubelet[3807]: E1215 18:01:25.516905    3807 aws_credentials.go:77] while getting AWS credentials NoCredentialProviders: no valid providers in chain. Deprecated.
12月 15 18:01:25 localhost.localdomain kubelet[3807]: For verbose messaging see aws.Config.CredentialsChainVerboseErrors
12月 15 18:01:25 localhost.localdomain kubelet[3807]: E1215 18:01:25.543568    3807 kubelet.go:1306] Image garbage collection failed once. Stats initialization may not have completed yet: failed to get imageFs info: unable to find data in memory cache
12月 15 18:01:25 localhost.localdomain kubelet[3807]: E1215 18:01:25.671787    3807 kubelet.go:1846] skipping pod synchronization - [container runtime status check may not have completed yet, PLEG is not healthy: pleg has yet to be successful]
12月 15 18:01:25 localhost.localdomain kubelet[3807]: E1215 18:01:25.772456    3807 kubelet.go:1846] skipping pod synchronization - container runtime status check may not have completed yet
12月 15 18:02:00 localhost.localdomain kubelet[3807]: E1215 18:02:00.080546    3807 pod_workers.go:191] Error syncing pod 47533b1b-9f9b-4f80-a706-13830cf1952c ("kube-flannel-ds-amd64-qqpxj_kube-system(47533b1b-9f9b-4f80-a706-13830cf1952c)"), skipping: failed to "StartContainer" for "kube-flannel" with CrashLoopBackOff: "back-off 10s restarting failed container=kube-flannel pod=kube-flannel-ds-amd64-qqpxj_kube-system(47533b1b-9f9b-4f80-a706-13830cf1952c)"

 

简单描述:

创建flannel网络时,有两个节点创建flannel.1网络失败,报错信息如上:

具体操作:

1.把之前三个节点无关的网卡全部下线,删除
ifconfig cni0 down 
ip link delete cni0
ip a
ifconfig nodelocaldns down 
ip link delete nodelocaldns
只保留最简单的几个
[root@localhost ~]# ip a
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
    link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
    inet 127.0.0.1/8 scope host lo
       valid_lft forever preferred_lft forever
2: ens192: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP group default qlen 1000
    link/ether 00:50:56:a1:72:53 brd ff:ff:ff:ff:ff:ff
    inet 10.182.0.103/24 brd 10.182.0.255 scope global noprefixroute ens192
       valid_lft forever preferred_lft forever
3: docker0: <NO-CARRIER,BROADCAST,MULTICAST,UP> mtu 1500 qdisc noqueue state DOWN group default 
    link/ether 02:42:9c:f2:30:33 brd ff:ff:ff:ff:ff:ff
    inet 172.17.0.1/16 brd 172.17.255.255 scope global docker0
       valid_lft forever preferred_lft forever
2.删除三个节点之前的网络数据缓存
 rm -rf /var/lib/cni/*
 rm -rf /run/flannel/*
 rm -rf /var/run/containerd/
3.重启docker kubelet kube-proxy
systemctl restart docker kubelet kube-proxy
4.重新部署flannel网络;cat kube-flannel.yaml
---
kind: Namespace
apiVersion: v1
metadata:
  name: kube-system
  labels:
    pod-security.kubernetes.io/enforce: privileged
---
kind: ClusterRole
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: flannel
rules:
- apiGroups:
  - ""
  resources:
  - pods
  verbs:
  - get
- apiGroups:
  - ""
  resources:
  - nodes
  verbs:
  - get
  - list
  - watch
- apiGroups:
  - ""
  resources:
  - nodes/status
  verbs:
  - patch
---
kind: ClusterRoleBinding
apiVersion: rbac.authorization.k8s.io/v1
metadata:
  name: flannel
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: flannel
subjects:
- kind: ServiceAccount
  name: flannel
  namespace: kube-system
---
apiVersion: v1
kind: ServiceAccount
metadata:
  name: flannel
  namespace: kube-system
---
kind: ConfigMap
apiVersion: v1
metadata:
  name: kube-flannel-cfg
  namespace: kube-system
  labels:
    tier: node
    app: flannel
data:
  cni-conf.json: |
    {
      "name": "cbr0",
      "cniVersion": "0.3.1",
      "plugins": [
        {
          "type": "flannel",
          "delegate": {
            "hairpinMode": true,
            "isDefaultGateway": true
          }
        },
        {
          "type": "portmap",
          "capabilities": {
            "portMappings": true
          }
        }
      ]
    }
  net-conf.json: |
    {
      "Network": "10.244.0.0/16",
      "Backend": {
        "Type": "vxlan"
      }
    }
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
  annotations:
    deprecated.daemonset.template.generation: '1'
  labels:
    app: flannel
    tier: node
  name: kube-flannel-ds-amd64
  namespace: kube-system
  resourceVersion: '112554485'
spec:
  revisionHistoryLimit: 10
  selector:
    matchLabels:
      app: flannel
  template:
    metadata:
      creationTimestamp: null
      labels:
        app: flannel
        tier: node
    spec:
      affinity:
        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
              - matchExpressions:
                  - key: beta.kubernetes.io/os
                    operator: In
                    values:
                      - linux
                  - key: beta.kubernetes.io/arch
                    operator: In
                    values:
                      - amd64
      containers:
        - args:
            - '--ip-masq'
            - '--kube-subnet-mgr'
          #  - '--kubeconfig-file=/etc/kubernetes/cfg/flannel.conf'
          command:
            - /opt/bin/flanneld
          env:
            - name: POD_NAME
              valueFrom:
                fieldRef:
                  apiVersion: v1
                  fieldPath: metadata.name
            - name: POD_NAMESPACE
              valueFrom:
                fieldRef:
                  apiVersion: v1
                  fieldPath: metadata.namespace
          image: 'easzlab/flannel:v0.13.0-amd64'
          imagePullPolicy: IfNotPresent
          name: kube-flannel
          resources:
            limits:
              cpu: 100m
              memory: 50Mi
            requests:
              cpu: 100m
              memory: 50Mi
          securityContext:
            capabilities:
              add:
                - NET_ADMIN
            privileged: false
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          volumeMounts:
            - mountPath: /run/flannel
              name: run
            - mountPath: /etc/kube-flannel/
              name: flannel-cfg
      dnsPolicy: ClusterFirst
      hostNetwork: true
      initContainers:
        - args:
            - '-f'
            - /etc/kube-flannel/cni-conf.json
            - /etc/cni/net.d/10-flannel.conflist
          command:
            - cp
          image: 'easzlab/flannel:v0.13.0-amd64'
          imagePullPolicy: IfNotPresent
          name: install-cni
          resources: {}
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          volumeMounts:
            - mountPath: /etc/cni/net.d
              name: cni
            - mountPath: /etc/kube-flannel/
              name: flannel-cfg
      restartPolicy: Always
      schedulerName: default-scheduler
      securityContext: {}
      serviceAccount: flannel
      serviceAccountName: flannel
      terminationGracePeriodSeconds: 30
      tolerations:
        - effect: NoSchedule
          operator: Exists
      volumes:
        - hostPath:
            path: /run/flannel
            type: ''
          name: run
        - hostPath:
            path: /etc/cni/net.d
            type: ''
          name: cni
        - configMap:
            defaultMode: 420
            name: kube-flannel-cfg
          name: flannel-cfg
  updateStrategy:
    rollingUpdate:
      maxUnavailable: 1
    type: RollingUpdate
# 部署命令
kubectl apply -f kube-flannel.yaml

[root@localhost lkpconf]# kubectl get pod -A
NAMESPACE     NAME                                      READY   STATUS    RESTARTS   AGE
kube-system   kube-flannel-ds-amd64-6bhjl               1/1     Running   0          33m
kube-system   kube-flannel-ds-amd64-h6t4v               1/1     Running   0          33m
kube-system   kube-flannel-ds-amd64-rfgqc               1/1     Running   0          33m
kuboard       kuboard-agent-3ebiqh-2-55748b6d98-4k7n7   1/1     Running   1          4h40m
kuboard       kuboard-agent-3ebiqh-8d699dfcb-8bfcf      1/1     Running   1          4h42m

flannel日志
I1216 06:20:52.477397       1 main.go:518] Determining IP address of default interface
I1216 06:20:52.479067       1 main.go:531] Using interface with name ens192 and address 10.182.0.102
I1216 06:20:52.479135       1 main.go:548] Defaulting external address to interface address (10.182.0.102)
W1216 06:20:52.479200       1 client_config.go:517] Neither --kubeconfig nor --master was specified.  Using the inClusterConfig.  This might not work.
I1216 06:20:52.692185       1 kube.go:119] Waiting 10m0s for node controller to sync
I1216 06:20:52.692254       1 kube.go:306] Starting kube subnet manager
I1216 06:20:53.692573       1 kube.go:126] Node controller sync successful
I1216 06:20:53.692655       1 main.go:246] Created subnet manager: Kubernetes Subnet Manager - 10.182.0.102
I1216 06:20:53.692681       1 main.go:249] Installing signal handlers
I1216 06:20:53.692918       1 main.go:390] Found network config - Backend type: vxlan
I1216 06:20:53.693136       1 vxlan.go:121] VXLAN config: VNI=1 Port=0 GBP=false Learning=false DirectRouting=false
I1216 06:20:53.877516       1 main.go:355] Current network or subnet (10.244.0.0/16, 10.244.1.0/24) is not equal to previous one (0.0.0.0/0, 0.0.0.0/0), trying to recycle old iptables rules
I1216 06:20:54.683635       1 iptables.go:167] Deleting iptables rule: -s 0.0.0.0/0 -d 0.0.0.0/0 -j RETURN
I1216 06:20:54.783668       1 iptables.go:167] Deleting iptables rule: -s 0.0.0.0/0 ! -d 224.0.0.0/4 -j MASQUERADE --random-fully
I1216 06:20:54.786251       1 iptables.go:167] Deleting iptables rule: ! -s 0.0.0.0/0 -d 0.0.0.0/0 -j RETURN
I1216 06:20:54.788710       1 iptables.go:167] Deleting iptables rule: ! -s 0.0.0.0/0 -d 0.0.0.0/0 -j MASQUERADE --random-fully
I1216 06:20:54.877429       1 main.go:305] Setting up masking rules
I1216 06:20:54.879632       1 main.go:313] Changing default FORWARD chain policy to ACCEPT
I1216 06:20:54.879882       1 main.go:321] Wrote subnet file to /run/flannel/subnet.env
I1216 06:20:54.879925       1 main.go:325] Running backend.
I1216 06:20:54.879961       1 main.go:343] Waiting for all goroutines to exit
I1216 06:20:54.880071       1 vxlan_network.go:60] watching for new subnet leases
I1216 06:20:55.076905       1 iptables.go:145] Some iptables rules are missing; deleting and recreating rules
I1216 06:20:55.076982       1 iptables.go:167] Deleting iptables rule: -s 10.244.0.0/16 -d 10.244.0.0/16 -j RETURN
I1216 06:20:55.077481       1 iptables.go:145] Some iptables rules are missing; deleting and recreating rules
I1216 06:20:55.077525       1 iptables.go:167] Deleting iptables rule: -s 10.244.0.0/16 -j ACCEPT
I1216 06:20:55.176643       1 iptables.go:167] Deleting iptables rule: -s 10.244.0.0/16 ! -d 224.0.0.0/4 -j MASQUERADE --random-fully
I1216 06:20:55.177007       1 iptables.go:167] Deleting iptables rule: -d 10.244.0.0/16 -j ACCEPT
I1216 06:20:55.179838       1 iptables.go:167] Deleting iptables rule: ! -s 10.244.0.0/16 -d 10.244.1.0/24 -j RETURN
I1216 06:20:55.277677       1 iptables.go:155] Adding iptables rule: -s 10.244.0.0/16 -j ACCEPT
I1216 06:20:55.279603       1 iptables.go:167] Deleting iptables rule: ! -s 10.244.0.0/16 -d 10.244.0.0/16 -j MASQUERADE --random-fully
I1216 06:20:55.282139       1 iptables.go:155] Adding iptables rule: -s 10.244.0.0/16 -d 10.244.0.0/16 -j RETURN
I1216 06:20:55.476441       1 iptables.go:155] Adding iptables rule: -d 10.244.0.0/16 -j ACCEPT
I1216 06:20:55.478564       1 iptables.go:155] Adding iptables rule: -s 10.244.0.0/16 ! -d 224.0.0.0/4 -j MASQUERADE --random-fully
I1216 06:20:55.579364       1 iptables.go:155] Adding iptables rule: ! -s 10.244.0.0/16 -d 10.244.1.0/24 -j RETURN
I1216 06:20:55.677691       1 iptables.go:155] Adding iptables rule: ! -s 10.244.0.0/16 -d 10.244.0.0/16 -j MASQUERADE --random-fully

以上操作亲测有效。

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

Failed to create SubnetManager: error retrieving pod spec for ‘kube-system/kube-flannel-ds-amd64-xxx 的相关文章

  • 套接字发送并发保证

    如果我在两个进程 或两个线程 之间共享一个套接字 并且在这两个进程中我尝试发送一条阻塞的大消息 大于下划线协议缓冲区 是否可以保证这两个消息将按顺序发送 或者消息可以在内核内部交错吗 我主要对 TCP over IP 行为感兴趣 但了解它是
  • 在命令行上解密使用 PHP openssl_encrypt 制作的文件

    我有一个要加密的字符串 encryptThis Super Secret Text echo openssl encrypt encryptThis aes 128 cbc 1234 FALSE F68A9A229A516752 然后我通过
  • 使用 WGET 运行 cronjob PHP

    我尝试执行一个 cron 并每 5 分钟运行一个 url 我尝试使用 WGET 但我不想下载服务器上的文件 我只想运行它 这是我使用的 crontab 5 wget http www example com cronit php 除了 wg
  • 除了 iptables 之外还有数据包管理实用程序吗? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 我正在寻找一个 Linux 实用程序 它可以根据一组规则更改网络数据包的有效负载 理想情况下 我会使用
  • 如何让 PHP、符号链接和 __FILE__ 很好地协同工作?

    在本地主机上 我有以下目录结构 share www trunk wp content plugins otherfolders share www portfolio wp content symlink Where symlink是一个符
  • libusb 和轮询/选择

    我正在使用 Linux 操作系统 想知道是否有任何文件描述符可以轮询 选择 当数据等待从 USB 设备读取时会触发这些文件描述符 我也在使用 libusb 库 但尚未找到可以使用的文件描述符 Use libusb 的轮询函数 http li
  • 命令行参数中的“-”(破折号)有什么魔力?

    例子 创建 ISO 映像并将其直接刻录到 CD mkisofs V Photos r home vivek photos cdrecord v dev dev dvdrw 更改到上一个目录 cd 侦听端口 12345 并解压发送到该端口的数
  • 在 Linux 2.6.21 (glibc 2.3.5) 上进行 ARP 和反向 ARP

    我需要在任意 IP 网络上存储对第三方设备的持久引用 其中设备的 IP 地址可能是静态的或由 DHCP 随机分配 我不控制网络上的设备 也不能依赖 DNS 和其他现有的或与设备一起使用的临时网络协议 所以我被指示使用硬件地址和 ARP 进行
  • 如何修改s_client的代码?

    我正在玩apps s client c in the openssl源代码 我想进行一些更改并运行它 但是在保存文件并执行操作后 我的更改没有得到反映make all or a make 例如 我改变了sc usage函数为此 BIO pr
  • Linux shell 命令逐块读取/打印文件

    是否有一个标准的 Linux 命令可以用来逐块读取文件 例如 我有一个大小为 6kB 的文件 我想读取 打印第一个 1kB 然后是第二个 1kB 看来猫 头 尾在这种情况下不起作用 非常感谢 你可以这样做read n在循环中 while r
  • 如何查找或计算Linux进程的页表大小和其他内核占用?

    我怎样才能知道 Linux 进程页表有多大 以及任何其他可变大小的进程统计 如果您真的对页表感兴趣 请执行以下操作 cat proc meminfo grep PageTables PageTables 24496 kB
  • Alsa 带有来自调制解调器的 PCM 接口

    我有一个基于 imx28 CPU 的定制板 CPU 的串行端口连接到调制解调器的 PCM 输出 我必须为调制解调器的 PCM 接口开发一个驱动程序 使其成为 ALSA SoC 的一部分 您能指出内核树 中与我的设置重新组合的一些驱动程序吗
  • 我在哪里可以学习如何使 C++ 程序与操作系统 (Linux) 交互

    我是一个 C 初学者 我想创建与操作系统交互的小程序 使用 Kubuntu Linux 到目前为止 我还没有找到任何教程或手册来让 C 与操作系统交互 在 PHP 中 我可以使用命令 exec 或反引号运算符来启动通常在控制台中执行的命令
  • 对 sf:: 的未定义引用

    我想用 C 制作 GUI 应用程序 发现 SFML 是一个不错的选择 幸运的是 我使用的是 Linux 所以 SFML 2 4 已经安装在我的系统上 所以我开始搜索一些教程并找到了一个制作简单窗口的教程 但是当我运行代码时 出现错误 提示未
  • 如何使用libaudit?

    我试图了解如何使用 libaudit 我想接收有关使用 C C 的用户操作的事件 我不明白如何设置规则 以及如何获取有关用户操作的信息 例如 我想获取用户创建目录时的信息 int audit fd audit open struct aud
  • 使用 MongoDB docker 镜像停止虚拟机而不丢失数据

    我已经在 AWS EC2 上的虚拟机中安装了官方的 MongoDB docker 映像 并且数据库上已经有数据 如果我停止虚拟机 以节省过夜费用 我会丢失数据库中包含的所有数据吗 在这些情况下我怎样才能让它持久 有多种选择可以实现此目的 但
  • 使用 sed 将 old-link-url 替换为 new-link-url

    我正在 bash 中编写一个脚本 将 old link url 替换为 new link url 我的问题是 sed 由于斜杠而无法替换 url 如果我只输入一些文字就可以了 my code sed e s old link new lin
  • 退出 bash 脚本但保持进程运行

    我正在运行服务器 需要使用参数执行以下命令 这些脚本目前工作得很好 但问题是当我运行脚本时我无法返回到控制台 它在控制台中保持运行 如果我强行停止它 那么该过程也会停止 我想继续运行该进程并返回到控制台 bin sh php home st
  • 静态链接共享对象?或者损坏的文件?

    我有一个从专有来源获得的库 我正在尝试链接它 但出现以下错误 libxxx so 文件无法识别 文件格式无法识别 Collect2 ld 返回 1 退出状态 确实 ldd libxxx so statically linked 这究竟意味着
  • 在中断时获取 current->pid

    我正在Linux调度程序上写一些东西 我需要知道在我的中断到来之前哪个进程正在运行 当前的结构可用吗 如果我在中断处理程序中执行 current gt pid 我是否可以获得我中断的进程的 pid 你可以 current gt pid存在并

随机推荐

  • .NET MVC标签扩展(checkbox,radio)

    NET MVC里面自动绑定form表单功能 如 Html TextBox Name Html Hidden hide 名称会自动与后台就行绑定ViewBag Name ViewBag hide 很实用 但是感觉不足的就是 Html Chec
  • Redis学习笔记(转尚硅谷周阳)

    教学视频 Redis官网 Redis中文官网 一 NoSQL入门概述 上 1 互联网时代背景下大机遇 为什么用NoSQL 1 1 单机MySQL的美好年代 在90年代 一个网站的访问量一般都不大 用单个数据库完全可以轻松应付 在那个时候 更
  • 整形提升和数据截断

    整形提升和截断 1 整形提升 2 截断 1 整形提升 提升是将占字节小的元素赋给占字节大的元素时出现的补位现象 截断是将所占字节大的元素赋给所占字节小的元素时会出现数值的舍去现象 下面看代码来分析 include
  • html的日期选择插件

    1 效果 2 文档 https layui gitee io v2 docs 3 引入 官网地址 https layui gitee io v2 引入 在官网下载 jquery 1 7 2 min js layui layui js 4 使
  • 绘制坐标轴:Python实现

    绘制坐标轴 Python实现 在数据可视化领域 坐标轴是一种重要的图形元素 用于显示数据的分布和趋势 Python提供了多种库和工具 可以方便地绘制坐标轴和相关图表 本文将介绍如何使用Python实现绘制坐标轴的功能 并提供相应的源代码示例
  • qt5.10 串口通信 QSerialPort 的使用

    在qt5中 使用QSerialPort进行串口通信 主要用到的QSerialPort 使用步骤 步骤一 在 pro文件中进行声明 QT serialport 在 pro文件中添加这个声明 步骤二 实例化 QSrerialPort QSeri
  • 实现itoa()和atoi()

    atoi 将字符串转换为整型值 实现代码 enum Status valid unvalid int status valid 全局变量标记输入是否非法 long long AtoI const char str bool minus lo
  • ZYNQ #5 - 从vivado工程开始,从emmc启动Linux

    本文从最简单的petalinux需求的vivado工程开始 建立一个能跑起来linux的vivado工程 同时将linux kernel 根文件系统部署在接到SD1接口上的emmc中 qspi flash中放置BOOT BIN uboot唤
  • vite和webpack的区别

    vite和webpack的区别 从底层原理上来说 Vite是基于esbuild预构建依赖 而esbuild是采用go语言编写 因为go语言的操作是纳秒级别 而js是以毫秒计数 所以vite比用js编写的打包器快10 100倍 Vite和We
  • 成为合格管理者的几个关键词

    http www csdn net article 2014 05 05 2819612 Management 职业通路是狭窄的 金字塔 结构很好地描绘了每个人在职场将要走过的路 在职位与薪酬待遇紧密挂钩的当今职场 芸芸技术专家总有一天会面
  • 【Neo4j】第 10 章:图嵌入 - 从图到矩阵

    大家好 我是Sonhhxg 柒 希望你看完之后 能对你有所帮助 不足请指正 共同学习交流 个人主页 Sonhhxg 柒的博客 CSDN博客 欢迎各位 点赞 收藏 留言 系列专栏 机器学习 ML 自然语言处理 NLP 深度学习 DL fore
  • Linux 如何查看文件夹的大小(du、df、ls、find)

    Linux 如何查看文件夹的大小 du df ls find 参考链接 https blog csdn net Cappuccino jay article details 125168388 一 du 命令 查看当前目录和子目录文件夹 文
  • 微信小程序中下载app的方法

    微信小程序中下载app的方法 因为微信小程序本身是不推荐引流到外部的 所以正规的方法其实都是被禁止掉的 大致方向是打开内部浏览器 进入应用宝下载页面 如果app接入应用宝 或者是通过右上角的在系统浏览器中打开 自动跳转到App Store中
  • XML中常用转义符

    编写XML代码常用转译符 逻辑与 amp lt 小于 lt gt 大于 gt 双引号 quot XML实体中不允许出现 lt gt 等特殊字符 否则XML语法检查时将出错 如果编写的XML文件必须包含这些字符 则必须分别写成 amp lt
  • vue实现前端人机验证

    最简单的一个例子 安装插件 npm install vue puzzle vcode save
  • 微信模板消息,动态配置

    微信模板消息 扫码关注公众号 模板消息配置数据库表设计 SET NAMES utf8mb4 SET FOREIGN KEY CHECKS 0 Table structure for kl b template msg DROP TABLE
  • js设置全屏显示和取消全屏显示,实现F11功能

    点击后
  • 通讯协议022——全网独有的OPC AE知识四之接口(六)

    本文简单介绍OPC AE规范的接口IConnectionPointContainer的相关知识 更多通信资源请登录网信智汇 wangxinzhihui com OPC AE规范描述了OPC事件服务器应该实现的对象和接口 实现在多个OPC客户
  • 计算机视觉——利用openCV调用本地摄像头采集图片并截图保存

    提示 文章写完后 目录可以自动生成 如何生成可参考右边的帮助文档 文章目录 前言 一 采集方式 二 代码部分 三 效果演示 前言 由于本人研究生课题是深度学习目标检测方向 因此需要大量的数据集 在本地采样时 可以利用openCV提供的库函数
  • Failed to create SubnetManager: error retrieving pod spec for ‘kube-system/kube-flannel-ds-amd64-xxx

    kubelet报错如下 kubelet 3807 E1215 18 01 25 516905 3807 aws credentials go 77 while getting AWS credentials NoCredentialProv