kubernetes的又一次尝试

之前使用docker-swarm,刚开始觉得还不错,但发现经过一段时间后,或者timeout,或者内存过高崩溃,总之,各种各样。

因此,这段时间,我一直使用的是传统的方式,开了一大堆端口号。

这两天又重新拾起了kurbernetes, 使用的环境是ubuntu 16.04, kubeadm的版本是1.7.4。

整个的安装也还是哗哗的,很顺利的结束了。

calico的安装也是哗哗的,很顺利的样子。

pod 同样的结果。

开测!!!

悲剧的挂了,测试静态的页面访问,无问题,一切正常。

但涉及到数据库/redis就timeout了。看了日志,无法连接上。

进入容器,发现无法连接上数据库,redis,过程略,总之,无法连接主机所在的局域网上的主机,当然,除了部署所在的主机除外。

数据库在局域网上,redis也在局域网上。

calico查了许久,不知道如何解决。

iptables 看了下,这个我没有研究过,更加不懂。

总之,经过了一天的研究,反复重装了N次,一直如此。最后没办法了,iptables转发吧,这总可以了吧。

iptables转发很快的配置好了,在主机上测试,竟然不通,该开的都开了啊。

最终发现,这个测试不能在开转发本机上测试,使用其他主机访问转发的端口就无问题,但主机自身不可,泪奔阿。

然后,发现pod中也可以访问数据库了,也可以访问redis了,一切正常了。

从理论上而言,可能要将指定的端口打开,但我将iptables的所有的INPUT, OUTPUT, FORWARD都接受了,还是不可以。只有使用iptables转发指定的端口内容才可以。

总之,目前都正常了。小测了一下,在相同的环境下,和docker bridge的效率几乎不相上下,甚至会更好些。剩下的就看能撑多久了。之前测试时发现网络经常连着连着就不通了。这次还有待时间检验

发表评论

电子邮件地址不会被公开。 必填项已用*标注

此站点使用Akismet来减少垃圾评论。了解我们如何处理您的评论数据