--- kind: ClusterRole apiVersion: rbac.authorization.k8s.io/v1 metadata: name: appsimulator namespace: default rules: - apiGroups: - "" resources: - "*" verbs: - "*" - apiGroups: - rbac.authorization.k8s.io - extensions - apps resources: - "*" verbs: - "*" - apiGroups: - apiextensions.k8s.io resources: - customresourcedefinitions - pods - deployments verbs: - get - list - watch - create - delete --- apiVersion: v1 kind: ServiceAccount metadata: name: appsimulator --- kind: ClusterRoleBinding apiVersion: rbac.authorization.k8s.io/v1 metadata: name: appsimulator namespace: default subjects: - kind: ServiceAccount name: appsimulator namespace: default roleRef: kind: ClusterRole name: appsimulator apiGroup: rbac.authorization.k8s.io --- apiVersion: apps/v1 kind: Deployment metadata: labels: app: appsimulator name: appsimulator spec: replicas: 1 selector: matchLabels: app: appsimulator template: metadata: labels: app: appsimulator spec: nodeSelector: alpha.eksctl.io/nodegroup-name: ${CLUSTER_NAME}-ng serviceAccountName: appsimulator containers: - env: - name: MIN_SLEEP_BETWEEN_CYCLE value: "3" - name: MAX_SLEEP_BETWEEN_CYCLE value: "3" - name: QUEUE_URL value: "https://sqs.${AWS_REGION}.amazonaws.com/${AWS_ACCOUNT_ID}/vertscaler-state" - name: APP_QUEUE_URL value: "https://sqs.${AWS_REGION}.amazonaws.com/${AWS_ACCOUNT_ID}/db" - name: DEPLOY_NAME value: "appsimulator" - name: RADIAN_INTERVAL value: "0.168" - name: RADIAN_MAX value: "3.14" - name: MIN_AT_CYCLE_START value: "1" - name: SERVER_DEPLOY_PREFIX value: "django-app" - name: CLIENT_DEPLOY_PREFIX value: "apploader" image: ${AWS_ACCOUNT_ID}.dkr.ecr.${AWS_REGION}.amazonaws.com/loader:${LOAD_IMAGE_TAG} imagePullPolicy: Always name: appsimulator command: ["/appsimulator.sh"] resources: requests: cpu: 128m memory: 128Mi