Fare riferimento a queste istruzioni per testare un Autoscaler del cluster installato.

Requisiti

Questa attività presuppone che sia stato installato Cluster Autoscaler in un cluster TKG.

Esecuzione del test di Autoscaler del cluster

Per verificare che l'Autoscaler scali automaticamente i nodi di lavoro, distribuire un'applicazione, quindi scalare il numero di repliche nella distribuzione. L'Autoscaler scalerà verticalmente i nodi di lavoro quando le risorse del nodo non saranno sufficienti.

  1. Creare la seguente definizione di applicazione denominata app.yaml.
    apiVersion: v1
    kind: Namespace
    metadata:  
      name: app  
      labels:    
        pod-security.kubernetes.io/enforce: privileged
    ---
    apiVersion: v1
    kind: Service
    metadata:  
      name: application-cpu  
      namespace: app  
      labels:    
        app: application-cpu
    spec:  
      type: ClusterIP  
      selector:    
        app: application-cpu  
      ports:    
        - protocol: TCP      
          name: http      
          port: 80      
          targetPort: 80
    ---
    apiVersion: apps/v1
    kind: Deployment
    metadata:  
      name: application-cpu  
      namespace: app  
      labels:    app: application-cpu
    spec:  
      selector:    
        matchLabels:      
          app: application-cpu  
        replicas: 1  
        strategy:    
          type: RollingUpdate    
          rollingUpdate:      
            maxSurge: 1      
            maxUnavailable: 0  
        template:    
          metadata:      
            labels:        
              app: application-cpu    
          spec:      
            containers:      
            - name: application-cpu        
              image: wcp-docker-ci.artifactory.eng.vmware.com/app-cpu:v1.0.0        
              imagePullPolicy: Always        
              ports:          
                - containerPort: 80        
              resources:          
                requests:            
                  memory: 50Mi            
                  cpu: 500m          
                limits:            
                  memory: 500Mi            
                  cpu: 2000m
  2. Creare l'applicazione.
    kubectl apply -f app.yaml
  3. Scalare verticalmente le repliche dell'applicazione per attivare l'Autoscaler.

    Ad esempio, aumentare il numero di spec.selector.replicas da 1 a un numero maggiore in modo che siano necessari nodi di lavoro aggiuntivi.

  4. Aggiornare l'applicazione.
    kubectl apply -f app.yaml
  5. Verificare che siano stati creati nodi di lavoro aggiuntivi per gestire il carico.

    L'Autoscaler scalerà verticalmente il numero di nodi di lavoro una volta che le risorse dei nodi non sono sufficienti.