摘要:
当前版本信息root@ubuntu:runninglinuxkernel_4.0# aarch64-linux-gnu-gcc -vUsing built-in specs.COLLECT_GCC=aarch64-linux-gnu-gccCOLLECT_LTO_WRAPPER=/usr/lib/gcc-cross/aarch64-linux-gnu/7/lto-wrapperTarget: aa... 阅读全文
摘要:
登录k8s dashboardhttps://xxxxx:6443/api/v1/namespaces/kube-system/services/https:kubernetes-dashboard:/proxy/#!/role?namespace=kube-system 是因为kubernetes基于安全性的考虑,浏览器必须要一个根证书,防止中间人攻击,见https://kubernete... 阅读全文
摘要:
获取svc[root@master01 ~]# kubectl get svcNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGEkubernetes ClusterIP 10.68.0.1 443/TCP 5d6hnginx... 阅读全文
摘要:
介绍 macvlan 本身是 linxu kernel 模块,其功能是允许在同一个物理网卡上配置多个 MAC 地址,即多个 interface,每个 interface 可以配置自己的 IP。macvlan 本质上是一种网卡虚拟化技术(最大优点是性能极好) 可以在linux命令行执行lsmod | grep macvlan 查看当前内核是否加载了该driver;如果没有查看到... 阅读全文
摘要:
由于两台物理机的容器网段不同,我们完全可以将两台物理机配置成为路由器,并按照容器的网段配置路由表。 在物理机A中,我们可以这样配置:要想访问网段172.17.9.0/24,下一跳是192.168.100.101,也即到物理机B上去。 这样在容器A中访问容器B,当包到达物理机A的时候,就能够匹配到这条路由规则,并将包发给下一跳的路由器,也即发给物理机B。在物理机B上也有路由规则,... 阅读全文
摘要:
容器面临的问题 物理机A上的应用A看到的IP地址是容器A的,是172.17.0.2,在物理机B上的应用B看到的IP地址是容器B的,不巧也是172.17.0.2,当它们都注册到注册中心的时候,注册中心就是这个图里这样子。 这个时候,应用A要访问应用B,当应用A从注册中心将应用B的IP地址读出来的时候,就彻底困惑了.一种办法是不去注册容器内的IP地址,而是注册所在物理机的IP地... 阅读全文
摘要:
K8S集群一套 [root@k8s-master ~]# cat /etc/hosts 51.0.1.213 k8s-master 51.0.1.214 k8s-node1 51.0.1.215 k8s-node2 [root@k8s-master ~]# kubectl version Clien 阅读全文
摘要:
和三层外面再套三层的GRE不同,VXLAN则是从二层外面就套了一个VXLAN的头,这里面包含的VXLAN ID为24位,也够用了。在VXLAN头外面还封装了UDP、IP,以及外层的MAC头VXLAN作为扩展性协议,也需要一个地方对VXLAN的包进行封装和解封装,实现这个功能的点称为VTEP(VXLAN Tunnel Endpoint)。 VTEP相当于虚拟机网络的管家。每台物理机... 阅读全文
摘要:
第一个技术是GRE,全称Generic Routing Encapsulation,它是一种IP-over-IP的隧道技术。它将IP包封装在GRE包里,外面加上IP头,在隧道的一端封装数据包,并在通路上进行传输,到另外一端的时候解封装。你可以认为Tunnel是一个虚拟的、点对点的连接 在GRE头中,前32位是一定会有的,后面的都是可选的。在前4位标识位里面。这里面有个很... 阅读全文