UiPath Documentation
automation-suite
2024.10
false
Linux の Automation Suite のインストール ガイド
重要 :
このコンテンツの一部は機械翻訳によって処理されており、完全な翻訳を保証するものではありません。 新しいコンテンツの翻訳は、およそ 1 ~ 2 週間で公開されます。

ログを手動でクリーンアップする方法

AI Center に Ceph ストレージがインストールされている場合に、ログを手動でクリーンアップし、Automation Suite の Ceph を読み取り専用モードから復元します。

Ceph ログをクリーンアップする

Ceph の読み取り専用モードから移行する

AI Center をインストールして Ceph ストレージを使用している場合は、次の手順を実行して Ceph の読み取り専用モードを解除します。

  1. Ceph がフル キャパシティかどうかを確認します。

    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph status
    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph status
    

    Ceph がフル キャパシティの場合は、読み取り専用のしきい値を調整して rgw ゲートウェイを起動する必要があります。

  2. ML スキルを縮小します。

    kubectl -n uipath scale deployment <skill> --replicas=0
    kubectl -n uipath scale deployment <skill> --replicas=0
    
  3. クラスターを書き込みモードにします。

    ceph osd set-full-ratio 0.95 <95 is the default value so you could increase to 96 and go up 
    incrementall>
    ceph osd set-full-ratio 0.95 <95 is the default value so you could increase to 96 and go up 
    incrementall>
    
  4. ガベージ コレクションを実行します。

    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- radosgw-admin gc process --include-all
    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- radosgw-admin gc process --include-all
    
  5. ストレージがダウンしたら、次のコマンドを実行します。

    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph status
    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph df
    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph status
    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph df
    

    この時点で、ストレージは小さくなり、クラスターは正常になります。

ストリーミング ログを無効化する

すべてが正常な状態であることを確認するには、次の手順を実行してストリーミング ログを無効化します。

  1. UiPath および AI Center で自動同期を無効化します。

  2. AI Center のストリーミング ログを無効化します。

  3. 既にデプロイされている ML スキルがある場合は、次のコマンドを実行します。

    kubectl set env deployment [REPLICASET_NAME] LOGS_STREAMING_ENABLED=false
    kubectl set env deployment [REPLICASET_NAME] LOGS_STREAMING_ENABLED=false
    
  4. どのバケットが最も多くのスペースを使用しているかを調べます。

    kubectl -n rook-ceph exec deploy/rook-ceph-tools -- radosgw-admin bucket stats | jq -r '["BucketName","NoOfObjects","SizeInKB"], ["--------------------","------","------"], (.[] | [.bucket, .usage."rgw.main"."num_objects", .usage."rgw.main".size_kb_actual]) | @tsv' | column -ts $'\t'
    kubectl -n rook-ceph exec deploy/rook-ceph-tools -- radosgw-admin bucket stats | jq -r '["BucketName","NoOfObjects","SizeInKB"], ["--------------------","------","------"], (.[] | [.bucket, .usage."rgw.main"."num_objects", .usage."rgw.main".size_kb_actual]) | @tsv' | column -ts $'\t'
    
  5. s3cmd をインストールして、sf-logs をクリーンアップする準備をします。

    pip3 install awscli s3cmd
    export PATH=/usr/local/bin:$PATH
    pip3 install awscli s3cmd
    export PATH=/usr/local/bin:$PATH
    
  6. sf-logsログをクリーンアップします。詳しくは、「 sf-logs バンドルに保存されている古いログをクリーンアップする方法」をご覧ください。

  7. クリーンアップ操作を完了します。

    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- radosgw-admin gc process --include-all
    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- radosgw-admin gc process --include-all
    
  8. 前の手順で問題が解決しない場合は、AI Center のデータをクリーンアップします。

  9. ストレージが縮小されたかどうかを確認します。

    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph df
    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph df
    
  10. ストレージがいっぱいでなくなったら、バックフィルの設定を減らします。

    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph osd set-full-ratio 0.95
    kubectl -n rook-ceph exec -it deploy/rook-ceph-tools -- ceph osd set-full-ratio 0.95
    
  11. ML スキルがマルチパート アップロードの問題の影響を受けていないかを確認します。

    echo $(kubectl -n rook-ceph exec deploy/rook-ceph-tools -- radosgw-admin bucket list --max-entries 10000000 --bucket train-data | jq '[.[] | select (.name | contains("_multipart")) | .meta.size] | add') | numfmt --to=iec-i
    echo $(kubectl -n rook-ceph exec deploy/rook-ceph-tools -- radosgw-admin bucket list --max-entries 10000000 --bucket train-data | jq '[.[] | select (.name | contains("_multipart")) | .meta.size] | add') | numfmt --to=iec-i
    

    ユーザーがこの問題の影響を受けていて、戻り値が高い場合は、バックアップと復元を実行する必要があります。

S3 ログをクリーンアップする

S3 互換ストレージ プロバイダーを使用している場合は、次の手順を実行してログをクリーンアップします。

  1. ストレージ アクセス用のキーを取得します。

  2. 大きなアイテムを見つけます。

    export PATH=/usr/local/bin:$PATH
    kubectl  get secret -n logging  logging-secrets -o json |jq -r .data
     
    # Then base64 decode the "S3_ACCESSKEY" and "S3_SECRETKEY"
    export PATH=/usr/local/bin:$PATH
    kubectl  get secret -n logging  logging-secrets -o json |jq -r .data
     
    # Then base64 decode the "S3_ACCESSKEY" and "S3_SECRETKEY"
    
  3. 前のステップでデコードされた認証情報を使用して AWS CLI を設定します。AWS を構成するには、次のコマンドを実行します。

    aws configure
    
    --
    Once aws cli is configured, you can run below commands to check content of sf logs
    aws configure
    
    --
    Once aws cli is configured, you can run below commands to check content of sf logs
    
  4. sf-logs を削除します。詳しくは、AWS のドキュメントをご覧ください。

    aws s3 rm --endpoint-url <AWS-ENDPOINT> --no-verify-ssl --recursive s3://sf-logs --include="2022* --exclude="2022_12_8"
    
    # You can craft an include and exclude command to help with this. use --dryrun first
    aws s3 rm --endpoint-url <AWS-ENDPOINT> --no-verify-ssl --recursive s3://sf-logs --include="2022* --exclude="2022_12_8"
    
    # You can craft an include and exclude command to help with this. use --dryrun first
    
  5. train-data を削除します。

ログを自動的にクリーンアップするには、外部 ObjectStore にクリーンアップ ポリシーを設定することもできます。

注:

CORS とバケットの保持ポリシーは、ObjectStore プロバイダーに基づいて変更される場合があります。同じことについては、ObjectStore プロバイダーのドキュメントをご覧ください。

Automation Suite プラットフォームによって生成されたログは 15 日間保持することをお勧めします。これらのログ オブジェクトは、プラットフォーム バケットの automation-suite-logs フォルダーにあります。

次の例は、AWS で必要な手順を示しています。

  1. 次の内容で policy.json を作成します。

    {
        "Rules": [
            {
                "Filter": {
                    "Prefix": "automation-suite-logs/"
                },
                "Status": "Enabled",
                "Expiration": {
                    "Days": 15
                },
                "ID": "DeleteOldLogs"
            }
        ]
    }
    {
        "Rules": [
            {
                "Filter": {
                    "Prefix": "automation-suite-logs/"
                },
                "Status": "Enabled",
                "Expiration": {
                    "Days": 15
                },
                "ID": "DeleteOldLogs"
            }
        ]
    }
    
  2. バケットに policy.json を適用するには、次のコマンドを実行します。

    aws s3api put-bucket-lifecycle-configuration --bucket BUCKET_NAME --lifecycle-configuration file://policy.json
    aws s3api put-bucket-lifecycle-configuration --bucket BUCKET_NAME --lifecycle-configuration file://policy.json
    

Azure ログをクリーンアップする

Azure バケットのログをクリーンアップするには、 az CLI を使用できます。次の例は、特定の日付のログを削除するコマンドを示しています。

az storage blob delete-batch  --source <CONTAINER> --pattern  "automation-suite-logs/2025_01_01/*" --account-name <ACCOUNT_NAME> --debug
az storage blob delete-batch  --source <CONTAINER> --pattern  "automation-suite-logs/2025_01_01/*" --account-name <ACCOUNT_NAME> --debug
  • <CONTAINER> ストレージ コンテナーを表します ( infra.external_object_storage.bucket_nameの下に記載されているバケット名など) には、Automation Suite の保存に使用します

ログ。

  • <ACCOUNT_NAME> は Azure Storage アカウント名を表します。

既定では、ログは automation-suite-logs directoryにアップロードされます。このディレクトリ内には、日付で名前が付けられたサブディレクトリが表示されます。

特定の日付のログを削除する場合は、パスの日付をターゲットと一致するように更新します。たとえば、2025 年 4 月 15 日 (YYYY/MM/DD) のログを削除するには、ディレクトリ パターン「 automation-suite-logs/2025_04_15」を使用します。

30 日以上経過したログの削除を自動化するには、Azure Storage アカウントでライフサイクル ポリシーを有効化します。次の例では policy.json 30 日以上経過したログを削除します。

{
  "rules": [
    {
      "enabled": true,
      "name": "DeleteOldLogs",
      "type": "Lifecycle",
      "definition": {
        "actions": {
          "baseBlob": {
            "delete": {
              "daysAfterModificationGreaterThan": 30
            }
          }
        },
        "filters": {
          "blobTypes": [
            "blockBlob",
            "appendBlob"
          ],
          "prefixMatch": [
            "uipath-as-platform/automation-suite-logs/"
          ]
        }
      }
    }
  ]
}
{
  "rules": [
    {
      "enabled": true,
      "name": "DeleteOldLogs",
      "type": "Lifecycle",
      "definition": {
        "actions": {
          "baseBlob": {
            "delete": {
              "daysAfterModificationGreaterThan": 30
            }
          }
        },
        "filters": {
          "blobTypes": [
            "blockBlob",
            "appendBlob"
          ],
          "prefixMatch": [
            "uipath-as-platform/automation-suite-logs/"
          ]
        }
      }
    }
  ]
}
注:

uipath-as-platform はコンテナー名を表します。この値を、環境で構成されているコンテナーと一致するように更新します。

ライフサイクル ポリシーを適用するには、次のコマンドを実行します。

az storage account management-policy  create  --account-name <ACCOUNT_NAME>  --resource-group  <RESOURCE_GROUP_NAME> --policy @policy.json
az storage account management-policy  create  --account-name <ACCOUNT_NAME>  --resource-group  <RESOURCE_GROUP_NAME> --policy @policy.json

ここでは、上記のポリシー定義を含むファイル policy.json

このページは役に立ちましたか?

接続

ヘルプ リソース サポート

学習する UiPath アカデミー

質問する UiPath フォーラム

最新情報を取得