インストールされているクラスタ自動スケーラをテストするには、次の手順を参照してください。

要件

このタスクでは、TKG クラスタにクラスタ自動スケーラがインストールされていることを前提としています。

クラスタ自動スケーラのテスト

自動スケーラによってワーカー ノードが自動的にスケーリングされるようにするには、アプリケーションをデプロイしてから、デプロイ内のレプリカの数をスケーリングします。ノード リソースが不足すると、自動スケーラはワーカー ノードをスケール アップします。

  1. 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. アプリケーションを作成します。
    kubectl apply -f app.yaml
  3. アプリケーションのレプリカをスケール アップして自動スケーラをトリガします。

    たとえば、spec.selector.replicas の数を 1 からより大きな数に増やして、追加のワーカー ノードが要求されるようにします。

  4. アプリケーションを更新します。
    kubectl apply -f app.yaml
  5. 負荷を処理するために追加のワーカー ノードが作成されることを確認します。

    ノード リソースが不足すると、自動スケーラはワーカー ノードの数をスケール アップします。