11 トラブルシューティングと一般的な問題

この項の情報は、Oracle HTTP Server (OHS)コンテナの作成に関する問題、およびログ・ファイルの表示方法に関連しています。

CreatingContainerステータスのOHSコンテナ

OHSコンテナの作成中に、次のように表示されることがあります。
NAME                         READY   STATUS              RESTARTS   AGE
ohs-domain-d5b648bc5-vkp4s   0/1     ContainerCreating   0          2m13s
ポッドがContainerCreatingステータスの間に何が起こっているかを確認するには、次を実行します:
kubectl describe pod <podname> -n <namespace>
次に例を示します:
 kubectl describe pod ohs-domain-d5b648bc5-vkp4s -n ohsns

前述のコマンドの詳細は、考えられる問題の特定に役立つ可能性があります。

EventsPulling image <image>と表示されている場合は、コンテナがコンテナ・レジストリからイメージをプルしていることを意味します。ネットワークの速度によっては、5-10分かかることがあります。イメージがプルされると、ポッドがRUNNING 0/1ステータスになってから、最終的にRUNNING 1\1になります。

ImagePullBackOffのOHSコンテナ

次のように表示される場合:
kubectl get pods -n ohsns
NAME                          READY   STATUS             RESTARTS   AGE
ohs-domain-58b8dc4749-hzlc9   0/1     ImagePullBackOff   0          16s
これは、ohs.yamlの正しくないイメージの場所を挿入したか、イメージ自体に問題があるか、作成されたシークレットが正しくないことが原因である可能性があります。
問題を特定して解決したら、コンテナを削除して再試行できます。
cd $MYOHSFILES
kubectl delete -f ohs.yaml
kubectl create -f ohs.yaml

0/1 RunningステータスのOHSコンテナ

OHSコンテナの作成中に、次のように表示されることがあります。
NAME                         READY   STATUS              RESTARTS   AGE
ohs-domain-d5b648bc5-vkp4s   0/1     Running             0          2m13s

これは起動時の通常の動作ですが、ポッドは最終的にRUNNING 1/1になります。

ポッドのステータスは0/1ですが、次を実行して何が起きているかを確認できます:
kubectl logs -f <pod> -n <namespace>
次に例を示します:
kubectl logs -f ohs-domain-d5b648bc5-vkp4s -n ohsns

起動中に問題やエラーが発生した場合は、ここに記録されます。

ポッドを記述して、潜在的な問題を判断することもできます。
 kubectl describe pod <pod> -n <namespace>
次に例を示します:
kubectl describe pod ohs-domain-d5b648bc5-vkp4s -n ohsns

また、コンテナ内のOHSログ・ファイルを表示できます。この章の後半の「トラブルシューティングと一般的な問題」「OHSログ・ファイルの表示」を参照してください。

エラーによっては、$MYOHSFILES/ohsConfigディレクトリ内のファイルを修正する必要がある場合があります。

構成ファイルを修正したら、適切なconfigmapを削除して再作成する必要があります。たとえば、問題がhttpd.confssl.confまたはmod_wl_ohs.confにあった場合:
cd $MYOHSFILES
kubectl delete -f ohs.yaml
kubectl delete cm ohs-httpd -n ohsns
kubectl create cm -n ohsns ohs-httpd --from-file=ohsConfig/httpconf
kubectl create -f ohs.yaml

有効性プローブの問題

OHSコンテナのステータスが0/1 Runningで、コンテナが絶えず再起動する場合:
NAME                         READY   STATUS              RESTARTS   AGE
ohs-domain-d5b648bc5-vkp4s   0/1     Running             4          2m13s
この状況が発生し、kubectl logs -f <pod> -n <namespace>にエラーが表示されない場合は、次を実行します。
kubectl describe pod <podname> -n <namespace>
出力に次が表示される場合:
----     ------     ----               ----               -------
  Normal   Scheduled  63s                default-scheduler  Successfully assigned ohsns/ohs-domain-857c5d97d5-8nnx9 to doc-worker1
  Normal   Pulled     17s (x2 over 62s)  kubelet            Container image "<image>" already present on machine
  Normal   Created    17s (x2 over 62s)  kubelet            Created container ohs
  Normal   Started    17s (x2 over 62s)  kubelet            Started container ohs
  Warning  Unhealthy  2s (x9 over 61s)   kubelet            Readiness probe failed: Get "http://10.244.1.150:7777/helloWorld.html": dial tcp 10.244.1.150:7777: connect: connection refused
  Warning  Unhealthy  2s (x6 over 57s)   kubelet            Liveness probe failed:
  Normal   Killing    2s (x2 over 47s)   kubelet            Container ohs failed liveness probe, will be restarted
有効性プローブがチェックする前にhttpdプロセスが起動していないため、有効性プローブがコンテナを強制終了して再起動している可能性があります。これは低速なシステムで起こる可能性があります。
この状況が発生した場合は、コンテナを削除します。
cd $MYOHSFILES
kubectl delete -f ohs.yaml
ohs.yamlファイルを編集し、initialDelaySeconds10から30に増やします。
      livenessProbe:
          exec:
            command:
            - /bin/bash
            - -c
            - pgrep httpd
          initialDelaySeconds: 30
          periodSeconds: 5
次に、コンテナの作成を再試行します。
cd $MYOHSFILES
kubectl create -f ohs.yaml

OHSログ・ファイルの表示

コンテナ内のOHSログ・ファイルを表示するには、次のコマンドを実行します:
kubectl exec -n <namespace> -ti <pod> -- /bin/bash
次に例を示します:
kubectl exec -n ohsns -ti ohs-domain-79f8f99575-8qwfh -- /bin/bash
これにより、コンテナ内のBashシェルに移動します。
[oracle@ohs-domain-75fbd9b597-z77d8 oracle]$
Bashシェル内で、/u01/oracle/user_projects/domains/ohsDomain/server/ohs1/logsディレクトリに移動します。
cd  /u01/oracle/user_projects/domains/ohsDomain/server/ohs1/logs
このディレクトリ内から、問題の診断に役立つようにOHSログ・ファイルをcatできます。