mirror of https://github.com/abpframework/eventhub
7 changed files with 446 additions and 32 deletions
@ -0,0 +1,225 @@ |
|||||
|
--- |
||||
|
apiVersion: v1 |
||||
|
kind: ServiceAccount |
||||
|
metadata: |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
--- |
||||
|
apiVersion: rbac.authorization.k8s.io/v1 |
||||
|
kind: ClusterRole |
||||
|
metadata: |
||||
|
name: cluster-autoscaler |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
rules: |
||||
|
- apiGroups: [""] |
||||
|
resources: ["events", "endpoints"] |
||||
|
verbs: ["create", "patch"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["pods/eviction"] |
||||
|
verbs: ["create"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["pods/status"] |
||||
|
verbs: ["update"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["endpoints"] |
||||
|
resourceNames: ["cluster-autoscaler"] |
||||
|
verbs: ["get", "update"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["nodes"] |
||||
|
verbs: ["watch", "list", "get", "update"] |
||||
|
- apiGroups: [""] |
||||
|
resources: |
||||
|
- "pods" |
||||
|
- "services" |
||||
|
- "replicationcontrollers" |
||||
|
- "persistentvolumeclaims" |
||||
|
- "persistentvolumes" |
||||
|
verbs: ["watch", "list", "get"] |
||||
|
- apiGroups: ["extensions"] |
||||
|
resources: ["replicasets", "daemonsets"] |
||||
|
verbs: ["watch", "list", "get"] |
||||
|
- apiGroups: ["policy"] |
||||
|
resources: ["poddisruptionbudgets"] |
||||
|
verbs: ["watch", "list"] |
||||
|
- apiGroups: ["apps"] |
||||
|
resources: ["statefulsets", "replicasets", "daemonsets"] |
||||
|
verbs: ["watch", "list", "get"] |
||||
|
- apiGroups: ["storage.k8s.io"] |
||||
|
resources: ["storageclasses", "csinodes"] |
||||
|
verbs: ["get", "list", "watch"] |
||||
|
- apiGroups: ["batch"] |
||||
|
resources: ["jobs", "cronjobs"] |
||||
|
verbs: ["watch", "list", "get"] |
||||
|
- apiGroups: ["coordination.k8s.io"] |
||||
|
resources: ["leases"] |
||||
|
verbs: ["create"] |
||||
|
- apiGroups: ["coordination.k8s.io"] |
||||
|
resourceNames: ["cluster-autoscaler"] |
||||
|
resources: ["leases"] |
||||
|
verbs: ["get", "update"] |
||||
|
|
||||
|
--- |
||||
|
apiVersion: rbac.authorization.k8s.io/v1 |
||||
|
kind: Role |
||||
|
metadata: |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
rules: |
||||
|
- apiGroups: [""] |
||||
|
resources: ["configmaps"] |
||||
|
verbs: ["create","list","watch"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["configmaps"] |
||||
|
resourceNames: |
||||
|
- "cluster-autoscaler-status" |
||||
|
- "cluster-autoscaler-priority-expander" |
||||
|
verbs: ["delete", "get", "update", "watch"] |
||||
|
|
||||
|
--- |
||||
|
apiVersion: rbac.authorization.k8s.io/v1 |
||||
|
kind: ClusterRoleBinding |
||||
|
metadata: |
||||
|
name: cluster-autoscaler |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
roleRef: |
||||
|
apiGroup: rbac.authorization.k8s.io |
||||
|
kind: ClusterRole |
||||
|
name: cluster-autoscaler |
||||
|
subjects: |
||||
|
- kind: ServiceAccount |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
|
||||
|
--- |
||||
|
apiVersion: rbac.authorization.k8s.io/v1 |
||||
|
kind: RoleBinding |
||||
|
metadata: |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
roleRef: |
||||
|
apiGroup: rbac.authorization.k8s.io |
||||
|
kind: Role |
||||
|
name: cluster-autoscaler |
||||
|
subjects: |
||||
|
- kind: ServiceAccount |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
|
||||
|
--- |
||||
|
apiVersion: v1 |
||||
|
data: |
||||
|
ResourceGroup: <base64-encoded-resource-group> |
||||
|
SubscriptionID: <base64-encode-subscription-id> |
||||
|
Deployment: <base64-encoded-azure-initial-deploy-name> |
||||
|
VMType: c3RhbmRhcmQ= |
||||
|
kind: Secret |
||||
|
metadata: |
||||
|
name: cluster-autoscaler-azure |
||||
|
namespace: kube-system |
||||
|
--- |
||||
|
apiVersion: apps/v1 |
||||
|
kind: Deployment |
||||
|
metadata: |
||||
|
labels: |
||||
|
app: cluster-autoscaler |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
spec: |
||||
|
replicas: 1 |
||||
|
selector: |
||||
|
matchLabels: |
||||
|
app: cluster-autoscaler |
||||
|
template: |
||||
|
metadata: |
||||
|
labels: |
||||
|
app: cluster-autoscaler |
||||
|
spec: |
||||
|
hostNetwork: true |
||||
|
serviceAccountName: cluster-autoscaler |
||||
|
tolerations: |
||||
|
- effect: NoSchedule |
||||
|
operator: "Equal" |
||||
|
value: "true" |
||||
|
key: node-role.kubernetes.io/master |
||||
|
nodeSelector: |
||||
|
kubernetes.io/role: master |
||||
|
containers: |
||||
|
- command: |
||||
|
- ./cluster-autoscaler |
||||
|
- --v=3 |
||||
|
- --logtostderr=true |
||||
|
- --cloud-provider=azure |
||||
|
- --skip-nodes-with-local-storage=false |
||||
|
- --node-group-auto-discovery=label:cluster-autoscaler-enabled=true,cluster-autoscaler-name=<YOUR CLUSTER NAME> |
||||
|
env: |
||||
|
- name: ARM_SUBSCRIPTION_ID |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: SubscriptionID |
||||
|
name: cluster-autoscaler-azure |
||||
|
- name: ARM_RESOURCE_GROUP |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: ResourceGroup |
||||
|
name: cluster-autoscaler-azure |
||||
|
- name: ARM_USE_MANAGED_IDENTITY_EXTENSION |
||||
|
value: "true" |
||||
|
- name: ARM_VM_TYPE |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: VMType |
||||
|
name: cluster-autoscaler-azure |
||||
|
- name: ARM_DEPLOYMENT |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: Deployment |
||||
|
name: cluster-autoscaler-azure |
||||
|
image: k8s.gcr.io/cluster-autoscaler:{{ ca_version }} |
||||
|
imagePullPolicy: Always |
||||
|
name: cluster-autoscaler |
||||
|
resources: |
||||
|
limits: |
||||
|
cpu: 100m |
||||
|
memory: 300Mi |
||||
|
requests: |
||||
|
cpu: 100m |
||||
|
memory: 300Mi |
||||
|
volumeMounts: |
||||
|
- mountPath: /etc/ssl/certs/ca-certificates.crt |
||||
|
name: ssl-certs |
||||
|
readOnly: true |
||||
|
- mountPath: /var/lib/azure/ |
||||
|
name: deploy-parameters |
||||
|
readOnly: true |
||||
|
- mountPath: /var/lib/waagent/ |
||||
|
name: waagent |
||||
|
readOnly: true |
||||
|
dnsPolicy: ClusterFirst |
||||
|
restartPolicy: Always |
||||
|
volumes: |
||||
|
- hostPath: |
||||
|
path: /etc/ssl/certs/ca-certificates.crt |
||||
|
type: "" |
||||
|
name: ssl-certs |
||||
|
- name: deploy-parameters |
||||
|
secret: |
||||
|
secretName: cluster-autoscaler-azure-deploy-parameters |
||||
|
items: |
||||
|
- key: deploy-parameters |
||||
|
path: azuredeploy.parameters.json |
||||
|
- hostPath: |
||||
|
path: /var/lib/waagent/ |
||||
|
name: waagent |
||||
@ -0,0 +1,212 @@ |
|||||
|
--- |
||||
|
apiVersion: v1 |
||||
|
kind: ServiceAccount |
||||
|
metadata: |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
--- |
||||
|
apiVersion: rbac.authorization.k8s.io/v1 |
||||
|
kind: ClusterRole |
||||
|
metadata: |
||||
|
name: cluster-autoscaler |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
rules: |
||||
|
- apiGroups: [""] |
||||
|
resources: ["events", "endpoints"] |
||||
|
verbs: ["create", "patch"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["pods/eviction"] |
||||
|
verbs: ["create"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["pods/status"] |
||||
|
verbs: ["update"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["endpoints"] |
||||
|
resourceNames: ["cluster-autoscaler"] |
||||
|
verbs: ["get", "update"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["nodes"] |
||||
|
verbs: ["watch", "list", "get", "update"] |
||||
|
- apiGroups: [""] |
||||
|
resources: |
||||
|
- "pods" |
||||
|
- "services" |
||||
|
- "replicationcontrollers" |
||||
|
- "persistentvolumeclaims" |
||||
|
- "persistentvolumes" |
||||
|
verbs: ["watch", "list", "get"] |
||||
|
- apiGroups: ["extensions"] |
||||
|
resources: ["replicasets", "daemonsets"] |
||||
|
verbs: ["watch", "list", "get"] |
||||
|
- apiGroups: ["policy"] |
||||
|
resources: ["poddisruptionbudgets"] |
||||
|
verbs: ["watch", "list"] |
||||
|
- apiGroups: ["apps"] |
||||
|
resources: ["statefulsets", "replicasets", "daemonsets"] |
||||
|
verbs: ["watch", "list", "get"] |
||||
|
- apiGroups: ["storage.k8s.io"] |
||||
|
resources: ["storageclasses", "csinodes"] |
||||
|
verbs: ["get", "list", "watch"] |
||||
|
- apiGroups: ["batch"] |
||||
|
resources: ["jobs", "cronjobs"] |
||||
|
verbs: ["watch", "list", "get"] |
||||
|
- apiGroups: ["coordination.k8s.io"] |
||||
|
resources: ["leases"] |
||||
|
verbs: ["create"] |
||||
|
- apiGroups: ["coordination.k8s.io"] |
||||
|
resourceNames: ["cluster-autoscaler"] |
||||
|
resources: ["leases"] |
||||
|
verbs: ["get", "update"] |
||||
|
|
||||
|
--- |
||||
|
apiVersion: rbac.authorization.k8s.io/v1 |
||||
|
kind: Role |
||||
|
metadata: |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
rules: |
||||
|
- apiGroups: [""] |
||||
|
resources: ["configmaps"] |
||||
|
verbs: ["create","list","watch"] |
||||
|
- apiGroups: [""] |
||||
|
resources: ["configmaps"] |
||||
|
resourceNames: |
||||
|
- "cluster-autoscaler-status" |
||||
|
- "cluster-autoscaler-priority-expander" |
||||
|
verbs: ["delete", "get", "update", "watch"] |
||||
|
|
||||
|
--- |
||||
|
apiVersion: rbac.authorization.k8s.io/v1 |
||||
|
kind: ClusterRoleBinding |
||||
|
metadata: |
||||
|
name: cluster-autoscaler |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
roleRef: |
||||
|
apiGroup: rbac.authorization.k8s.io |
||||
|
kind: ClusterRole |
||||
|
name: cluster-autoscaler |
||||
|
subjects: |
||||
|
- kind: ServiceAccount |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
|
||||
|
--- |
||||
|
apiVersion: rbac.authorization.k8s.io/v1 |
||||
|
kind: RoleBinding |
||||
|
metadata: |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
labels: |
||||
|
k8s-addon: cluster-autoscaler.addons.k8s.io |
||||
|
k8s-app: cluster-autoscaler |
||||
|
roleRef: |
||||
|
apiGroup: rbac.authorization.k8s.io |
||||
|
kind: Role |
||||
|
name: cluster-autoscaler |
||||
|
subjects: |
||||
|
- kind: ServiceAccount |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
|
||||
|
--- |
||||
|
apiVersion: v1 |
||||
|
data: |
||||
|
ClientID: <base64-encoded-client-id> |
||||
|
ClientSecret: <base64-encoded-client-secret> |
||||
|
ResourceGroup: <base64-encoded-resource-group> |
||||
|
SubscriptionID: <base64-encode-subscription-id> |
||||
|
TenantID: <base64-encoded-tenant-id> |
||||
|
VMType: dm1zcw== |
||||
|
kind: Secret |
||||
|
metadata: |
||||
|
name: cluster-autoscaler-azure |
||||
|
namespace: kube-system |
||||
|
--- |
||||
|
apiVersion: apps/v1 |
||||
|
kind: Deployment |
||||
|
metadata: |
||||
|
labels: |
||||
|
app: cluster-autoscaler |
||||
|
name: cluster-autoscaler |
||||
|
namespace: kube-system |
||||
|
spec: |
||||
|
replicas: 1 |
||||
|
selector: |
||||
|
matchLabels: |
||||
|
app: cluster-autoscaler |
||||
|
template: |
||||
|
metadata: |
||||
|
labels: |
||||
|
app: cluster-autoscaler |
||||
|
spec: |
||||
|
serviceAccountName: cluster-autoscaler |
||||
|
containers: |
||||
|
- image: k8s.gcr.io/cluster-autoscaler:{{ ca_version }} |
||||
|
imagePullPolicy: Always |
||||
|
name: cluster-autoscaler |
||||
|
resources: |
||||
|
limits: |
||||
|
cpu: 100m |
||||
|
memory: 300Mi |
||||
|
requests: |
||||
|
cpu: 100m |
||||
|
memory: 300Mi |
||||
|
command: |
||||
|
- ./cluster-autoscaler |
||||
|
- --v=3 |
||||
|
- --logtostderr=true |
||||
|
- --cloud-provider=azure |
||||
|
- --skip-nodes-with-local-storage=false |
||||
|
- --nodes=1:10:vmss1 |
||||
|
- --nodes=1:10:vmss2 |
||||
|
env: |
||||
|
- name: ARM_SUBSCRIPTION_ID |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: SubscriptionID |
||||
|
name: cluster-autoscaler-azure |
||||
|
- name: ARM_RESOURCE_GROUP |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: ResourceGroup |
||||
|
name: cluster-autoscaler-azure |
||||
|
- name: ARM_TENANT_ID |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: TenantID |
||||
|
name: cluster-autoscaler-azure |
||||
|
- name: ARM_CLIENT_ID |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: ClientID |
||||
|
name: cluster-autoscaler-azure |
||||
|
- name: ARM_CLIENT_SECRET |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: ClientSecret |
||||
|
name: cluster-autoscaler-azure |
||||
|
- name: ARM_VM_TYPE |
||||
|
valueFrom: |
||||
|
secretKeyRef: |
||||
|
key: VMType |
||||
|
name: cluster-autoscaler-azure |
||||
|
volumeMounts: |
||||
|
- mountPath: /etc/ssl/certs/ca-certificates.crt |
||||
|
name: ssl-certs |
||||
|
readOnly: true |
||||
|
restartPolicy: Always |
||||
|
volumes: |
||||
|
- hostPath: |
||||
|
path: /etc/ssl/certs/ca-certificates.crt |
||||
|
type: "" |
||||
|
name: ssl-certs |
||||
@ -1,19 +0,0 @@ |
|||||
apiVersion : apps/v1 |
|
||||
kind: Deployment |
|
||||
metadata: |
|
||||
name: volosofteventhub |
|
||||
spec: |
|
||||
replicas: 1 |
|
||||
selector: |
|
||||
matchLabels: |
|
||||
app: volosofteventhub |
|
||||
template: |
|
||||
metadata: |
|
||||
labels: |
|
||||
app: volosofteventhub |
|
||||
spec: |
|
||||
containers: |
|
||||
- name: volosofteventhub |
|
||||
image: voloeventhub.azurecr.io/volosofteventhub |
|
||||
ports: |
|
||||
- containerPort: 80 |
|
||||
@ -1,10 +0,0 @@ |
|||||
apiVersion: v1 |
|
||||
kind: Service |
|
||||
metadata: |
|
||||
name: volosofteventhub |
|
||||
spec: |
|
||||
type: LoadBalancer |
|
||||
ports: |
|
||||
- port: 80 |
|
||||
selector: |
|
||||
app: volosofteventhub |
|
||||
Loading…
Reference in new issue