k8s安装网络插件weave
参考部署:https://blog.csdn.net/shuaihj/article/details/122963090
下载镜像1:https://newreleases.io/project/github/weaveworks/weave/release/v2.8.1
下载镜像2:https://loongson-cloud-community.github.io/Loongson-Cloud-Community/%E7%A7%BB%E6%A4%8D%E6%89%8B%E5%86%8C/weaveworks-weave/
一、下载所需镜像
所需镜像
image: 'netcorecore/weave-kube:v2.8.1'
image: 'netcorecore/weave-npc:v2.8.1
===
docker pull swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/weaveworks/weave-kube:2.8.1
docker tag swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/weaveworks/weave-kube:2.8.1 netcorecore/weave-kube:v2.8.1
docker pull netcorecore/weave-npc:v2.8.1
二、部署weave到k8s集群
wget http://static.corecore.cn/weave.v2.8.1.yaml
[root@k8smaster weaves]# kubectl apply -f weave.v2.8.1.yaml
serviceaccount/weave-net created
clusterrole.rbac.authorization.k8s.io/weave-net created
clusterrolebinding.rbac.authorization.k8s.io/weave-net created
role.rbac.authorization.k8s.io/weave-net created
rolebinding.rbac.authorization.k8s.io/weave-net created
daemonset.apps/weave-net created
[root@k8smaster weaves]# kubectl get pod -A |grep wea
kube-system weave-net-ctt2w 0/2 Init:ErrImagePull 0 4m14s
kube-system weave-net-jbpjw 2/2 Running 1 4m14s
kube-system weave-net-vq545 0/2 Init:ImagePullBackOff 0 4m14s
[root@k8smaster weaves]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8smaster Ready master 92m v1.18.0
k8snode1 NotReady <none> 88m v1.18.0
k8snode2 NotReady <none> 88m v1.18.0
现在把镜像拷贝到node节点,让其他节点保持Ready状态。就可以使用了。
三、拷贝镜像到node节点
因为下载镜像比较麻烦,所以选择内部消化。
[root@k8smaster ~]# docker save -o weave-npc:v2.8.1.tar.gz netcorecore/weave-npc:v2.8.1
[root@k8smaster ~]# docker save -o weave-kube:v2.8.1.tar.gz netcorecore/weave-kube:v2.8.1
[root@k8smaster ~]# python -m SimpleHTTPServer
[root@k8snode1 ~]# wget 192.168.1.80:8000/weave-kube:v2.8.1.tar.gz
[root@k8snode1 ~]# wget 192.168.1.80:8000/weave-npc:v2.8.1.tar.gz
[root@k8snode1 ~]# docker load -i weave-kube\:v2.8.1.tar.gz
[root@k8snode1 ~]# docker load -i weave-npc\:v2.8.1.tar.gz
[root@k8smaster weaves]# kubectl get nodes
NAME STATUS ROLES AGE VERSION
k8smaster Ready master 112m v1.18.0
k8snode1 Ready <none> 108m v1.18.0
k8snode2 Ready <none> 108m v1.18.0
四、测试kubernetes集群
在Kubernetes集群中创建一个pod,验证是否正常运行:
[root@k8smaster ~]# kubectl create deployment myapp --image=swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/wangyanglinux/myapp:v1
[root@k8smaster ~]# kubectl expose deployment myapp --port=80 --type=NodePort
[root@k8smaster ~]# kubectl get pod,svc -owide
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE READINESS GATES
pod/myapp-5ccc959b6c-8vz85 1/1 Running 0 23s 10.40.0.1 k8snode1 <none> <none>
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE SELECTOR
service/kubernetes ClusterIP 10.96.0.1 <none> 443/TCP 122m <none>
service/myapp NodePort 10.101.134.75 <none> 80:31288/TCP 15s app=myapp
[root@k8smaster ~]# curl 192.168.1.81:31288
Hello MyApp | Version: v1 | <a href="hostname.html">Pod Name</a>
访问地址:http://NodeIP:Port
五、各节点ip信息
如下配置,

[root@k8smaster ~]# ifconfig datapath: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1376 inet6 fe80::286a:2cff:fe73:7048 prefixlen 64 scopeid 0x20<link> ether 2a:6a:2c:73:70:48 txqueuelen 1000 (Ethernet) RX packets 42 bytes 2544 (2.4 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 8 bytes 656 (656.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 docker0: flags=4099<UP,BROADCAST,MULTICAST> mtu 1500 inet 172.17.0.1 netmask 255.255.0.0 broadcast 172.17.255.255 ether 02:42:e3:4d:7b:1a txqueuelen 0 (Ethernet) RX packets 0 bytes 0 (0.0 B) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 0 bytes 0 (0.0 B) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 ens33: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 192.168.1.80 netmask 255.255.255.0 broadcast 192.168.1.255 inet6 240e:3b2:32d9:cca0:8443:af24:bb6a:212a prefixlen 64 scopeid 0x0<global> inet6 fe80::7367:d57a:94e2:e09d prefixlen 64 scopeid 0x20<link> ether 00:0c:29:40:50:1d txqueuelen 1000 (Ethernet) RX packets 327736 bytes 423485437 (403.8 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 253273 bytes 499835393 (476.6 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 lo: flags=73<UP,LOOPBACK,RUNNING> mtu 65536 inet 127.0.0.1 netmask 255.0.0.0 inet6 ::1 prefixlen 128 scopeid 0x10<host> loop txqueuelen 1000 (Local Loopback) RX packets 1206999 bytes 274990961 (262.2 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1206999 bytes 274990961 (262.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 vethwe-bridge: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1376 inet6 fe80::40d2:e9ff:fedd:29ad prefixlen 64 scopeid 0x20<link> ether 42:d2:e9:dd:29:ad txqueuelen 0 (Ethernet) RX packets 50 bytes 4116 (4.0 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 31 bytes 2896 (2.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 vethwe-datapath: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1376 inet6 fe80::c871:8ff:fe21:d179 prefixlen 64 scopeid 0x20<link> ether ca:71:08:21:d1:79 txqueuelen 0 (Ethernet) RX packets 1206999 bytes 274990961 (262.2 MiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 1206999 bytes 274990961 (262.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 vethwepl86b3389: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1376 inet6 fe80::e83b:46ff:fe57:91de prefixlen 64 scopeid 0x20<link> ether ea:3b:46:57:91:de txqueuelen 0 (Ethernet) RX packets 3670 bytes 251265 (245.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3699 bytes 1348038 (1.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 vethweplfb23eca: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1376 inet6 fe80::f8ea:a9ff:fecd:2813 prefixlen 64 scopeid 0x20<link> ether fa:ea:a9:cd:28:13 txqueuelen 0 (Ethernet) RX packets 3670 bytes 251265 (245.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3699 bytes 1348038 (1.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 vxlan-6784: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 65535 inet6 fe80::b8dc:2fff:fefd:15f8 prefixlen 64 scopeid 0x20<link> ether ba:dc:2f:fd:15:f8 txqueuelen 1000 (Ethernet) RX packets 201 bytes 226860 (221.5 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 178 bytes 227178 (221.8 KiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 weave: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1376 inet 10.32.0.1 netmask 255.240.0.0 broadcast 10.47.255.255 inet6 fe80::88f8:f1ff:feb1:7f2b prefixlen 64 scopeid 0x20<link> ether 8a:f8:f1:b1:7f:2b txqueuelen 1000 (Ethernet) RX packets 3670 bytes 251265 (245.3 KiB) RX errors 0 dropped 0 overruns 0 frame 0 TX packets 3699 bytes 1348038 (1.2 MiB) TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0 [root@k8smaster ~]# 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 inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: ens33: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP group default qlen 1000 link/ether 00:0c:29:40:50:1d brd ff:ff:ff:ff:ff:ff inet 192.168.1.80/24 brd 192.168.1.255 scope global noprefixroute ens33 valid_lft forever preferred_lft forever inet6 240e:3b2:32d9:cca0:8443:af24:bb6a:212a/64 scope global noprefixroute dynamic valid_lft 188836sec preferred_lft 102436sec inet6 fe80::7367:d57a:94e2:e09d/64 scope link noprefixroute 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:e3:4d:7b:1a 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 4: datapath: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1376 qdisc noqueue state UNKNOWN group default qlen 1000 link/ether 2a:6a:2c:73:70:48 brd ff:ff:ff:ff:ff:ff inet6 fe80::286a:2cff:fe73:7048/64 scope link valid_lft forever preferred_lft forever 6: weave: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1376 qdisc noqueue state UP group default qlen 1000 link/ether 8a:f8:f1:b1:7f:2b brd ff:ff:ff:ff:ff:ff inet 10.32.0.1/12 brd 10.47.255.255 scope global weave valid_lft forever preferred_lft forever inet6 fe80::88f8:f1ff:feb1:7f2b/64 scope link valid_lft forever preferred_lft forever 7: dummy0: <BROADCAST,NOARP> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether ba:fb:5f:1b:a4:9e brd ff:ff:ff:ff:ff:ff 9: vethwe-datapath@vethwe-bridge: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1376 qdisc noqueue master datapath state UP group default link/ether ca:71:08:21:d1:79 brd ff:ff:ff:ff:ff:ff inet6 fe80::c871:8ff:fe21:d179/64 scope link valid_lft forever preferred_lft forever 10: vethwe-bridge@vethwe-datapath: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1376 qdisc noqueue master weave state UP group default link/ether 42:d2:e9:dd:29:ad brd ff:ff:ff:ff:ff:ff inet6 fe80::40d2:e9ff:fedd:29ad/64 scope link valid_lft forever preferred_lft forever 11: vxlan-6784: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 65535 qdisc noqueue master datapath state UNKNOWN group default qlen 1000 link/ether ba:dc:2f:fd:15:f8 brd ff:ff:ff:ff:ff:ff inet6 fe80::b8dc:2fff:fefd:15f8/64 scope link valid_lft forever preferred_lft forever 13: vethweplfb23eca@if12: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1376 qdisc noqueue master weave state UP group default link/ether fa:ea:a9:cd:28:13 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet6 fe80::f8ea:a9ff:fecd:2813/64 scope link valid_lft forever preferred_lft forever 15: vethwepl86b3389@if14: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1376 qdisc noqueue master weave state UP group default link/ether ea:3b:46:57:91:de brd ff:ff:ff:ff:ff:ff link-netnsid 1 inet6 fe80::e83b:46ff:fe57:91de/64 scope link valid_lft forever preferred_lft forever [root@k8smaster ~]# ip r default via 192.168.1.1 dev ens33 proto static metric 100 10.32.0.0/12 dev weave proto kernel scope link src 10.32.0.1 172.17.0.0/16 dev docker0 proto kernel scope link src 172.17.0.1 192.168.1.0/24 dev ens33 proto kernel scope link src 192.168.1.80 metric 100