Kubernetes common resource document prepared by example

Kubernetes common resource document prepared by example, hereby record easy future reference.

1、Namespace

apiVersion: v1
kind: Namespace
metadata:
  name: oas-dev

2、Deploy

apiVersion: apps/v1
kind: Deployment
metadata:
  name: openailab-security-auth-service
  namespace: oas-dev
  labels:
    name: openailab-security-auth-service
spec:
  replicas: 1
  selector:
    matchLabels:
      name: openailab-security-auth-service
  template:
    metadata:
      labels:
        name: openailab-security-auth-service
    spec:
      affinity:
        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
            - matchExpressions:
              - key: env
                operator: In
                values:
                - dev
      containers:
      - name: openailab-security-auth-service
        image: 10.12.1.202:8088/oascloud/openailab-security-auth-service:latest
        env:
        - name: APOLLO_APP_ID
          value: 'openailab-security-auth-service'
        - name: APOLLO_EUREKA_URI
          value: 'http://10.98.100.95:8080/'
        - name: APOLLO_NAMESPACE
          value: 'application'
        - name: SPRING_EUREKA_URI
          value: 'http://10.111.176.152:8080/eureka/'
        - name: LD_LIBRARY_PATH
          value: '$LD_LIBRARY_PATH:/usr/local/oas/library/auth'
        volumeMounts:
        - name: openailab-security-auth-service
          mountPath: /usr/local/logs
        - name: auth-library
          mountPath: /usr/local/oas/library/auth
        command: ['sh','-c','java -server -Xms512m -Xmx1024m -Djava.io.tmpdir=/var/tmp -Duser.timezone=Asia/Shanghai -jar openailab-security-auth-service-*.jar --server.port=8080 --spring.profiles.active=remote']
        ports:
        - containerPort: 8080
        resources:
          requests:
            memory: 512Mi
            cpu: 500m
          limits:
            memory: 1024Mi
            cpu: 1000m
      initContainers:
      - name: init-apollo
        image: busybox
        command: ['sh', '-c']
        args:
        - echo Prepare to apollo initialize..;
          until nc -w 1 -z 10.98.100.95 8080;
          do echo Waiting for eureka initialization to complete..; sleep 10; done;
          echo Eureka is ready.;
          until nc -w 1 -z 10.98.100.95 8090;
          do echo Waiting for admin initialization to complete..; sleep 10; done;
          echo Admin is ready.;
          echo Apollo Initialization successful!;
      volumes:
      - name: openailab-security-auth-service
        hostPath:
          path: /usr/local/logs
      - name: auth-library
        hostPath:
          path: /usr/local/oas/library/auth

3、Deploy Service

apiVersion: v1
kind: Service
metadata:
  name: openailab-security-auth-service
  namespace: oas-dev
  labels:
    name: openailab-security-auth-service
spec:
  type: NodePort
  ports:
  - nodePort: 30014
    targetPort: 8080
    port: 8080
  selector:
    name: openailab-security-auth-service

4、Endpoints

apiVersion: v1
kind: Endpoints
metadata:
  name: elasticsearch
  namespace: oas-dev
subsets:
 - addresses:
    - ip: 10.12.1.203
   ports:
    - name: es01
      port: 9500
    - name: es02
      port: 9501
    - name: es03
      port: 9502

5、Endpoints Service

apiVersion: v1
kind: Service
metadata:
  name: elasticsearch
  namespace: oas-dev
spec:
  type: NodePort
  clusterIP: 10.110.181.25
  ports:
   - name: es01
     port: 9500
     targetPort: 9500
     protocol: TCP
   - name: es02
     port: 9501
     targetPort: 9501
     protocol: TCP
   - name: es03
     port: 9502
     targetPort: 9502
     protocol: TCP

At present work using only these four categories to the resource file.

Published 352 original articles · won praise 390 · views 370 000 +

Guess you like

Origin blog.csdn.net/qq_19734597/article/details/102783362