apiVersion: v1 kind: Service metadata: labels: app: mnist type: inference framework: tensorflow name: mnist-inference namespace: default spec: ports: - name: grpc-tf-serving port: 9000 targetPort: 9000 - name: http-tf-serving port: 8500 targetPort: 8500 selector: app: mnist type: ClusterIP --- apiVersion: apps/v1 kind: Deployment metadata: labels: app: mnist type: inference framework: tensorflow name: mnist-inference namespace: default spec: selector: matchLabels: app: mnist template: metadata: labels: app: mnist version: v1 type: inference framework: tensorflow spec: containers: - args: - --port=9000 - --rest_api_port=8500 - --model_name=mnist - --model_base_path=s3://$S3_BUCKET/mnist/tf_saved_model command: - /usr/bin/tensorflow_model_server env: - name: AWS_ACCESS_KEY_ID valueFrom: secretKeyRef: key: AWS_ACCESS_KEY_ID name: aws-secret - name: AWS_SECRET_ACCESS_KEY valueFrom: secretKeyRef: key: AWS_SECRET_ACCESS_KEY name: aws-secret - name: AWS_REGION value: $AWS_REGION - name: S3_USE_HTTPS value: "true" - name: S3_VERIFY_SSL value: "true" - name: S3_ENDPOINT value: s3.$AWS_REGION.amazonaws.com image: tensorflow/serving:1.11.1 imagePullPolicy: IfNotPresent livenessProbe: initialDelaySeconds: 30 periodSeconds: 30 tcpSocket: port: 9000 name: mnist ports: - containerPort: 9000 - containerPort: 8500 resources: limits: cpu: "4" memory: 4Gi requests: cpu: "1" memory: 1Gi