第四阶段
时 间:2023年8月17日
参加人:全班人员
内 容:
Calico网络策略
目录
一、前提配置
1、主机初始化设置
[root@k8s-master ~]# iptables -F
[root@k8s-master ~]# setenforce 0
[root@k8s-master ~]# systemctl stop firewalld
[root@k8s-master ~]# free
[root@k8s-master ~]# sysctl -p

2、安装部署k8s集群,并使用calico网络
root@k8s-master \~\]# kubectl get nodes
\[root@k8s-master \~\]# kubectl get pods -n kube-system

# ****二、**** ****Calico网络策略基础****
## ****1、创建服务****
****1)**** ****创建命名空间****
\[root@k8s-master \~\]# kubectl create ns policy-demo

****2)**** ****在 policy-demo 命名空间中创建两个副本的 Nginx Pod。****
\[root@k8s-master \~\]# vim nginx-deployment.yaml

****\[root@k8s-master \~\]# kubectl apply -f nginx-deployment.yaml****
****\[root@k8s-master \~\]# kubectl get pod -n policy-demo****

****3)**** ****通过服务暴露 Nginx 的 80 端口。****
> \[root@k8s-master \~\]# kubectl expose --namespace=policy-demo deployment nginx --port=80
>
> \[root@k8s-master \~\]# kubectl get all -n policy-demo

****4)**** ****通过 busybox 的 Pod 去访问 Nginx 服务。****
> ****\[root@k8s-master \~\]# kubectl run --namespace=policy-demo access --rm -ti --image busybox /bin/sh****
>
> ****/ # wget -q nginx -O -****

****\[root@k8s-master \~\]# kubectl get all -n policy-demo****

## ****2、启用网络隔离****
在 policy-demo 命名空间中打开隔离。然后 Calico 将阻止连接到该命名空间中的 Pod。执行以下命令将创建一个 NetworkPolicy,该策略将对 policy-demo 名称空间中的所有 Pod实现默认的拒绝行为。
[root@k8s-master ~]# kubectl create -f - <