TNBLOG
首页
博客
视频
资源
问答
猿趣
手机
关于
搜索
收藏
便签
笔记
消息
创作
登录
剑轩
故如虹,知恩;故如月,知明
博主信息
排名
6
文章
6
粉丝
16
评论
8
文章类别
CSS
15篇
微服务
41篇
Git
14篇
.NET
102篇
移动开发
33篇
软件架构
23篇
.NET Core
119篇
.NET MVC
11篇
英语
3篇
随笔
86篇
Bootstrap
3篇
Redis
21篇
编辑器
10篇
Js相关
15篇
虚拟化
8篇
更多
Oracle
7篇
Python
14篇
数据库
26篇
EF
17篇
微信
3篇
前端
151篇
消息队列
6篇
docker
41篇
多线程
1篇
Java
4篇
软件基础
2篇
C++
2篇
WCF
7篇
Linux
7篇
nginx
5篇
K8S
9篇
ABP
2篇
最新文章
最新评价
{{item.articleTitle}}
{{item.blogName}}
:
{{item.content}}
关于我们
ICP备案 :
渝ICP备18016597号-1
网站信息:
2018-2024
TNBLOG.NET
技术交流:
群号656732739
联系我们:
contact@tnblog.net
欢迎加群
欢迎加群交流技术
原
k8s部署应用常见错误
9201
人阅读
2022/6/3 21:19
总访问:
3948787
评论:
0
收藏:
0
手机
分类:
K8S
### network: open /run/flannel/subnet.env: no such file or directory 1:在每个节点创建文件/run/flannel/subnet.env写入以下内容。注意每个节点都要加哦,不是主节点 ``` FLANNEL_NETWORK=10.244.0.0/16 FLANNEL_SUBNET=10.244.0.1/24 FLANNEL_MTU=1450 FLANNEL_IPMASQ=true ``` 2:然后删除掉部署 我这里名字是test-k8s,需要换成自己的 ``` kubectl delete deployment test-k8s ``` 3:重新执行部署 ``` kubectl apply -f app.yaml ``` ### /run/flannel/subnet.env is missing FLANNEL_NETWORK, FLANNEL_IPV6_NETWORK 这个错其实也是因为subnet.env文件的问题,你看提示里边就说:/run/flannel/subnet.env is missing FLANNEL_NETWORK,这个文件subnet.env缺少了FLANNEL_NETWORK配置,开始去纠结网络问题去了,其实是配置文件里边这块内容写错了。 **查看文件内容:** 可以看到第一行的配置是有问题的,复制的时候少复制了几个字母,单词打错了 ![](https://img.tnblog.net/arcimg/aojiancc2/55d129dec6824f26b6634c809d3a5f47.png) 应该是这样的:FLANNEL_NETWORK。-。-大意了,没有闪 ![](https://img.tnblog.net/arcimg/aojiancc2/311de343e7844ee182d603766240897f.png) <font color=red>注意,主节点和子节点都要修改对哦</font>,不要子修改主节点 **涉及到的节点都修改好后重新部署即可** 删除掉部署 ``` kubectl delete deployment test-k8s ``` 重新执行部署 ``` kubectl apply -f app.yaml ``` ### k8s虚拟机跑上了,宿主机访问不到。宿主机使用虚拟机的ip+端口访问不到 这种问题,通常ip与端口映射或者监听问题。 ![](https://img.tnblog.net/arcimg/aojiancc2/d79513aa7c1b4b12bf62945ee46e767e.png) 虚拟机跑上了,本地能使用curl访问,但是宿主机使用虚拟机的ip+端口访问不到。 tn2> localhost是只能本地端口访问,把监听地址改成0.0.0.0就可以了 **在做端口映射的时候增加一个--address 把地址加一下就可以了** ``` kubectl port-forward --address 0.0.0.0 pod/pod-name 8080:8080 ``` address 0.0.0.0 K8S会监听任何地址就没有问题了 **当然如果还不行的话可以考虑一下部署的应用本身的ip地址与端口问题** 比如下面的一个简单的nodejs服务监听。 localhost是只能本地端口访问,把监听地址改成0.0.0.0就可以外部访问了。当然一般只需要在k8s里边设置address 0.0.0.0就行了 ``` // 监听地址不要写成127.0.0.1或者localhost var server = app.listen(8081, '127.0.0.1', function () { var host = server.address().address; var port = server.address().port; console.log("地址为 http://%s:%s", host, port); }); //监听地址写成0.0.0.0 var server = app.listen(8081, '0.0.0.0', function () { var host = server.address().address; var port = server.address().port; console.log("地址为 http://%s:%s", host, port); }); ``` ### ifconfig cni0 down 未找到命令 安装net-tools即可 ``` yum install net-tools ``` ### wget: 未找到命令 输入如下命令安装: ``` yum -y install wget ``` 安装好了查看: ``` rpm -qa|grep "wget" ```
欢迎加群讨论技术,1群:677373950(满了,可以加,但通过不了),2群:656732739
👈{{preArticle.title}}
👉{{nextArticle.title}}
评价
{{titleitem}}
{{titleitem}}
{{item.content}}
{{titleitem}}
{{titleitem}}
{{item.content}}