dbcliを使用したDBシステム・リソースの更新

dbcliユーティリティを使用して、DBシステム・リソースを更新できます。これには、DBシステム、DBシステム内のノード上のオペレーティング・システム(OS)およびデータベース・ホームの更新が含まれます。

dbcliコマンドの詳細は、Oracle Database CLIリファレンスに関する項を参照してください。

前提条件

  1. OSの更新の準備をします。

    OSを更新する前に、次の重要なガイドラインおよび情報を確認してください:

    • OSの更新を試行する前に、DBシステムのデータベースをバックアップします。
    • DBシステムからパッケージを削除しないでください。ただし、更新を正常に完了するために、カスタムRPM (システムのプロビジョニング後にインストールされたパッケージ)を削除する必要がある場合があります。
    • 本番システムを更新する前に、すべての更新を非本番システムで十分にテストすることをお薦めします。
    • DBシステムの起動に使用されるイメージは、必要な更新を使用して定期的に更新されます。DBシステムの起動後に、OracleのパブリックYUMサーバーを介して発行される必要なOSセキュリティ更新を適用する必要があります。
    • OS更新を適用するには、YUMリポジトリにアクセスできるようにDBシステムの仮想クラウド・ネットワーク(VCN)を構成する必要があります。詳細は、VCNおよびサブネットに関する項を参照してください。
  2. SSHを使用してDBシステムに接続するための要件。

    SSHでDBシステムに接続するには、DBシステムの起動時に使用された公開キーに関連付けられている秘密キーへのパスが必要です。

    DBシステムのパブリックIPアドレスまたはプライベートIPアドレスも必要になります。

    プライベートIPアドレスを使用して、オンプレミス・ネットワークまたはVCN内からシステムに接続します。これには、VPNまたはFastConnectを介してVCNに接続するオンプレミス上のホストから、または同じVCN内の別のホストからの接続が含まれます。DBシステムのパブリックIPアドレスを使用して、クラウド外部(VPNなし)からシステムに接続します。IPアドレスは、コンソールで次のようにして確認できます:

    1. 「DB Systemの詳細」ページの「リソース」で、「ノード」をクリックします。
    2. DBシステムの「ノード」が表示されている表の「パブリックIPアドレス」および「プライベートIPアドレスとDNS名」列に表示されている値を確認します。

インストール済の更新および使用可能な更新の確認

次のステップを実行して、インストール済の更新と使用可能な更新を確認します。

  1. DBシステムにSSH接続します。

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. opcとしてログインし、sudoでrootユーザーに切り替えます。ハイフンを含むsudo su -を使用して、rootユーザーのプロファイルを起動します。これによって、PATHがdbcliディレクトリ(/opt/oracle/dcs/bin)に設定されます。

    sudo su -
  3. componentコマンドを使用して、インストール済の更新バージョンを表示します。「使用可能なバージョン」列に、あるコンポーネントのバージョン番号が示されている場合、そのコンポーネントは更新する必要があります。

    dbcli describe-component

    出力:

    System Version
    ---------------
    12.1.2.10.0
    
    Component Name        Installed Version    Available Version
    --------------------- -------------------- --------------------
    OAK                   12.1.2.10.0          up-to-date
    GI                    12.1.0.2.161018      up-to-date
    ORADB12102_HOME1      12.1.0.2.160719      12.1.0.2.161018
  4. latestpatchコマンドを使用して、オブジェクト・ストレージで使用可能な最新の更新バージョンを表示します。

    dbcli describe-latestpatch

    出力:

    componentType   availableVersion
    --------------- --------------------
    gi              12.1.0.2.161018
    db              11.2.0.4.161018
    db              12.1.0.2.161018
    oak             12.1.2.10.0

サーバー・コンポーネントの更新

次のステップを実行して、Grid Infrastructure (GI)およびストレージ管理キット(OAK)のサーバー・コンポーネントを更新します。

  1. DBシステムにSSH接続します。

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. opcとしてログインし、sudoでrootユーザーに切り替えます。ハイフンを含むsudo su -を使用して、rootユーザーのプロファイルを起動します。これによって、PATHがdbcliディレクトリ(/opt/oracle/dcs/bin)に設定されます。

    sudo su -
  3. serverコマンドを使用して、サーバー・コンポーネントを更新します。

    dbcli update-server

    出力:

    {
      "jobId" : "9a02d111-e902-4e94-bc6b-9b820ddf6ed8",
      "status" : "Created",
      "reports" : [ ],
      "createTimestamp" : "January 19, 2017 09:37:11 AM PST",
      "resourceList" : [ ],
      "description" : "Server Patching",
      "updatedTime" : "January 19, 2017 09:37:11 AM PST"
    }

    前述の例のjobIdを書き留めます。

  4. jobコマンドをjobIdとともに使用して、ジョブ出力を確認します。

    dbcli describe-job -i 9a02d111-e902-4e94-bc6b-9b820ddf6ed8

    出力:

    Job details
    ----------------------------------------------------------------
                         ID:  9a02d111-e902-4e94-bc6b-9b820ddf6ed8
                Description:  Server Patching
                     Status:  Running
                    Created:  January 19, 2017 9:37:11 AM PST
                    Message:
    
    Task Name                                Start Time                          End Time                            Status
    ---------------------------------------- ----------------------------------- ----------------------------------- ----------
    Create Patching Repository Directories   January 19, 2017 9:37:11 AM PST     January 19, 2017 9:37:11 AM PST     Success
    Download latest patch metadata           January 19, 2017 9:37:11 AM PST     January 19, 2017 9:37:11 AM PST     Success
    Update System version                    January 19, 2017 9:37:11 AM PST     January 19, 2017 9:37:11 AM PST     Success
    Update Patching Repository               January 19, 2017 9:37:11 AM PST     January 19, 2017 9:38:35 AM PST     Success
    oda-hw-mgmt upgrade                      January 19, 2017 9:38:35 AM PST     January 19, 2017 9:38:58 AM PST     Success
    Opatch updation                          January 19, 2017 9:38:58 AM PST     January 19, 2017 9:38:58 AM PST     Success
    Patch conflict check                     January 19, 2017 9:38:58 AM PST     January 19, 2017 9:42:06 AM PST     Success
    Apply cluster-ware patch                  January 19, 2017 9:42:06 AM PST     January 19, 2017 10:02:32 AM PST    Success
    Updating GiHome version                  January 19, 2017 10:02:32 AM PST    January 19, 2017 10:02:38 AM PST    Success
  5. componentコマンドを使用して、サーバー・コンポーネントが正常に更新されたことを確認します。「使用可能なバージョン」列にupdate-to-dateが表示されます。

データベース・ホーム・コンポーネントの更新

次のステップを実行して、データベース・ホーム・コンポーネントを更新します。

  1. DBシステムにSSH接続します。

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. opcとしてログインし、sudoでrootユーザーに切り替えます。ハイフンを含むsudo su -を使用して、rootユーザーのプロファイルを起動します。これによって、PATHがdbcliディレクトリ(/opt/oracle/dcs/bin)に設定されます。

    sudo su -
  3. Dbhomeコマンドを使用して、データベース・ホームのIDを取得します。

    dbcli list-dbhomes

    出力:

    ID                                   Name               DB Version Home Location
    ------------------------------------ -----------------  ---------- ------------------------------------------
    b727bf80-c99e-4846-ac1f-28a81a725df6 OraDB12102_home1    12.1.0.2  /u01/app/orauser/product/12.1.0.2/dbhome_1
  4. Dbhomeコマンドを使用し、前のステップのIDを指定して、データベース・ホーム・コンポーネントを更新します。

    dbcli update-dbhome -i b727bf80-c99e-4846-ac1f-28a81a725df6

    出力:

    {
      "jobId" : "31b38f67-f993-4f2e-b7eb-5bccda9901ae",
      "status" : "Created",
      "message" : null,
      "reports" : [ ],
      "createTimestamp" : "January 20, 2017 10:08:48 AM PST",
      "resourceList" : [ ],
      "description" : "DB Home Patching: Home Id is 52e2e799-946a-4339-964b-c203dee35328",
      "updatedTime" : "January 20, 2017 10:08:48 AM PST"
    }

    前述の例のjobIdを書き留めます。

  5. jobコマンドをjobIdとともに使用して、ジョブ出力を確認します。

    dbcli describe-job -i 31b38f67-f993-4f2e-b7eb-5bccda9901ae

    出力:

    Job details
    ----------------------------------------------------------------
                         ID:  31b38f67-f993-4f2e-b7eb-5bccda9901ae
                Description:  DB Home Patching: Home Id is b727bf80-c99e-4846-ac1f-28a81a725df6
                     Status:  Success
                    Created:  January 20, 2017 10:08:48 AM PST
                    Message:
    
    Task Name                                Start Time                          End Time                            Status
    ---------------------------------------- ----------------------------------- ----------------------------------- ----------
    Create Patching Repository Directories   January 20, 2017 10:08:49 AM PST    January 20, 2017 10:08:49 AM PST    Success
    Download latest patch metadata           January 20, 2017 10:08:49 AM PST    January 20, 2017 10:08:49 AM PST    Success
    Update System version                    January 20, 2017 10:08:49 AM PST    January 20, 2017 10:08:49 AM PST    Success
    Update Patching Repository               January 20, 2017 10:08:49 AM PST    January 20, 2017 10:08:58 AM PST    Success
    Opatch updation                          January 20, 2017 10:08:58 AM PST    January 20, 2017 10:08:58 AM PST    Success
    Patch conflict check                     January 20, 2017 10:08:58 AM PST    January 20, 2017 10:12:00 AM PST    Success
    db upgrade                               January 20, 2017 10:12:00 AM PST    January 20, 2017 10:22:17 AM PST    Success
  6. コンポーネント・コマンドを使用して、データベース・ホーム・コンポーネントが正常に更新されたことを確認します。「使用可能なバージョン」列にupdate-to-dateが表示されます。

DBシステム・ノードに使用可能なオペレーティング・システム更新の確認

注意:

  1. DBシステムにSSH接続します。

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. opcとしてログインし、sudoでrootユーザーに切り替えます。ハイフンを含むsudo su -を使用して、rootユーザーのプロファイルを起動します。これによって、PATHがdbcliディレクトリ(/opt/oracle/dcs/bin)に設定されます。

    sudo su -
  3. get-availableospatchesコマンドを使用して、OSに適用する更新を識別します。rebootIsRequiredフィールドが"true"の場合は、更新の適用後にDBシステムを再起動します。

    dbcli get-availableospatches

    出力:

    Update Available     Reboot Required
    -------------------- --------------------
    Yes                  Yes

    JSONで出力を取得するには、次のコマンドを使用します。

    dbcli get-availableospatches -j

    出力:

    {
    "updateAvailable" : true,
    "rebootIsRequired" : true,
    "updateableRpms" : [ "curl.x86_64::7.29.0-59.0.1.el7_9.1", "freetype.x86_64::2.8-14.el7_9.1",
        "kernel-devel.x86_64::3.10.0-1160.11.1.el7", "kernel-headers.x86_64::3.10.0-1160.11.1.el7",
        "kernel-uek.x86_64::4.1.12-124.45.6.el7uek", "kernel-uek-firmware.noarch::4.1.12-124.45.6.el7uek",
        "libX11.x86_64::1.6.7-3.el7_9", "libX11-common.noarch::1.6.7-3.el7_9",
        "libcurl.x86_64::7.29.0-59.0.1.el7_9.1", "libsmbclient.x86_64::4.10.16-9.el7_9",
        "libwbclient.x86_64::4.10.16-9.el7_9", "python.x86_64::2.7.5-90.0.1.el7",
        "python-libs.x86_64::2.7.5-90.0.1.el7", "samba-client-libs.x86_64::4.10.16-9.el7_9",
        "samba-common.noarch::4.10.16-9.el7_9", "samba-common-libs.x86_64::4.10.16-9.el7_9",
        "sudo.x86_64::1.8.23-10.el7_9.1" ],
    "installedRpms" : [ "curl.x86_64::7.29.0-59.0.1.el7", "freetype.x86_64::2.8-14.el7",
        "kernel-devel.x86_64::3.10.0-1160.2.2.el7", "kernel-headers.x86_64::3.10.0-1160.2.2.el7",
        "kernel-uek.x86_64::4.1.12-124.43.4.el7uek", "kernel-uek-firmware.noarch::4.1.12-124.43.4.el7uek",
        "libX11.x86_64::1.6.7-2.el7", "libX11-common.noarch::1.6.7-2.el7",
        "libcurl.x86_64::7.29.0-59.0.1.el7", "libsmbclient.x86_64::4.10.16-7.el7_9",
        "libwbclient.x86_64::4.10.16-7.el7_9", "python.x86_64::2.7.5-89.0.1.el7",
        "python-libs.x86_64::2.7.5-89.0.1.el7", "samba-client-libs.x86_64::4.10.16-7.el7_9",
        "samba-common.noarch::4.10.16-7.el7_9", "samba-common-libs.x86_64::4.10.16-7.el7_9",
        "sudo.x86_64::1.8.23-10.el7" ]
    }

DBシステム・ノードのオペレーティング・システムの更新

このトピックでは、dbcliを使用して事前チェックを実行してから、DBシステム・ノードで実行されているOSに更新を適用する方法について説明します。

ノート:一部のOS更新操作では、更新の完了後に再起動が必要です。前のトピックで説明したようにdbcli get-availableospatchesコマンドを使用して、適用している更新に再起動が必要かどうかを判断します。

DBシステム・ノードのOSを更新するには、次のステップを実行します。

  1. DBシステムにSSH接続します。

    ssh -i <private_key_path> opc@<db_system_ip_address>
  2. opcとしてログインし、sudoでrootユーザーに切り替えます。ハイフンを含むsudo su -を使用して、rootユーザーのプロファイルを起動します。これによって、PATHがdbcliディレクトリ(/opt/oracle/dcs/bin)に設定されます。

    sudo su -
  3. update-server -c os -pコマンドを使用して、事前チェックを実行します:

    dbcli update-server -c os -p

    出力:

    {
      "jobId" : "7fc5cadd-d256-436a-be0d-c2bfe9fd4e95",
      "status" : "Created",
      "message" : null,
      "reports" : [ ],
      "createTimestamp" : "March 01, 2021 07:36:19 AM UTC",
      "resourceList" : [ ],
      "description" : "OS Patching Prechecks",
      "updatedTime" : "March 01, 2021 07:36:20 AM UTC",
      "percentageProgress" : "0%"
    }
  4. 事前チェックが成功し、更新操作の成功を妨げる問題が見つからなかった場合は、OSを更新できます。事前チェックが成功しなかった場合は、OSの更新を試行する前に、事前チェックで識別された問題に対処してください。

    ノート: -l (--local)フラグを使用すると、現在のノードでのみサーバー・コンポーネントを更新できます。

    OSを更新するには、dbcli update-server -c OSコマンドを使用します:

    dbcli update-server -c os

    出力:

    {
      "jobId" : "bee1c6d9-45fb-4e5b-8ee8-f02e7cd192ab",
      "status" : "Created",
      "message" : null,
      "reports" : [ ],
      "createTimestamp" : "March 01, 2021 07:37:43 AM UTC",
      "resourceList" : [ ],
      "description" : "OS Patching",
      "updatedTime" : "March 01, 2021 07:37:43 AM UTC",
      "percentageProgress" : "0%"
     }
  5. OSの更新で再起動が必要な場合は、更新操作の完了後にサーバーを再起動します。