apiVersion: v1 kind: Namespace metadata: {name: mssql-ag} --- apiVersion: v1 kind: ServiceAccount metadata: {name: mssql-operator, namespace: mssql-ag} --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRole metadata: {name: mssql-operator-ag1} rules: - apiGroups: [''] resources: [serviceaccounts, services] verbs: [create, get, update, delete] - apiGroups: [batch] resources: [jobs] verbs: [create, get, update, delete] - apiGroups: [rbac.authorization.k8s.io] resources: [roles, rolebindings] verbs: [create, get, update, delete] - apiGroups: [apps] resources: [statefulsets] verbs: [create, delete, get, update] - apiGroups: [''] resources: [configmaps, endpoints, secrets] verbs: [create, get, update, watch, delete] - apiGroups: [''] resources: [pods] verbs: [get, list, update] - apiGroups: [apiextensions.k8s.io] resources: [customresourcedefinitions] verbs: [create] - apiGroups: [apiextensions.k8s.io] resourceNames: [sqlservers.mssql.microsoft.com] resources: [customresourcedefinitions] verbs: [delete, get, update] - apiGroups: [mssql.microsoft.com] resources: [sqlservers] verbs: [get, list, watch] --- apiVersion: rbac.authorization.k8s.io/v1 kind: ClusterRoleBinding metadata: {name: mssql-operator-ag1} roleRef: {apiGroup: rbac.authorization.k8s.io, kind: ClusterRole, name: mssql-operator-ag1} subjects: - {kind: ServiceAccount, name: mssql-operator, namespace: mssql-ag} --- apiVersion: apps/v1beta2 kind: Deployment metadata: {name: mssql-operator, namespace: mssql-ag} spec: replicas: 1 selector: matchLabels: {app: mssql-operator} template: metadata: labels: {app: mssql-operator} spec: containers: - command: [/mssql-server-k8s-operator] env: - name: MSSQL_K8S_NAMESPACE valueFrom: fieldRef: {fieldPath: metadata.namespace} image: mcr.microsoft.com/mssql/ha:2019-CTP2.1-ubuntu name: mssql-operator serviceAccount: mssql-operator