5.8 インストールのトラブルシューティング
この項では、OAA、OARMおよびOUAのインストールに関するトラブルシューティングのヒントを示します。
5.8.1 installManagementContainer.shの実行中の問題
この項では、installManagementContainer.sh
の実行中に発生する問題のトラブルシューティングのヒントを示します。
OAA管理コンテナのインストール中のPodmanの問題
- イメージまたはファイル形式のエラーのために、Podmanがtarファイル内のOAAイメージをロードできません。たとえば:
原因として、インストール・ホストのルート・パーティションの空き領域が不足している(Podmanは一時ファイルをStoring signatures Getting image source signatures Copying blob 01092b6ac97d skipped: already exists Copying blob dba9a6800748 skipped: already exists Copying blob bae273a35c58 skipped: already exists Copying blob 7f4b55b885b0 skipped: already exists Copying blob 93e8a0807a49 skipped: already exists Copying blob fa5885774604 skipped: already exists Copying blob 3b8528487f10 skipped: already exists Copying blob 3a1c2e3e35f4 [==========================>-----------] 213.8MiB / 298.1MiB Copying blob 6d31843e131e [=================================>----] 210.5MiB / 236.5MiB Copying blob f35b9630ef38 [===========>--------------------------] 213.8MiB / 672.2MiB Copying blob ef894c2768e3 done Copying blob 846fd069f886 [==========>---------------------------] 197.7MiB / 672.2MiB Copying blob 257c48b76c82 done Error: payload does not match any of the supported image formats (oci, oci-archive, dir, docker-archive)
/var/tmp
に格納する)か、Podmanバージョンが3.3.0以降でないことが考えられます。このエラーが発生した場合は、問題に対処した後で、/var/tmp
下のすべてのファイルを削除してから、インストールを再試行してください。 - 権限の問題のために、Podmanがtarファイル内のOAAイメージをロードできません。たとえば:
Using image release files ./releaseimages.txt and ./nonreleaseimages.txt... tee: ./oaainstall-tmp/run.log: Permission denied Using install settings from ./installOAA.properties. tee: ./oaainstall-tmp/run.log: Permission denied Checking kubectl client version... WARNING: version difference between client (1.23) and server (1.21) exceeds the supported minor version skew of +/-1 tee: ./oaainstall-tmp/run.log: Permission denied kubectl version required major:1 minor:18, version detected major:1 minor:23 tee: ./oaainstall-tmp/run.log: Permission denied
原因として、あるユーザーとしてzipファイルを抽出したが、権限のない別のユーザーとして
installManagementContainer.sh
を実行したことが考えられます。この場合は、$WORKDIR/oaaimages/oaa-install/oaainstall-tmp
ディレクトリを削除して、zipファイルを抽出したユーザーと同じユーザーでインストールを再試行してください。 - Podmanは、前回のインストール試行でOAAイメージのロードに失敗した後、必要なすべてのイメージのプル/タグ/プッシュを実行しません。この場合は、
$WORKDIR/oaaimages/oaa-install/oaainstall-tmp
ディレクトリを削除して再試行してください。
OAA管理チャートのインストールの失敗
Executing 'helm install ... oaamgmt charts/oaa-mgmt'.
Continue? [Y/N]:
y
Error: unable to build kubernetes objects from release manifest: error validating "": error validating data: ValidationError(Deployment.spec.template.spec.containers[0]): unknown field "volumMounts" in io.k8s.api.core.v1.Container
OAA管理チャートのマニフェスト・ファイルが破損した可能性があります。installOAA.properties
、cert.p12
およびtrust.p12
を安全な場所にコピーし、インストール・ディレクトリ$WORKDIR/oaaimages/oaa-install
を削除してから、<OAA_Image>.zip
を抽出してインストールを再開します。
インストール・スクリプトがOAA管理コンテナ・ポッドの起動を待ってタイムアウトしました
NAME READY STATUS RESTARTS AGE
oaamgmt-oaa-mgmt-74c9ff789d-wq82h 0/1 ContainerCreating 0 2m3s
Waiting 15 secs for OAA mgmt deployment to run...
Executing 'kubectl get pods oaamgmt-oaa-mgmt-74c9ff789d-wq82h -n oaans'...
NAME READY STATUS RESTARTS AGE
oaamgmt-oaa-mgmt-74c9ff789d-wq82h 0/1 ContainerCreating 0 2m18s
Waiting 15 secs for OAA mgmt deployment to run...
...
OAA mgmt pod is not running after 450 secs, cannot proceed with install.
Critical error, exiting. Check ./oaainstall-tmp/run.log for additional information.
この場合は、次のコマンドを実行して追加情報を取得してください:$ kubectl get pods -n oaans
$ kubectl describe pod oaamgmt-<pod> -n oaans
- NFSのエラーの場合は、
installOAA.properties
のNFSボリューム情報が正しいことを確認します。この場合は、kubectl describe
で次のように表示されます:Output: mount.nfs: mounting <ipaddress>:/scratch/oaa/scripts-creds failed, reason given by server: No such file or directory Warning FailedMount 15s kubelet, <ipaddress> Unable to attach or mount volumes: unmounted volumes=[oaamgmt-oaa-mgmt-configpv oaamgmt-oaa-mgmt-credpv oaamgmt-oaa-mgmt-logpv], unattached volumes=[oaamgmt-oaa-mgmt-configpv oaamgmt-oaa-mgmt-credpv oaamgmt-oaa-mgmt-logpv oaamgmt-oaa-mgmt-vaultpv default-token-rsh62]: timed out waiting for the condition
- イメージ・プル・エラーの場合は、イメージ・プル・シークレット(
dockersecret
)が正しく作成され、installOAA.properties
のプロパティinstall.global.repo
、install.global.image.tagおよびinstall.global.imagePullSecrets\[0\].name
が正しいことを確認します。この場合は、kubectl describe pod
で次のように表示されます:Warning Failed 21s (x3 over 61s) kubelet, <ipaddress> Error: ErrImagePull Normal BackOff 7s (x3 over 60s) kubelet, <ipaddress> Back-off pulling image "container-registry.example.com/oracle/shared/oaa-mgmt:<tag>" Warning Failed 7s (x3 over 60s) kubelet, <ipaddress> Error: ImagePullBackOff
- 明らかなエラーがなくタイムアウトする場合、クラスタでOAA管理イメージのダウンロードに時間がかかりすぎている可能性があります。この場合、管理ポッドは最終的に起動されますが、インストールは中止されます。これが発生した場合は、
helm delete oaamgmt -n oaans
を使用してOAA管理helmリリースを削除し、インストール・スクリプトを再実行します。
5.8.2 OAA.shの実行中の問題
この項では、OAA.sh
の実行中に発生する問題のトラブルシューティングのヒントを示します。
OAA.shの実行中の一般的な失敗
どこかのステージでOAA.sh
デプロイメントが失敗した場合、通常は根本的な問題を修正してからOAA.sh
を再実行できます。インストールによってすでに実行された構成タスクは、OAA.shの再実行時にはスキップされます。
ログ情報
OAA.sh
の実行中にデプロイメントが失敗し、詳細情報が必要な場合、install.log
を参照できます。このログには、管理コンテナ内部(/u01/oracle/logs
)から、またはコンテナの外部(<NFS_LOGS_PATH>)からアクセスできます。
install.logが別のコンポーネント・ログ・ファイルを参照している場合、このログも同じ場所にあります。
Trust and Cert Store Configuration failed
Configuring Trust and Cert Store for OAA.
Trust and Cert Store Configuration failed. Check log /u01/oracle/logs/install.log for details.
かつ、install.log
に次のように示されている場合:Configuring Trust and Cert Store for OAA.
Checking oauth.identityuri mentioned in /u01/oracle/scripts/settings/installOAA.properties
Property oauth.identityuri is https, will proceed to download certificate for https://ohs.example.com
Checking url connectivity for https://ohs.example.com - 139784391608128:error:02002071:system library:connect:No route to host:crypto/bio/b
_sock2.c:110: 139784391608128:error:2008A067:BIO routines:BIO_connect:connect error:crypto/bio/b_sock2.c:111: connect:errno=113
Failed
これは次の2つのうちのいずれかを意味します。- アクセス先のURL (
https://ohs.oracle.com
など)にアクセスできません。または、 - アクセス先のOHS (またはロード・バランサ)がデフォルトの443ポートを使用しており、
installOAA.properties
のoauth.identityuri
パラメータに:443
が追加されていません。「installOAA.propertiesの編集」を参照してください。
<NFS_CONFIG>/installOAA.properties
を編集して問題を解決し、OAA.sh
を再度実行します。
OAA.shの実行中にOAuthの作成に失敗する
インストール時に、OAuthドメイン、クライアントおよびリソース・サーバーが作成されます。失敗した場合は、OAuthのパラメータが正しいかどうかを確認します「OAuthおよびOracle HTTP Serverの構成」を参照してください。
OAA.shの実行中にOAuthの作成に失敗する
これは、httpd.conf
およびmod_wl_ohs.conf
ファイルが更新されない場合に発生します。値を更新するには、「OAuthおよびOracle HTTP Serverの構成」を参照してください。
Configuring OAM for OAA.OAM for OAA setup failed
Configuring OAM for OAA. OAM for OAA setup failed. Check log /u01/oracle/logs/install.log for details.
install.log
に参照先として/u01/oracle/logs/add_resources.log
が示されていることがあります。add_resources.log
に次のように示されていることがあります:
curl -sk --connect-timeout 30 -X POST 'https://ohs.example.com/oam/services/rest/11.1.2.0.0/ssa/policyadmin/resource' -H 'Content-Type: application/json' -H 'Authorization: Basic <Base64EncodedUser:Password>' -d '{"queryString":null,"applicationDomainName":"IAM Suite","hostIdentifierName":"IAMSuiteAgent","resourceURL":"/oauth2/rest/**","protectionLevel":"EXCLUDED","QueryParameters":null,"resourceTypeName":"HTTP","Operations":null,"description":"/oauth2/rest/**","name":"/oauth2/rest/**","id":"1"}'
エラーが参照されていない場合は、管理コンテナ内からコマンドを実行します。<Base64EncodedUser:Password>
は、installOAA.properties
のパラメータoauth.basicauthzheader
に設定されている値に置き換える必要があります。エラーError 401--Unauthorized
が返された場合、これはoauth.basicauthzheader
に設定された値が正しくないことを意味します。<NFS_CONFIG>/installOAA.properties
を編集し、パラメータを正しい値に設定します。次に、OAA.sh
を再実行します。詳細は、「installOAA.propertiesの編集」を参照してください。
ポッドの起動の問題
Installing OAA
セクションに到達すると、次を実行してポッドのステータスを確認できます:kubectl get pods -n oaans
kubectl logs -f <pod> -n oaans
kubectl describe pod <pod> -n oaans
OAA.shの実行中にポッドの起動に失敗し、CrashLoopBackOffが表示される
エラーが表示されたポッドに対してkubectl logs <pod> -n <namespace>
コマンドを実行します。エラーの原因の1つとして、次のことが考えられます:
そのエントリのmod_wl_ohs.conf
のPathTrim
およびPathPrepend
が更新されなかったため、ポッドはhttps://ohs.example.com/.well-known/openid-configuration
に接続できませんでした。「OAuthおよびOracle HTTP Serverの構成」を参照してください。
OAA.shのインストールがタイムアウトしたのにポッドが実行中と表示される
OAAインストールがタイムアウトしたのに、OAAポッドにエラーが表示されず、最終的に実行中状態になった場合、クラスタでOAAイメージのダウンロードに時間がかかりすぎていた可能性があります。この場合、OAAポッドは最終的に起動されますが、インストールは完了しません。これが発生した場合は、インストールをクリーン・アップし、インストール・スクリプトを再実行します。
Kubectlで"Unable to connect to the server: net/http: TLS handshake timeout"と報告される
- プロキシは環境で定義されていますが、
no_proxy
環境変数にクラスタ・ノードが含まれていません。この問題を解決するには、クラスタ・ノードのIPまたはホスト名をno_proxy
環境変数に追加する必要があります。 - kube構成ファイル
~/.kube/config
または/etc/kubernetes/admin.conf
が無効です。
Failed to import snapshot
Importing the snapshot file : /u01/oracle/scripts/oarm-12.2.1.4.1-base-snapshot.zip
Executing CURL : curl --silent -k --location --request POST ‘https://ohs.example.com/policy/risk/v1/snapshots’
--header ‘Authorization: Basic b2FhaW5zdGFsbC1vYWEtcG9saWN5OldlbGNvbWUx’ --header ‘Content-type: ap
plication/octet-stream’ --data-binary ‘@/u01/oracle/scripts/oarm-12.2.1.4.1-base-snapshot.zip’
Import status : {“status”:“201",“message”:“Snapshot created successfully.“,”snapshot”:{“name”:“OARM Snapshot”,“description”:“OARM Snapshot”,“snapshotId”:“1",“createTime”:“10-10-2024 16:32:45"}}
Upload status : 201
Snapshot ID : 1
Applying snapshot : curl --silent -k --location --request POST ‘https://ohs.example.com/policy/risk/v1/snapshots/1/apply’ --header ‘Authorization: Basic b2FhaW5zdGFsbC1vYWEtcG9saWN5OldlbGNvbWUx’
Apply result : <html>
<head><title>504 Gateway Time-out</title></head>
<body>
<center><h1>504 Gateway Time-out</h1></center>
<hr><center>nginx</center>
</body>
</html>
parse error: Invalid numeric literal at line 1, column 7
Fail to apply the snapshot: 1
Failed to import snapshot.
kubectl annotate ingress -n oaans nginx.ingress.kubernetes.io/proxy-read-timeout=3600
nginx.ingress.kubernetes.io/proxy-connect-timeout=3600
nginx.ingress.kubernetes.io/proxy-send-timeout=3600 --all
OAAでのTAPパートナの作成中のエラー'jq: error: Invalid escape at line 1, column 6`
OAA.sh
の実行中に次のエラーが表示された場合は、oua.tapAgentFilePass
値がbase64で設定されていません:jq: error: Invalid escape at line 1, column 6 (while parsing '"\�"') at <top-level>, line 1:
.agentName |= if . == "" then "MFAOAAPartner17ohsapr9" else . end | .privateKey |= if . == "" then "CECECECE0000000200000001..etc..
jq: 1 compile error
Creating tap partner in OAA
この問題を解決するには、値をbase64バージョンのパスワードに設定し、OAA.sh
を再度実行します。「インストールのためのプロパティ・ファイルの準備」を参照してください。
DRSSログの不正なOracle Access Managerリクエスト
<DATE> Thread[http-thread-34,5,server]: INFO oracle.security.am.drss.handler.oam.OAMHandler parseOAMResponse Exception during parseOAMResponse Unexpected character ('<' (code 60)): expected a valid value (JSON String, Number, Array, Object or token 'null', 'true' or 'false')
at [Source: (String)"<html><head><title>Bad Oracle Access Manager Request</title><META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=utf-8"></head><body><h1>Bad Oracle Access Manager Request</h1><p>Unable to process the request due to unexpected error.</p></body></html>
oua.oamRuntimeEndpoint
がinstallOAA.properties
で正しく設定されていないか、OAMサーバーの完全修飾ホスト名に設定されていないか、OAMサーバーが正しく機能していません。
クリーンアップ中にOAuthからOAAドメインを削除できない
- コマンドを使用して、OAM管理者ユーザーとそのパスワードをエンコードします:
たとえば:echo -n <username>:<password> | base64
この値は、次の例のecho -n oamadmin:<password> | base64
<ENCODED_OAMADMIN>
に使用する必要があります。 - 次を実行します:
$ curl --location --request DELETE 'http://<OAuth_Host>:<OAuth_port>/oam/services/rest/ssa/api/v1/oauthpolicyadmin/oauthidentitydomain?name=OAADomain' \ --header 'Authorization: Basic <ENCODED_OAMADMIN>' OAuth Identity Domain is not empty. Kindly remove (resource/client) entities from identity domain $ curl --location --request GET 'http://<OAuth_Host>:<OAuth_port>/oam/services/rest/ssa/api/v1/oauthpolicyadmin/client?identityDomainName=OAADomain' --header 'Content-Type: application/json' --header 'Authorization: Basic <ENCODED_OAMADMIN>' $ curl --location --request GET 'http://<OAuth_Host>:<OAuth_port>/oam/services/rest/ssa/api/v1/oauthpolicyadmin/application?identityDomainName=OAADomain' --header 'Content-Type: application/json' --header 'Authorization: Basic <ENCODED_OAMADMIN>'