问题标签 [flannel]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ubuntu - 如何在 Ubuntu 中安装法兰绒
我在 git 上从 flannel 跟踪仪器步骤 1:确保您的机器上安装了所需的依赖项。在 Ubuntu 上,运行sudo apt-get install linux-libc-dev golang gcc
. 在 Fedora/Redhat 上,run sudo yum install kernel-headers golang gcc
. 第 2 步:Git 克隆 flannel 仓库:git clone https://github.com/coreos/flannel.git
第 3 步:运行构建脚本:cd flannel;./build
build.sh
但是在我克隆磁盘中的源代码后,我在 flannel 文件夹中找不到。我怎样才能运行./build?
amazon-web-services - 在 AWS 中为 kubernetes 设置 Flannel
我正在尝试在 AWS 上设置 Flannel 0.5,以便让 pod 相互通信。我按照https://coreos.com/blog/introducing-flannel-0.5.0-with-aws-and-gce/上的指南进行操作
使用 AIM 创建了三个“Amazon EC2”实例,其角色策略为AmazonVPCFullAccess。AmazonVPCFullAccess 包括所有权限。我的 VPC 是“172.31.0.0/16”
禁用三个实例的“实例的源/目标检查”
- 安装 k8s、flannel 并配置它们。
- 通过命令将类型设置为“aws-vpc”:
etcdctl set /atomic.io/network/config '{"Network":"172.31.0.0/20","Backend": {"Type": "aws-vpc"}}'
启动服务并创建一个 k8s rc
然后我在 /var/log/messages 中得到错误:
9 月 27 日 15:18:54 ip-172-31-0-242 flanneld: I0927 15:18:54.023391 02400 etcd.go:129] 找到当前 IP (172.31.0.242) 的租约 (172.31.1.0/24),重用
9 月 27 日 15:18:54 ip-172-31-0-242 flanneld: I0927 15:18:54.024120 02400 etcd.go:84] 获得子网租约:172.31.1.0/24
Sep 27 15:18:54 ip-172-31-0-242 flanneld: I0927 15:18:54.389834 02400 awsvpc.go:106] 警告 - 禁用源目标检查失败:您无权执行此操作。(未经授权的操作)
9 月 27 日 15:18:54 ip-172-31-0-242 flanneld: I0927 15:18:54.389882 02400 awsvpc.go:116] RouteRouteTableID: rtb-9893a9f1
9 月 27 日 15:18:54 ip-172-31-0-242 flanneld: E0927 15:18:54.511297 02400 network.go:71] 无法初始化网络(类型 aws-vpc):无法添加路由 172.31.1.0/ 24:无法在路由表 rtb-9893a9f1 (InvalidParameterValue) 中为 172.31.1.0/24 创建比本地路由 172.31.0.0/16 更具体的路由
日志显示类型配置“aws-vpc”有效。Flannel 获得了正确的 AWS 路由表“rtb-9893a9f1”,这意味着 AIM 角色配置也可以工作。
但是日志说“UnauthorizedOperation”和“InvalidParameterValue”......我现在不知道这个!
顺便说一句, 不设置 IAM 角色并输入 aws-vpc,启动 k8s、etcd 和 flannel 后,路由表包含接口 flannel:
[root@ip-172-31-14-47 ~]# route -n 内核IP路由表
目标网关 Genmask 标志 Metric Ref Use Iface
0.0.0.0 172.31.0.1 0.0.0.0 UG 0 0 0 eth0
172.31.0.0 0.0.0.0 255.255.240.0 U 0 0 0 eth0
172.31.0.0 0.0.0.0 255.255.240.0 U 0 0 0 法兰绒0
172.31.14.0 0.0.0.0 255.255.255.0 U 0 0 0 码头0
虽然路由有接口法兰绒,但法兰绒无法工作。原因很清楚:AWS 不遵循一个实例的内部路由表。
但是设置了AIM角色和类型后,flannel不能再添加接口了,遇到UnauthorizedOperation和InvalidParameterValue的异常,虽然我已经保证了角色为AmazonVPCFullAccess的AIM
kubernetes - Flannel 与 etcd v3.0 的兼容性
我计划将我们的 Kubernetes 实例迁移到 etcd v3。你知道 Flannel 是否可以与 etcd v3 一起使用吗?
kubernetes - Kubernetes覆盖网络对比
我想知道是否有人可以简要概述所有不同 Kubernetes 网络覆盖之间的差异/优势。入门指南(http://kubernetes.io/docs/getting-started-guides/scratch/#network)提到以下内容:
- 绒布
- 印花布
- 编织
- 罗马纳
- 开放式 vSwitch (OVS)
但并没有真正解释它们之间的区别是什么,或者每个人的优缺点是什么。我想知道是否有人可以让我知道我应该将这些解决方案中的哪一个用于裸机 CentOS 7 集群。
谢谢!
docker - kubernetes安装和kube-dns:打开/run/flannel/subnet.env:没有那个文件或目录
概述
kubeadm init和网络设置后kube-dns无法启动 (SetupNetworkError) :
Kubernetes 版本
环境
适用于 Mac 的 VMWare Fusion
操作系统
内核(例如 uname -a)
问题是什么
我期望发生的事情
kube-dns 运行
如何重现它
kubernetes - Kubernetes - pod 没有从 Flannel CIDR 获取 IP
我已经在工作节点上成功配置了 Flannel。当我这样做ifconfig
时,在工作人员上,我看到了一个flannel.1
界面(我正在使用 vxlan)。还有docker0
和cbr0
接口。
但是,当 pod 启动时,该节点上的 docker 容器从cbr0
接口获取 IP 地址,而不是从 flannel 接口获取。我确实尝试过手动删除 cbr0 接口,但是当 docker 容器被安排在 pod 出现的节点上时,它会恢复。
Docker 是这样启动的:
dockerd --bip=10.200.50.1/24 --mtu=8951 --iptables=false --ip-masq=false --host=unix:///var/run/docker.sock --log-level=error --storage-driver=overlay
法兰绒环境:
ifconfig
说:
如何确保 pod 的 IP 地址来自 flannel 接口?
centos - Kube-api 服务器没有出现在 Baremetal 上
我在 /etc/hosts 中添加了以下 IP,
192.168.121.9 centos-master
192.168.121.65 centos-minion-1
192.168.121.66 centos-minion-2
192.168.121.67 centos-minion-3
并遵循了除 flannel 安装之外的过程。
我正在逐步运行以下实例
for SERVICES in etcd kube-apiserver; do
systemctl restart $SERVICES
systemctl enable $SERVICES
systemctl status $SERVICES
done
etcd 启动良好,但 kube-apiserver 失败并出现以下错误:
Nov 17 14:40:11 localhost kube-apiserver: F1117 14:40:11.842367 6176 controller.go:84] Unable to perform initial IP allocation check: unable to refresh the service IP block: error #0: dial tcp 192.168.121.9:2379: i/o timeout
尝试将 192.168.121.9 IP 添加到 BareMetal 中的同一接口,但仍然失败。
不知道这里有什么问题..
kubernetes - Kubernetes 服务 ip 在集群中并不总是可以访问(使用 flannel)
我构建了一个 kubernetes 集群,使用 flannel 覆盖网络。问题是服务 ip 之一并不总是可访问的。
我在集群中测试,通过远程登录服务 ip和端口,以连接超时结束。用 netstat 检查,连接始终处于“SYN_SENT”状态,似乎对等方不接受连接。但是,如果我直接 telnet 到支持该服务的pod ip和端口,则可以成功建立连接。它只发生在其中一项服务上,其他服务还可以。
如果我将后端 pod 缩放到更大的值,比如 2。那么对服务 ip的一些请求可以成功。该服务似乎无法连接到支持的 pod 之一。
哪个组件可能是导致此类问题的原因?我的服务配置,kube-proxy 还是 flannel?
kubernetes - 使用 Kubernetes 和 Flannel 进行 Pod 到服务的通信
我最近建立了一个带有 Docker 和 Flannel 的多机 Kubernetes 集群。我已经在子网上设置了 Flannel,172.16.0.0/24
这样主机 A 上分配 IP 的172.16.78.2
容器可以 ping 主机 B 上分配 IP 的容器172.16.74.2
。
我已经设置了 Kubernetes 及其所有各种组件(kubelet
、kube-proxy
kube-apiserver
、kube-scheduler
、kube-controller-manager
),并且我可以成功地在集群周围启动部署和 Pod。
问题
我在集群上部署了一个 Redis 服务和我的 webapp pod。在我的 webapp pod 上,环境变量REDIS_SERVICE_HOST
和REDIS_SERVICE_PORT
已设置,但REDIS_SERVICE_HOST
它是子网上的随机 IP 172.16.0.0/16
。需要明确的是,如果我运行ifconfig
并获取eth0
Redis 容器中的 IP 地址,我可以从我的 webapp pod ping 通它。但不是分配给REDIS_SERVICE_HOST
.
我相当肯定这是一个配置问题,但这里有一些我为每个服务设置的标志:
kube-proxy 参数
--cluster-cidr 172.16.0.0/16
kube-apiserver 参数
--service-cluster-ip-range=172.16.0.0/16
kube-controller-manager 参数
--cluster-cidr=172.16.0.0/16
--service-cluster-ip-range=172.16.0.0/16
我不太确定上述标志如何与 Flannel 结合使用,但我尝试了很多东西,但我无法得到任何工作。关于这些事情如何工作的一些解释将是一个很大的帮助。谢谢。
docker - 执行 kubeadm 重置后,Kubernetes 无法为 pod 设置网络
我用 初始化了 Kubernetes kubeadm init
,然后我用kubeadm reset
它来重置它,我发现它--pod-network-cidr
是错误的。更正后,我尝试kubeadm
像这样再次使用来初始化 Kubernetes:
然后我在节点上遇到了一些错误
或者
为什么我不能为新的 Pod 创建网络?
顺便说一句,我使用法兰绒作为网络提供商,它工作正常。