1.目录
/etc/kubernetes/manifests/kube-policy-controller.json
{
"kind": "Pod",
"apiVersion": "v1",
"metadata": {
"name": "kube-policy-controller",
"namespace": "kube-system",
"creationTimestamp": null,
"labels": {
"component": "kube-policy-controller",
"tier": "control-plane"
}
},
"spec": {
"volumes": [
{
"name": "run-calico",
"hostPath": {
"path": "/var/run/calico"
}
},
{
"name": "log-calico",
"hostPath": {
"path": "/var/log/calico"
}
},
{
"name": "lib-modules",
"hostPath": {
"path": "/lib/modules"
}
}
],
"containers": [
{
"name": "kube-policy-controller",
"image": "xxx/xxx/kube-policy-controller:v0.5.2-v1",
"env": [
{
"name": "ETCD_ENDPOINTS",
"value": "http://127.0.0.1:2379"
},
{
"name": "K8S_API",
"value": "http://127.0.0.1:8080"
},
{
"name": "LEADER_ELECTION",
"value": "true"
}
],
"resources": {},
"volumeMounts": [
{
"name": "run-calico",
"mountPath": "/var/run/calico"
},
{
"name": "log-calico",
"mountPath": "/var/log/calico"
},
{
"name": "lib-modules",
"mountPath": "/lib/modules"
}
]
},
{
"name": "leader-elector",
"image": "xxx/xxx/leader-elector:v0.1.0",
"args": [
"--election=calico-policy-election",
"--election-namespace=kube-system",
"--http=127.0.0.1:4040"
],
"resources": {},
"imagePullPolicy": "IfNotPresent",
"securityContext": {
"privileged": true
}
}
],
"hostNetwork": true
},
"status": {}
}
为每一个proxy创建hostendpoint
在k8s集群的控制节点上,为每一个proxy创建hostendpoint,例如为IP地址为192.168.1.110的proxy创建hostEndpoint:
apiVersion: v1
kind: hostEndpoint
metadata:
name: eth0
node: 192.168.1.110
labels:
calico/k8s_ns: kube-system
spec:
interfaceName: eth0
expectedIPs:
- 192.168.1.110
profiles:
- k8s_ns.kube-systemk8s
2.集群的控制节点上执行:
calicoctl create -f XXX.yaml