k8s: add kube-vip-cloud-controller
This commit is contained in:
		@@ -0,0 +1,7 @@
 | 
				
			|||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: ConfigMap
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: kubevip
 | 
				
			||||||
 | 
					  namespace: kube-system
 | 
				
			||||||
 | 
					data:
 | 
				
			||||||
 | 
					  cidr-global: 10.100.101.10-10.100.101.254
 | 
				
			||||||
@@ -0,0 +1,88 @@
 | 
				
			|||||||
 | 
					apiVersion: v1
 | 
				
			||||||
 | 
					kind: ServiceAccount
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: kube-vip-cloud-controller
 | 
				
			||||||
 | 
					  namespace: kube-system
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					apiVersion: rbac.authorization.k8s.io/v1
 | 
				
			||||||
 | 
					kind: ClusterRole
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  annotations:
 | 
				
			||||||
 | 
					    rbac.authorization.kubernetes.io/autoupdate: "true"
 | 
				
			||||||
 | 
					  name: system:kube-vip-cloud-controller-role
 | 
				
			||||||
 | 
					rules:
 | 
				
			||||||
 | 
					  - apiGroups: ["coordination.k8s.io"]
 | 
				
			||||||
 | 
					    resources: ["leases"]
 | 
				
			||||||
 | 
					    verbs: ["get", "create", "update", "list", "put"]
 | 
				
			||||||
 | 
					  - apiGroups: [""]
 | 
				
			||||||
 | 
					    resources: ["configmaps", "endpoints","events","services/status", "leases"]
 | 
				
			||||||
 | 
					    verbs: ["*"]
 | 
				
			||||||
 | 
					  - apiGroups: [""]
 | 
				
			||||||
 | 
					    resources: ["nodes", "services"]
 | 
				
			||||||
 | 
					    verbs: ["list","get","watch","update"]
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					kind: ClusterRoleBinding
 | 
				
			||||||
 | 
					apiVersion: rbac.authorization.k8s.io/v1
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: system:kube-vip-cloud-controller-binding
 | 
				
			||||||
 | 
					roleRef:
 | 
				
			||||||
 | 
					  apiGroup: rbac.authorization.k8s.io
 | 
				
			||||||
 | 
					  kind: ClusterRole
 | 
				
			||||||
 | 
					  name: system:kube-vip-cloud-controller-role
 | 
				
			||||||
 | 
					subjects:
 | 
				
			||||||
 | 
					- kind: ServiceAccount
 | 
				
			||||||
 | 
					  name: kube-vip-cloud-controller
 | 
				
			||||||
 | 
					  namespace: kube-system
 | 
				
			||||||
 | 
					---
 | 
				
			||||||
 | 
					apiVersion: apps/v1
 | 
				
			||||||
 | 
					kind: Deployment
 | 
				
			||||||
 | 
					metadata:
 | 
				
			||||||
 | 
					  name: kube-vip-cloud-provider
 | 
				
			||||||
 | 
					  namespace: kube-system
 | 
				
			||||||
 | 
					spec:
 | 
				
			||||||
 | 
					  replicas: 1
 | 
				
			||||||
 | 
					  revisionHistoryLimit: 10
 | 
				
			||||||
 | 
					  selector:
 | 
				
			||||||
 | 
					    matchLabels:
 | 
				
			||||||
 | 
					      app: kube-vip
 | 
				
			||||||
 | 
					      component: kube-vip-cloud-provider
 | 
				
			||||||
 | 
					  strategy:
 | 
				
			||||||
 | 
					    rollingUpdate:
 | 
				
			||||||
 | 
					      maxSurge: 25%
 | 
				
			||||||
 | 
					      maxUnavailable: 25%
 | 
				
			||||||
 | 
					    type: RollingUpdate
 | 
				
			||||||
 | 
					  template:
 | 
				
			||||||
 | 
					    metadata:
 | 
				
			||||||
 | 
					      labels:
 | 
				
			||||||
 | 
					        app: kube-vip
 | 
				
			||||||
 | 
					        component: kube-vip-cloud-provider
 | 
				
			||||||
 | 
					    spec:
 | 
				
			||||||
 | 
					      containers:
 | 
				
			||||||
 | 
					      - command:
 | 
				
			||||||
 | 
					        - /kube-vip-cloud-provider
 | 
				
			||||||
 | 
					        - --leader-elect-resource-name=kube-vip-cloud-controller
 | 
				
			||||||
 | 
					        image: ghcr.io/kube-vip/kube-vip-cloud-provider:v0.0.11
 | 
				
			||||||
 | 
					        name: kube-vip-cloud-provider
 | 
				
			||||||
 | 
					        imagePullPolicy: Always
 | 
				
			||||||
 | 
					      dnsPolicy: ClusterFirst
 | 
				
			||||||
 | 
					      restartPolicy: Always
 | 
				
			||||||
 | 
					      terminationGracePeriodSeconds: 30
 | 
				
			||||||
 | 
					      serviceAccountName: kube-vip-cloud-controller
 | 
				
			||||||
 | 
					      tolerations:
 | 
				
			||||||
 | 
					      - key: node-role.kubernetes.io/master
 | 
				
			||||||
 | 
					        effect: NoSchedule
 | 
				
			||||||
 | 
					      - key: node-role.kubernetes.io/control-plane
 | 
				
			||||||
 | 
					        effect: NoSchedule
 | 
				
			||||||
 | 
					      affinity:
 | 
				
			||||||
 | 
					        nodeAffinity:
 | 
				
			||||||
 | 
					          preferredDuringSchedulingIgnoredDuringExecution:
 | 
				
			||||||
 | 
					          - weight: 10
 | 
				
			||||||
 | 
					            preference:
 | 
				
			||||||
 | 
					              matchExpressions:
 | 
				
			||||||
 | 
					              - key: node-role.kubernetes.io/control-plane
 | 
				
			||||||
 | 
					                operator: Exists
 | 
				
			||||||
 | 
					          - weight: 10
 | 
				
			||||||
 | 
					            preference:
 | 
				
			||||||
 | 
					              matchExpressions:
 | 
				
			||||||
 | 
					              - key: node-role.kubernetes.io/master
 | 
				
			||||||
 | 
					                operator: Exists
 | 
				
			||||||
@@ -0,0 +1,6 @@
 | 
				
			|||||||
 | 
					---
 | 
				
			||||||
 | 
					apiVersion: kustomize.config.k8s.io/v1beta1
 | 
				
			||||||
 | 
					kind: Kustomization
 | 
				
			||||||
 | 
					resources:
 | 
				
			||||||
 | 
					  - kube-vip-cloud-controller.yaml
 | 
				
			||||||
 | 
					  - configmap.yaml
 | 
				
			||||||
		Reference in New Issue
	
	Block a user