NetBackupのバックアップポリシー名を変更する

Veritas NetBackupでバックアップポリシー名を変更しようと思ったら、GUIにそういった操作が見当たらない。

調べるとコマンド bppolicynew コマンド の-renameto オプションを使うと変更できる、とのこと。

bppolicynew 元のポリシー名 -renameto 新しいポリシー名

という単純なものではあるのですが、複数をいっぺんに変更するとなるとポシリー名を間違わずに入力するのが非常に面倒となる。

バックアップポリシー一覧はbppllist コマンドで出力できるのだが、こいつには検索機能がなく、全部出力か、指定した1つ出力しかなく非常に使いにくい。

特定のバックアップタイプとか、特定のクライアントとかの検索をしやすいようにPowerShellを使って成形することとした。

「bppllist -allpolicies」は人には読みにくい形式ですが、出力される各行についてマニュアル内に解説があるのでそれに従って情報を取得することとした。

今回使用するのは

・CLASS行「フィールド1:ポリシー名」
・INFO行「フィールド1:ポリシータイプ」13=Windows,19=NDMPなど
・INFO行「フィールド11:ポリシーの有効無効」0=有効,1=無効
・INFO行「フィールド19:ポリシーを有効にする日付」(マニュアルは18となってるけど)
・INFO行「フィールド20:クラスID」ポリシー固有のID(マニュアルは19となってるけど)
・CLIENT行「フィールド1:クライアント名」

1つのポリシーに複数のクライアントが設定されている場合、CLIENT行は複数出力されるが、今回の環境ではそのような設定をしていないため考慮していない。

$tempfile = New-TemporaryFile
Start-Process -FilePath "C:\Program Files\Veritas\NetBackup\bin\admincmd\bppllist.exe" -ArgumentList "-allpolicies" -Wait -PassThru -NoNewWindow -RedirectStandardOutput $tempfile

$policyname=""
$policyname2=""

Get-Content $tempfile |ForEach-Object {
    $linetext=$_
    if($linetext.Contains("CLASS ")){
        $policyname2=$policyname
        $policyname=$linetext.Split(" ")[1]
        if($policyname2 -ne ""){
            #Write-Host $policyname2 " " $policytype " " $policyactive " " $policyclassid " " $policyactivedate
            Write-Host $policyclient "`t" "bppolicynew" $policyname2 "-renameto" $policyname2
        }
    }elseif($linetext.Contains("INFO ")){
        $policytype=$linetext.Split(" ")[1]
        $policyactive=$linetext.Split(" ")[11]
        $policyactivedate=$linetext.Split(" ")[19]
        $policyclassid=$linetext.Split(" ")[20]
    }elseif($linetext.Contains("CLIENT ")){
        $policyclient=$linetext.Split(" ")[1]
    }
}
$policyname2=$policyname
#Write-Host $policyname2 " " $policytype " " $policyactive " " $policyclassid " " $policyactivedate
Write-Host "bppolicynew" $policyname2 "-renameto" $policyname2

# New-tempfileを使用している場合は削除を忘れない
Remove-Item -Path $tempfile

なお、powershell上でDOSコマンドを実行するにあたり、ファイル出力をしないで直接PowerShellのパイプ連携を実施しようとしたのだが、実現できなかった。

このため、「-RedirectStandardOutput」で一時ファイルに出力してから処理という形を取っている。

NetAppでvolume snapmirrorを設定する手順

ONTAP9.1からONTAP9.7に転送するための手順例

参考になる日本語資料「ETERNUS AX series、ETERNUS HX series ONTAP 9 用SnapMirror 構成およびベストプラクティスガイド
↑の元となっているTR-4015「SnapMirror configuration and best practices guide for ONTAP 9

修正履歴
 2021/07/29-1 ボリュームの言語が異なっているとsnapmirror initializeが失敗する
 2021/07/29-2 ONTAP9.8だとnetwork interface createで-roleオプションがない

注:ONTAP 9.1からONTAP 9.7へのsnapmirrorは公式ではできないことになっている組み合わせだが、検証した限りではONTAP 8.3.2からONTAP 9.8とかもできた。ただ、過去に7-mode 8.2.4からONTAP 9.7へのtransission snapmirror時に有る場所で必ずsnapmirrorが止まりそれ以上進まない、という事象が発生して解決できなかったこともあるので、お薦めはできない。

(1) ONTAP9.1で送り元SVM作成

まず、ONTAP9.1側で送り元となるSVMとボリュームを作成する。

今回はガワだけ作成しており、NFSやCIFS設定などは省略している

ontap91::> vserver create -vserver share206 -aggregate aggr1 -language ja_v1.UTF-8 -subtype default -rootvolume share206_root -rootvolume-security-style mixed
[Job 21] Job succeeded:
Vserver creation completed

ontap91::> vserver show
                               Admin      Operational Root
Vserver     Type    Subtype    State      State       Volume     Aggregate
----------- ------- ---------- ---------- ----------- ---------- ----------
ontap91     admin   -          -          -           -          -
ontap91-01  node    -          -          -           -          -
share206    data    default    running    running     share206_  aggr1
                                                      root
3 entries were displayed.

ontap91::> 

続いてボリューム割り当て

ontap91::> volume create -volume sharevol -aggregate aggr1 -size 10G  -vserver share206

Warning: The export-policy "default" has no rules in it. The volume will
         therefore be inaccessible.
Do you want to continue? {y|n}: y
[Job 24] Job succeeded: Successful

ontap91::> volume show
Vserver   Volume       Aggregate    State      Type       Size  Available Used%
--------- ------------ ------------ ---------- ---- ---------- ---------- -----
ontap91-01 vol0        aggr0        online     RW       3.16GB     2.27GB   28%
share206  share206_root aggr1       online     RW         20MB    18.75MB    6%
share206  sharevol      aggr1       online     RW         10GB    10.00GB    0%
3 entries were displayed.

ontap91::>

(2) ONTAP9.7で受け側SVM作成

受け側となるSVMとボリュームを作成する。

注: ボリュームの言語は送り側/受け側で同じとする必要があるため「volume language -volume ボリューム名」で確認すること。異なっているとsnapmirror initializeで失敗する。

受け側のボリュームは「type:DP」で作成する必要がある。

ontap97::> vserver create -vserver share207 -language ja_v1.UTF-8 -aggregate aggr1 -rootvolume share207_root -rootvolume-security-style mixed
[Job 20] Job succeeded:
Vserver creation completed.

ontap97::> vserver show
                               Admin      Operational Root
Vserver     Type    Subtype    State      State       Volume     Aggregate
----------- ------- ---------- ---------- ----------- ---------- ----------
ontap97     admin   -          -          -           -          -
ontap97-01  node    -          -          -           -          -
share207    data    default    running    running     share207_  aggr1
                                                      root
3 entries were displayed.

ontap97::>

type:DPでボリュームを作成する

ontap97::> volume create -volume sharevol_repl -aggregate aggr1 -size 10g -type DP -state online
[Job 23] Job succeeded: Successful

ontap97::> volume show
Vserver   Volume       Aggregate    State      Type       Size  Available Used%
--------- ------------ ------------ ---------- ---- ---------- ---------- -----
ontap97-01 vol0        aggr0_ontap97_01 online RW      807.3MB    430.5MB   43%
share207  share207_root aggr1       online     RW         20MB    18.70MB    1%
share207  sharevol_repl aggr1       online     DP         10GB    10.00GB    0%
3 entries were displayed.

ontap97::>

(3) snapmirror用にrole:interclusterのIPアドレスを割り当て

snapmirrorのrole:interclusterのLIF/IPアドレスを使用するため、送り側/受け側の双方で作成する必要がある。

まず、「network interface show -role intercluster」 もしくは「network interface show -service-policy default-intercluster」を実行してすでに設定されているかを確認する。

ontap91::> network interface show -role intercluster
There are no entries matching your query.

ontap91::>
ontap97::> network interface show -role intercluster
There are no entries matching your query.

ontap97::>

ないので作成する。

ontap91::> network interface create -vserver ontap91 -role intercluster -lif snapmirror_lif -home-node ontap91-01 -home-port e0a -address 172.17.44.222 -netmask 255.255.0.0 -status-admin up

ontap91::> network interface show -role intercluster
            Logical    Status     Network            Current       Current Is
Vserver     Interface  Admin/Oper Address/Mask       Node          Port    Home
----------- ---------- ---------- ------------------ ------------- ------- ----
ontap91
            snapmirror_lif up/up  172.17.44.222/16   ontap91-01    e0a     true

ontap91::>

ONTAP9.5ぐらいから「-service-policy default-intercluster」というオプションが増えている。

ontap97::> network interface create -vserver ontap97 -role intercluster -lif snapmirror_lif -service-policy default-intercluster -address 172.17.44.223 -netmask 255.255.0.0 -home-node ontap97-01 -home-port e0c

ontap97::> network interface show -role intercluster
            Logical    Status     Network            Current       Current Is
Vserver     Interface  Admin/Oper Address/Mask       Node          Port    Home
----------- ---------- ---------- ------------------ ------------- ------- ----
ontap97
            snapmirror_lif up/up  172.17.44.223/16   ontap97-01    e0c     true

ontap97::>

ONTAP 9.8だとnetwork interface createに-roleオプションがなくなっているが、「-service-policy default-intercluster」のみの指定でOKだった(マニュアル確認したらONTAP 9.5から-role interclusterから-service-policy default-intercluster に切り替わっていた)

ontap98::> network interface create -vserver ontap98 -lif snapmirror_lif -service-policy default-intercluster -address 172.17.44.235 -netmask 255.255.0.0 -home-node ontap98-01 -home-port e0c

ontap98::> network interface show -role intercluster
            Logical    Status     Network            Current       Current Is
Vserver     Interface  Admin/Oper Address/Mask       Node          Port    Home
----------- ---------- ---------- ------------------ ------------- ------- ----
ontap98
            snapmirror_lif
                         up/up    172.17.44.235/16   ontap98-01    e0c     true

ontap98::>

(4) cluster peerの作成

snapmirrorの前段階としてONTAP cluster同士を連携させるためのcluster peer(クラスタピア)を設定する。

どちらからやっても良いが「cluster peer create -peer-addrs 相手のinterclusterアドレス」を実行する。

ontap91::> cluster peer create -peer-addrs 172.17.44.223

Notice: Choose a passphrase of 8 or more characters. To ensure the authenticity
        of the peering relationship, use a phrase or sequence of characters
        that would be hard to guess.

Enter the passphrase:
Confirm the passphrase:

Notice: Now use the same passphrase in the "cluster peer create" command in the
        other cluster.

ontap91::>

ONTAP9.5以降では暗号化が標準設定されているため、ONTAP 9.1相手だと暗号化接続を試みるようで、下記の様にエラーとなる。

ontap97::> cluster peer create -peer-addrs 172.17.44.222

Notice: Use a generated passphrase or choose a passphrase of 8 or more
        characters. To ensure the authenticity of the peering relationship, use
        a phrase or sequence of characters that would be hard to guess.

Enter the passphrase:
Confirm the passphrase:

Error: command failed: Remote cluster would not use encryption for this
       relationship.

ontap97::>

これは、暗号化接続に関する設定オプションを明示的に指定することで回避できる。

ontap97::> cluster peer create -peer-addrs 172.17.44.222 -encryption-protocol-proposed none

Notice: Use a generated passphrase or choose a passphrase of 8 or more
        characters. To ensure the authenticity of the peering relationship, use
        a phrase or sequence of characters that would be hard to guess.

Enter the passphrase:
Confirm the passphrase:

ontap97::>

設定完了後「cluster peer show」コマンドで「Availability:Available」となっていることを確認する。

ontap91::> cluster peer show
Peer Cluster Name         Cluster Serial Number Availability   Authentication
------------------------- --------------------- -------------- --------------
ontap97                   1-80-000008           Available      ok
1 entries were displayed.

ontap91::> 
ontap97::> cluster peer show
Peer Cluster Name         Cluster Serial Number Availability   Authentication
------------------------- --------------------- -------------- --------------
ontap91                   1-80-000008           Available      ok

ontap97::>

なお、設定完了後すぐはCluster Serial Numberが空欄になっているが、しばらく経つと表示されるはず。

(5) SVM peerの作成

volumeはSVMの配下にあるため、volume snapmirrorを行う場合は、SVMについてもpeer(SVM ピア)を設定する必要がある。

片側から「vserver peer create 」コマンドを実行する。

ontap91::> vserver peer create -vserver share206 -peer-vserver share207 -applications snapmirror -peer-cluster ontap97

Info: [Job 27] 'vserver peer create' job queued

ontap91::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
share206    share207    initializing ontap97           snapmirror     share207
1 entries were displayed.

ontap91::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
share206    share207    initiated    ontap97           snapmirror     share207
1 entries were displayed.

ontap91::>

上記でvserver peer createを実行したあと、もう片側では、まず「vserver peer show」で「State:pending」というステータスになっていることを確認する。

ontap97::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
share207    share206    pending      ontap91           snapmirror     share206

ontap97::> 

これをaccpetすることで、SVM peerが成立する。

ontap97::> vserver peer accept -vserver share207 -peer-vserver share206

Info: [Job 24] 'vserver peer accept' job queued

ontap97::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
share207    share206    pending      ontap91           snapmirror     share206

ontap97::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
share207    share206    peered       ontap91           snapmirror     share206

ontap97::>

成立後、ONTAP 9.1側でも確認すると「peer State:peered」に変化しているはず

ontap91::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
share206    share207    peered       ontap97           snapmirror     share207
1 entries were displayed.

ontap91::>

(6) snapmirrorの作成

snapmirrorを作成する。

ontap97::> snapmirror create -source-path share206:sharevol -destination-path share207:sharevol_repl -vserver share207 -throttle unlimited -identity-preserve false -type DP -schedule daily
Operation succeeded: snapmirror create for the relationship with destination "share207:sharevol_repl".

ontap97::> snapmirror show
                                                                       Progress
Source            Destination Mirror  Relationship   Total             Last
Path        Type  Path        State   Status         Progress  Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
share206:sharevol XDP share207:sharevol_repl Uninitialized Idle - true -

ontap97::>

ONTAP 9.7ではType:DPを指定してもType:XDPに変換されるようだ。

メモ:SVM DRの場合は「-identity-preserve true」とするが、ただのvolume snapmirrorの場合はfalseのままで良い(参考:SVM DRの場合の動作)

(7) snapmirrorの初期化/転送開始

snapmirrorは作成したあと、初期化操作を別途行う必要がある。

ontap97::> snapmirror initialize -destination-path share207:sharevol_repl
Operation is queued: snapmirror initialize of destination "share207:sharevol_repl".

ontap97::> snapmirror show
                                                                       Progress
Source            Destination Mirror  Relationship   Total             Last
Path        Type  Path        State   Status         Progress  Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
share206:sharevol XDP share207:sharevol_repl Uninitialized Transferring 0B false 03/04 05:57:49

ontap97::>

初期化が終わると、「Mirror State:Snapmirrored」となり、データの転送が開始される「Relationship Status:Transferring」

ontap97::> snapmirror show
                                                                       Progress
Source            Destination Mirror  Relationship   Total             Last
Path        Type  Path        State   Status         Progress  Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
share206:sharevol XDP share207:sharevol_repl Snapmirrored Transferring 0B true 03/04 05:58:57

ontap97::>

転送が終わると「Relationship Status:Idle」となる。

ontap97::> snapmirror show
                                                                       Progress
Source            Destination Mirror  Relationship   Total             Last
Path        Type  Path        State   Status         Progress  Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
share206:sharevol XDP share207:sharevol_repl Snapmirrored Idle - true -

ontap97::>


いろいろな追加情報

・3拠点ある時のsnapmirrorネットワークの作り方に注意が必要

NetApp ONTAPドキュメント: カスタム IPspace を使用してレプリケーショントラフィックを分離します

IPspace を使用して、指定したクラスタ間 LIF とのクラスタピアリングを作成および設定する方法

「 Default 」 IPspace に動作しているローカルの IPv4 クラスタ間 LIF がない」というエラーでクラスタピアの作成が失敗する

LIFごとにIPネットワークが違う構成を取っている場合以下のようにIPSpaceを分ける必要がある

IPSpaceを分けた場合、LIF A1につくるインタークラスタLIFは「network interface create -vserver snapmirror1 -lif A1 -address ~」、LIF A2につくるやつは「network interface create -vserver snapmirror2 -lif A2 -address ~」という感じで作る。

-vserverで指定するのがクラスタ名やSVM名じゃなくて、IPSpace名となることに注意

既に作成済みのインタークラスタLIFのIPspaceを変更することはできないので、作成済みのLIFを削除→NICのIPSpaceとbroadcast domainを変更→インタークラスタLIFを作成、という手順を踏む必要がある。

IPspace インタークラスタLIFを作る際、間違って「network interface create -vserver クラスタ名 -lif A2 ~」で作ってしまった場合に、cluster peerのipspaceを変えようとすると、下記の様なエラーとなる。

netapp9101dr::> cluster peer modify -cluster netapp9101 -ipspace snapmirror2  

Error: command failed: No operational intercluster LIFs of the IPv4 address
       family and IPspace "snapmirror2" are available on this node.

netapp9101dr::>

この場合は、LIFを削除して、-vserver IPspace名でLIFを作成し直せばよい

OVAファイルをOVFに変換する

NetAppシミュレータの古いバージョンは圧縮ありのOVAファイルで提供されている。

これをvSphere 7.0環境で使おうとすると、圧縮されているので使えない、と拒否される。

変換ツールを使ってもよいのだが、手動でも変換できる

OVAファイルは中にovfファイルとvmdkファイルが入っているだけのtarファイルなので、7zipなどのツールを使って展開できる。

vsphere 7.0ではvmdk.gzは使えないので、これも展開する

OVFファイルの中身はXMLファイルとなっていて、元の中身は、vmdk.gzのファイルを指定している。

これを展開後のファイル名とファイルサイズに置き換える

また「ovf:compression=”gzip”」という記述も削除する

こうやって出来たOVFファイルとVMDKファイルを複数指定してvSphereで読み込ませる。

読み込ませる下記の様な形で「5ファイル」という表示になる

記述に問題なければOVFテンプレートのデプロイが継続できる。

ONTAP 9.5でSVM DR設定

ONTAP 8.x 7-modeではボリューム単位でしかsnapmirrorができませんでしたが、ONTAP 9.5では、SVM DRという機能を使ってSVMの機能ごとsnapmirrorできるようになっています。

ONTAP 8.3時代の分かりやすい絵「SVMのディザスタ リカバリの設定
ONTAP 9.xのドキュメント「SnapMirror SVMレプリケーションの概要

参考になる日本語資料「ETERNUS AX series、ETERNUS HX series ONTAP 9 用SnapMirror 構成およびベストプラクティスガイド」「ETERNUS AX/HX series データ保護パワー ガイド」(出典)

下記の環境であるとした場合のコマンド実行例を書く。

送り元となるクラスタ名 netapp001c
送り元となるSVM名 netapp001
受け側となるクラスタ名 netapp002c
受け側となるSVM名 netapp001-dr

(1) クラスタピア設定

GUIなどでクラスタピアを設定

コマンドだとcluster peerコマンドで実施。

netapp001c::> cluster peer create -peer-addrs 相手のintercluster IP

Notice: Use a generated passphrase or choose a passphrase of 8 or more
        characters. To ensure the authenticity of the peering relationship, use
        a phrase or sequence of characters that would be hard to guess.

Enter the passphrase:
Confirm the passphrase:

Notice: Now use the same passphrase in the "cluster peer create" command in the
        other cluster.

netapp001c::>
netapp002c::> cluster peer create -peer-addrs 相手のintercluster IP

Notice: Use a generated passphrase or choose a passphrase of 8 or more
        characters. To ensure the authenticity of the peering relationship, use
        a phrase or sequence of characters that would be hard to guess.

Enter the passphrase:
Confirm the passphrase:

netapp002c::>

それぞれで同じパスフレーズを入力していれば「cluster peer show」で見た時に「Availability:Available」となる

netapp002c::> cluster peer show
Peer Cluster Name         Cluster Serial Number Availability   Authentication
------------------------- --------------------- -------------- --------------
netapp001c                   1-80-000008           Available      ok

netapp002c::>

(2) 受け側となるSVMを作成

受け側NetApp上で、受け側となるSVM(ピアSVM)を、dp-destinationというタイプで作成。

まずは、受け側に作られているSVMを確認するため「vserver show」を実行

netapp002c::> vserver show
                               Admin      Operational Root
Vserver     Type    Subtype    State      State       Volume     Aggregate
----------- ------- ---------- ---------- ----------- ---------- ----------
netapp002    data    default    running    running     netapp002tm netapp002c_
                                                      p_root     01_NL_SAS_1
netapp002c   admin   -          -          -           -          -
netapp002c-01
            node    -          -          -           -          -
netapp002c-02
            node    -          -          -           -          -
4 entries were displayed.

netapp002c::>

ピアSVMを「vserver create -vserver netapp001-dr -subtype dp-destination」で作成し、「vserver show」で作成されたことを確認

netapp002c::> vserver create -vserver netapp001-dr -subtype dp-destination
[Job 937] Job succeeded:
Vserver creation completed.

netapp002c::>
netapp002c::> vserver show
                               Admin      Operational Root
Vserver     Type    Subtype    State      State       Volume     Aggregate
----------- ------- ---------- ---------- ----------- ---------- ----------
netapp001-dr data    dp-destination        stopped     -          -
                               running
netapp002    data    default    running    running     netapp002tm netapp002c_
                                                      p_root     01_NL_SAS_1
netapp002c   admin   -          -          -           -          -
netapp002c-01
            node    -          -          -           -          -
netapp002c-02
            node    -          -          -           -          -
5 entries were displayed.

netapp002c::>

作成したピアSVM netapp001-drは「stopped」状態となっている。

(3) SVM peerを作成1 受け側で関係の設定

受け側NetApp上で、送り元SVMとのSVM peerを作成

「vserver peer create -vserver 受け側SVM -peer-vserver 送り元SVM -applications snapmirror -peer-cluster 送り元NetAppクラスタ」を実行

netapp002c::> vserver peer create -vserver netapp001-dr -peer-vserver netapp001 -applications snapmirror -peer-cluster netapp001c

Info: [Job 938] 'vserver peer create' job queued

netapp002c::> 

実行後、「vserver peer show」を実行し、作成の状況を確認。

netapp002c::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
netapp001-dr netapp001    initializing netapp001c         snapmirror     netapp001

netapp002c::>

しばらく待つとPeer Stateが「initiated」に変化

netapp002c::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
netapp001-dr netapp001    initiated    netapp001c         snapmirror     netapp001

netapp002c::> 

(4) SVM peerを作成2 送り元で関係受諾

送り元NetApp上で、受け側からのSVM peer要求を受諾。

まずは「vserver peer show」で状況を確認

netapp001c::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
netapp001    netapp001-dr pending      netapp002c         snapmirror     netapp001-dr

netapp001c::> 

Peer Stateが「pending」となっていることを確認。

pending状態を「vserver peer accept -vserver 送り元SVM -peer-vserver 受け側SVM」を実行して受諾。

netapp001c::> vserver peer accept -vserver netapp001 -peer-vserver netapp001-dr

Info: [Job 922] 'vserver peer accept' job queued

netapp001c::> 
netapp001c::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
netapp001    netapp001-dr peered       netapp002c         snapmirror     netapp001-dr

netapp001c::>

Peer Stateが「peered」に変わったら受諾処理が完了です。(処理中はpendingのままです)

(5) SVM peerを作成3 受け側でも受諾を確認

受け側NetApp上で、SVM peerが成立したことを確認

netapp002c::> vserver peer show
            Peer        Peer                           Peering        Remote
Vserver     Vserver     State        Peer Cluster      Applications   Vserver
----------- ----------- ------------ ----------------- -------------- ---------
netapp001-dr netapp001    peered       netapp001c         snapmirror     netapp001

netapp002c::>

(6) snapmirrorの作成

まず、現状のsnapmirrorの状態を送り元と受け側で確認しておく。

netapp001c::> snapmirror show
This table is currently empty.

netapp001c::> 

netapp002c::> snapmirror show
This table is currently empty.

netapp002c::> 

snapmirrorの作成は、受け側NetApp上で実行する。

「snapmirror create -source-vserver 送り元SVM -destination-vserver 受け側SVM -type DP -policy DPDefault -schedule hourly -identity-preserve true」と実行する。

-schedule hourly というのは1時間ごとに同期を取る、という設定となる。このスケジュールを別のものにすることもできる。

netapp002c::> snapmirror create -source-vserver netapp001 -destination-vserver netapp001-dr -type DP -policy DPDefault -schedule hourly -identity-preserve true

netapp002c::> 

作成後、「snapmirror show」を実行すると下記の様に、「Mirror State:Uninitialzied」「Relationship Status: Idle」で表示される。

netapp002c::> snapmirror show
                                                                       Progress
Source            Destination Mirror  Relationship   Total             Last
Path        Type  Path        State   Status         Progress  Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
netapp001:   XDP  netapp001-dr: Uninitialized
                                      Idle           -         true    -

netapp002c::>

(7) snapmirrorの初期化開始

受け側NetApp上でsnapmirrorの初期化を開始する。

「snapmirror initialize -destination-path 受け側SVM:」を実行する。

netapp002c::> snapmirror initialize -destination-path  netapp001-dr:

netapp002c::> 

実行後、snapmirror showで実行し、「Relationship Status: Transferring」になっていることを確認。

netapp002c::> snapmirror show
                                                                       Progress
Source            Destination Mirror  Relationship   Total             Last
Path        Type  Path        State   Status         Progress  Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
netapp001:   XDP  netapp001-dr: Uninitialized
                                      Transferring   -         true    -

netapp002c::>

(8) Snapmirrorの完了を確認

ボリュームを含めてすべてのデータ転送が終わると「Mirror State: Snapmirrored」「Relationship Status: Idle」に変化します。

netapp002c::> snapmirror show
                                                                       Progress
Source            Destination Mirror  Relationship   Total             Last
Path        Type  Path        State   Status         Progress  Healthy Updated
----------- ---- ------------ ------- -------------- --------- ------- --------
netapp001:   XDP  netapp001-dr: Snapmirrored
                                      Idle           -         true    -

netapp002c::> 

2022/04/01追記

送り元ONTAP 8.3.2上のSVM share52、受け側ONTAP 9.9.1上のSVM share61-dr という状態でコマンドを実行してみるとどうなるのかを確認してみた。

netapp991::> snapmirror create -source-vserver share52 -destination-vserver share61-dr -type DP -policy DPDefault -schedule hourly -identity-preserve true

Error: command failed: The "DATA_ONTAP.9.2.0" capability is not enabled on
       cluster "source".

netapp991::>

逆に見ると、ONTAP 9.2.0というフラグがあれば動くのか?

CentOS8をAlmaLinux8にコンバートしてみた

CentOS8の代替ディストリビューションの1つ、 AlmaLinuxのβ版がダウンロードできるようになったのでインストールしてみようとした。

が・・・ESXi7.0U1上でISOからインストールしようとしたけど、AlmaLinux-8.3-beta-1-x86_64-boot.iso 、AlmaLinux-8.3-beta-1-x86_64-dvd1.iso、AlmaLinux-8.3-beta-1-x86_64-minimal.iso のどれを使ってもメディアとして認識してくれず起動できない。

仕方が無いのでCentOS8.3のメディアでインストールしてから切り替えてみることにした。

なお、あとで判明したのだが、起動できないのはAlmaLinux 8は現段階ではセキュアブート非対応であることが原因で、仮想マシンオプションで「セキュアブート:有効」設定を無効に変更することで起動する様になった。

基本手順は「CentOS8からOracle Linux 8への移行2(成功例/非公式手順/EFI環境用

インストールが終わったCentOS8でAlmaLinux8のAlmaLinux-8.3-beta-1-x86_64-dvd1.isoを/mntにマウントしてから、下記の /etc/yum.repos.d/media.repo を用意

[root@almalinux ~]# cat /etc/yum.repos.d/media.repo
[media]
name=AlmaLinux 8 Media
baseurl=file:///mnt/BaseOS
gpgcheck=0
[root@almalinux ~]#

続いてISO内のalmalinux-releaseをインストール。

[root@almalinux ~]# rpm -Uvh --force /mnt/BaseOS/Packages/almalinux-release-8.3-2.el8.x86_64.rpm
警告: /mnt/BaseOS/Packages/almalinux-release-8.3-2.el8.x86_64.rpm: ヘッダー V4 RSA/SHA256 Signature、鍵 ID c21ad6ea: NOKEY
Verifying...                          ################################# [100%]
準備しています...              ################################# [100%]
更新中 / インストール中...
   1:almalinux-release-8.3-2.el8      ################################# [100%]
[root@almalinux ~]#

CentOS8のcentos-linux-releaseと centos-linux-reposを削除

[root@almalinux ~]# dnf remove centos-linux-release centos-linux-repos
Repository baseos is listed more than once in the configuration
Repository appstream is listed more than once in the configuration
Repository powertools is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository baseos-source is listed more than once in the configuration
Repository appstream-source is listed more than once in the configuration
Repository extras-source is listed more than once in the configuration
依存関係が解決しました。
================================================================================
 パッケージ                Arch        バージョン          リポジトリー   サイズ
================================================================================
削除中:
 centos-linux-release      noarch      8.3-1.2011.el8      @anaconda       25 k
 centos-linux-repos        noarch      8-2.el8             @anaconda       26 k
未使用の依存関係の削除:
 centos-gpg-keys           noarch      1:8-2.el8           @anaconda      3.3 k

トランザクションの概要
================================================================================
削除  3 パッケージ

解放された容量: 54 k
これでよろしいですか? [y/N]: y
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
  準備             :                                                        1/1
  scriptletの実行中: centos-linux-release-8.3-1.2011.el8.noarch             1/1
  削除             : centos-linux-release-8.3-1.2011.el8.noarch             1/3
  削除             : centos-linux-repos-8-2.el8.noarch                      2/3
  削除             : centos-gpg-keys-1:8-2.el8.noarch                       3/3
  scriptletの実行中: centos-gpg-keys-1:8-2.el8.noarch                       3/3
  検証             : centos-gpg-keys-1:8-2.el8.noarch                       1/3
  検証             : centos-linux-release-8.3-1.2011.el8.noarch             2/3
  検証             : centos-linux-repos-8-2.el8.noarch                      3/3

削除しました:
  centos-gpg-keys-1:8-2.el8.noarch   centos-linux-release-8.3-1.2011.el8.noarch
  centos-linux-repos-8-2.el8.noarch

完了しました!
[root@almalinux ~]#

この段階でのレポジトリ登録を確認

[root@almalinux ~]# ls /etc/yum.repos.d/
almalinux.repo  media.repo
[root@almalinux ~]# dnf repolist
repo id                         repo の名前
appstream                       AlmaLinux 8.3 - AppStream
baseos                          AlmaLinux 8.3 - BaseOS
extras                          AlmaLinux 8.3 - Extras
media                           AlmaLinux 8 Media
powertools                      AlmaLinux 8.3 - PowerTools
[root@almalinux ~]#

「dnf distro-sync」を実行してCentOS由来のパッケージをAlmaLinuxのパッケージに入れ替える。

[root@almalinux ~]# dnf distro-sync
AlmaLinux 8.3 - BaseOS                          2.8 MB/s | 2.6 MB     00:00
AlmaLinux 8.3 - AppStream                       5.1 MB/s | 6.5 MB     00:01
AlmaLinux 8.3 - PowerTools                      2.0 MB/s | 1.9 MB     00:00
AlmaLinux 8.3 - Extras                          4.5 kB/s | 1.2 kB     00:00
依存関係が解決しました。
================================================================================
 パッケージ               Arch   バージョン                     Repo      サイズ
================================================================================
アップグレード:
 NetworkManager           x86_64 1:1.26.0-12.el8_3              baseos    2.4 M
 NetworkManager-libnm     x86_64 1:1.26.0-12.el8_3              baseos    1.7 M
 NetworkManager-team      x86_64 1:1.26.0-12.el8_3              baseos    141 k
 NetworkManager-tui       x86_64 1:1.26.0-12.el8_3              baseos    320 k
 curl                     x86_64 7.61.1-14.el8_3.1              baseos    352 k
 efi-filesystem           noarch 3-2.el8.alma                   baseos    7.9 k
 freetype                 x86_64 2.9.1-4.el8_3.1                baseos    393 k
 gnutls                   x86_64 3.6.14-7.el8_3                 baseos    1.0 M
 grub2-common             noarch 1:2.02-90.el8.alma             baseos    884 k
 grub2-efi-x64            x86_64 1:2.02-90.el8.alma             baseos    405 k
 grub2-tools              x86_64 1:2.02-90.el8.alma             baseos    2.0 M
 grub2-tools-extra        x86_64 1:2.02-90.el8.alma             baseos    1.1 M
 grub2-tools-minimal      x86_64 1:2.02-90.el8.alma             baseos    204 k
 iptables                 x86_64 1.8.4-15.el8_3.3               baseos    584 k
 iptables-ebtables        x86_64 1.8.4-15.el8_3.3               baseos     71 k
 iptables-libs            x86_64 1.8.4-15.el8_3.3               baseos    106 k
 kexec-tools              x86_64 2.0.20-34.el8_3.1              baseos    496 k
 libcurl                  x86_64 7.61.1-14.el8_3.1              baseos    298 k
 libgcc                   x86_64 8.3.1-5.1.el8.alma             baseos     77 k
 libgomp                  x86_64 8.3.1-5.1.el8.alma             baseos    203 k
 libreport-filesystem     x86_64 2.9.5-15.el8.alma              baseos     20 k
 libselinux               x86_64 2.9-4.el8_3                    baseos    165 k
 libselinux-utils         x86_64 2.9-4.el8_3                    baseos    242 k
 libstdc++                x86_64 8.3.1-5.1.el8.alma             baseos    450 k
 microcode_ctl            x86_64 4:20200609-2.20201112.1.el8_3  baseos    4.6 M
 openssl                  x86_64 1:1.1.1g-12.el8_3              baseos    706 k
 openssl-libs             x86_64 1:1.1.1g-12.el8_3              baseos    1.5 M
 python3-libselinux       x86_64 2.9-4.el8_3                    baseos    282 k
 shim-x64                 x86_64 15-16.el8.alma                 baseos    657 k
 sudo                     x86_64 1.8.29-6.el8_3.1               baseos    922 k
 systemd                  x86_64 239-41.el8_3.1                 baseos    3.5 M
 systemd-libs             x86_64 239-41.el8_3.1                 baseos    1.1 M
 systemd-pam              x86_64 239-41.el8_3.1                 baseos    456 k
 systemd-udev             x86_64 239-41.el8_3.1                 baseos    1.4 M
 tuned                    noarch 2.14.0-3.el8_3.1.alma          baseos    291 k
 tzdata                   noarch 2021a-1.el8                    baseos    472 k
再インストール:
 acl                      x86_64 2.2.53-1.el8                   baseos     81 k
 audit                    x86_64 3.0-0.17.20191104git1c2f876.el8
                                                                baseos    255 k
 audit-libs               x86_64 3.0-0.17.20191104git1c2f876.el8
                                                                baseos    117 k
 authselect               x86_64 1.2.1-2.el8                    baseos    114 k
 authselect-libs          x86_64 1.2.1-2.el8                    baseos    210 k
 basesystem               noarch 11-5.el8                       baseos     10 k
 bash                     x86_64 4.4.19-12.el8                  baseos    1.5 M
 bind-export-libs         x86_64 32:9.11.20-5.el8               baseos    1.1 M
 biosdevname              x86_64 0.7.3-2.el8                    baseos     44 k
 brotli                   x86_64 1.0.6-2.el8                    baseos    322 k
 bzip2-libs               x86_64 1.0.6-26.el8                   baseos     48 k
 c-ares                   x86_64 1.13.0-5.el8                   baseos     93 k
 ca-certificates          noarch 2020.2.41-80.0.el8_2           baseos    391 k
 chkconfig                x86_64 1.13-2.el8                     baseos    194 k
 coreutils                x86_64 8.30-8.el8                     baseos    1.2 M
 coreutils-common         x86_64 8.30-8.el8                     baseos    2.0 M
 cpio                     x86_64 2.12-8.el8                     baseos    265 k
 cracklib                 x86_64 2.9.6-15.el8                   baseos     93 k
 cracklib-dicts           x86_64 2.9.6-15.el8                   baseos    4.0 M
 cronie                   x86_64 1.5.2-4.el8                    baseos    118 k
 cronie-anacron           x86_64 1.5.2-4.el8                    baseos     41 k
 crontabs                 noarch 1.11-16.20150630git.el8        baseos     25 k
 crypto-policies          noarch 20200713-1.git51d1222.el8      baseos     61 k
 crypto-policies-scripts  noarch 20200713-1.git51d1222.el8      baseos     67 k
 cryptsetup-libs          x86_64 2.3.3-2.el8                    baseos    469 k
 cyrus-sasl-lib           x86_64 2.1.27-5.el8                   baseos    123 k
 dbus                     x86_64 1:1.12.8-11.el8                baseos     40 k
 dbus-common              noarch 1:1.12.8-11.el8                baseos     45 k
 dbus-daemon              x86_64 1:1.12.8-11.el8                baseos    239 k
 dbus-glib                x86_64 0.110-2.el8                    baseos    127 k
 dbus-libs                x86_64 1:1.12.8-11.el8                baseos    183 k
 dbus-tools               x86_64 1:1.12.8-11.el8                baseos     84 k
 dbxtool                  x86_64 8-5.el8                        baseos     37 k
 device-mapper            x86_64 8:1.02.171-5.el8               baseos    373 k
 device-mapper-event      x86_64 8:1.02.171-5.el8               baseos    267 k
 device-mapper-event-libs x86_64 8:1.02.171-5.el8               baseos    266 k
 device-mapper-libs       x86_64 8:1.02.171-5.el8               baseos    405 k
 device-mapper-persistent-data
                          x86_64 0.8.5-4.el8                    baseos    468 k
 dhcp-client              x86_64 12:4.3.6-41.el8                baseos    317 k
 dhcp-common              noarch 12:4.3.6-41.el8                baseos    206 k
 dhcp-libs                x86_64 12:4.3.6-41.el8                baseos    147 k
 diffutils                x86_64 3.6-6.el8                      baseos    361 k
 dmidecode                x86_64 1:3.2-6.el8                    baseos     91 k
 dnf                      noarch 4.2.23-4.el8                   baseos    512 k
 dnf-data                 noarch 4.2.23-4.el8                   baseos    148 k
 dnf-plugins-core         noarch 4.0.17-5.el8                   baseos     65 k
 dosfstools               x86_64 4.1-6.el8                      baseos    121 k
 dracut                   x86_64 049-95.git20200804.el8         baseos    366 k
 dracut-config-rescue     x86_64 049-95.git20200804.el8         baseos     55 k
 dracut-network           x86_64 049-95.git20200804.el8         baseos    102 k
 dracut-squash            x86_64 049-95.git20200804.el8         baseos     56 k
 e2fsprogs                x86_64 1.45.6-1.el8                   baseos    1.0 M
 e2fsprogs-libs           x86_64 1.45.6-1.el8                   baseos    232 k
 efibootmgr               x86_64 16-1.el8                       baseos     47 k
 efivar                   x86_64 37-4.el8                       baseos     35 k
 efivar-libs              x86_64 37-4.el8                       baseos    107 k
 elfutils-debuginfod-client
                          x86_64 0.180-1.el8                    baseos     63 k
 elfutils-default-yama-scope
                          noarch 0.180-1.el8                    baseos     48 k
 elfutils-libelf          x86_64 0.180-1.el8                    baseos    214 k
 elfutils-libs            x86_64 0.180-1.el8                    baseos    292 k
 ethtool                  x86_64 2:5.0-2.el8                    baseos    151 k
 expat                    x86_64 2.2.5-4.el8                    baseos    110 k
 file                     x86_64 5.33-16.el8                    baseos     76 k
 file-libs                x86_64 5.33-16.el8                    baseos    542 k
 filesystem               x86_64 3.8-3.el8                      baseos    1.1 M
 findutils                x86_64 1:4.6.0-20.el8                 baseos    528 k
 firewalld                noarch 0.8.2-2.el8                    baseos    487 k
 firewalld-filesystem     noarch 0.8.2-2.el8                    baseos     75 k
 fuse                     x86_64 2.9.7-12.el8                   baseos     82 k
 fuse-common              x86_64 3.2.1-12.el8                   baseos     21 k
 fuse-libs                x86_64 2.9.7-12.el8                   baseos    102 k
 gawk                     x86_64 4.2.1-1.el8                    baseos    1.1 M
 gdbm                     x86_64 1:1.18-1.el8                   baseos    130 k
 gdbm-libs                x86_64 1:1.18-1.el8                   baseos     60 k
 geolite2-city            noarch 20180605-1.el8                 baseos     19 M
 geolite2-country         noarch 20180605-1.el8                 baseos    1.0 M
 gettext                  x86_64 0.19.8.1-17.el8                baseos    1.1 M
 gettext-libs             x86_64 0.19.8.1-17.el8                baseos    312 k
 glib2                    x86_64 2.56.4-8.el8                   baseos    2.5 M
 glibc                    x86_64 2.28-127.el8                   baseos    3.6 M
 glibc-common             x86_64 2.28-127.el8                   baseos    1.3 M
 glibc-langpack-ja        x86_64 2.28-127.el8                   baseos    329 k
 gmp                      x86_64 1:6.1.2-10.el8                 baseos    322 k
 gnupg2                   x86_64 2.2.20-2.el8                   baseos    2.4 M
 gnupg2-smime             x86_64 2.2.20-2.el8                   baseos    283 k
 gobject-introspection    x86_64 1.56.1-1.el8                   baseos    255 k
 gpgme                    x86_64 1.13.1-3.el8                   baseos    335 k
 grep                     x86_64 3.1-6.el8                      baseos    274 k
 groff-base               x86_64 1.22.3-18.el8                  baseos    1.0 M
 grubby                   x86_64 8.40-41.el8                    baseos     49 k
 gzip                     x86_64 1.9-9.el8                      baseos    166 k
 hardlink                 x86_64 1:1.3-6.el8                    baseos     29 k
 hdparm                   x86_64 9.54-2.el8                     baseos    100 k
 hostname                 x86_64 3.20-6.el8                     baseos     32 k
 hwdata                   noarch 0.314-8.6.el8                  baseos    1.6 M
 ima-evm-utils            x86_64 1.1-5.el8                      baseos     55 k
 info                     x86_64 6.5-6.el8                      baseos    199 k
 initscripts              x86_64 10.00.9-1.el8                  baseos    338 k
 ipcalc                   x86_64 0.2.4-4.el8                    baseos     38 k
 iprutils                 x86_64 2.4.19-1.el8                   baseos    255 k
 ipset                    x86_64 7.1-1.el8                      baseos     45 k
 ipset-libs               x86_64 7.1-1.el8                      baseos     71 k
 iputils                  x86_64 20180629-2.el8                 baseos    148 k
 irqbalance               x86_64 2:1.4.0-4.el8                  baseos     55 k
 iwl100-firmware          noarch 39.31.5.1-99.el8.1             baseos    168 k
 iwl1000-firmware         noarch 1:39.31.5.1-99.el8.1           baseos    231 k
 iwl105-firmware          noarch 18.168.6.1-99.el8.1            baseos    252 k
 iwl135-firmware          noarch 18.168.6.1-99.el8.1            baseos    261 k
 iwl2000-firmware         noarch 18.168.6.1-99.el8.1            baseos    255 k
 iwl2030-firmware         noarch 18.168.6.1-99.el8.1            baseos    264 k
 iwl3160-firmware         noarch 1:25.30.13.0-99.el8.1          baseos    1.7 M
 iwl5000-firmware         noarch 8.83.5.1_1-99.el8.1            baseos    312 k
 iwl5150-firmware         noarch 8.24.2.2-99.el8.1              baseos    165 k
 iwl6000-firmware         noarch 9.221.4.1-99.el8.1             baseos    185 k
 iwl6000g2a-firmware      noarch 18.168.6.1-99.el8.1            baseos    328 k
 iwl6050-firmware         noarch 41.28.5.1-99.el8.1             baseos    261 k
 iwl7260-firmware         noarch 1:25.30.13.0-99.el8.1          baseos     15 M
 jansson                  x86_64 2.11-3.el8                     baseos     46 k
 json-c                   x86_64 0.13.1-0.2.el8                 baseos     40 k
 kbd                      x86_64 2.0.4-10.el8                   baseos    390 k
 kbd-legacy               noarch 2.0.4-10.el8                   baseos    481 k
 kbd-misc                 noarch 2.0.4-10.el8                   baseos    1.5 M
 kernel                   x86_64 4.18.0-240.el8                 baseos    4.3 M
 kernel-core              x86_64 4.18.0-240.el8                 baseos     30 M
 kernel-modules           x86_64 4.18.0-240.el8                 baseos     26 M
 kernel-tools             x86_64 4.18.0-240.el8                 baseos    4.5 M
 kernel-tools-libs        x86_64 4.18.0-240.el8                 baseos    4.3 M
 keyutils-libs            x86_64 1.5.10-6.el8                   baseos     33 k
 kmod                     x86_64 25-16.el8                      baseos    127 k
 kmod-libs                x86_64 25-16.el8                      baseos     69 k
 kpartx                   x86_64 0.8.4-5.el8                    baseos    108 k
 krb5-libs                x86_64 1.18.2-5.el8                   baseos    837 k
 langpacks-ja             noarch 1.0-12.el8                     appstream 9.4 k
 less                     x86_64 530-1.el8                      baseos    164 k
 libacl                   x86_64 2.2.53-1.el8                   baseos     35 k
 libaio                   x86_64 0.3.112-1.el8                  baseos     32 k
 libarchive               x86_64 3.3.2-9.el8                    baseos    357 k
 libassuan                x86_64 2.5.1-3.el8                    baseos     83 k
 libattr                  x86_64 2.4.48-3.el8                   baseos     27 k
 libbasicobjects          x86_64 0.1.1-39.el8                   baseos     31 k
 libblkid                 x86_64 2.32.1-24.el8                  baseos    216 k
 libcap                   x86_64 2.26-4.el8                     baseos     59 k
 libcap-ng                x86_64 0.7.9-5.el8                    baseos     33 k
 libcollection            x86_64 0.7.0-39.el8                   baseos     48 k
 libcom_err               x86_64 1.45.6-1.el8                   baseos     48 k
 libcomps                 x86_64 0.1.11-4.el8                   baseos     81 k
 libcroco                 x86_64 0.6.12-4.el8_2.1               baseos    112 k
 libdaemon                x86_64 0.14-15.el8                    baseos     36 k
 libdb                    x86_64 5.3.28-39.el8                  baseos    749 k
 libdb-utils              x86_64 5.3.28-39.el8                  baseos    149 k
 libdhash                 x86_64 0.5.0-39.el8                   baseos     34 k
 libdnf                   x86_64 0.48.0-5.el8                   baseos    649 k
 libdrm                   x86_64 2.4.101-1.el8                  appstream 164 k
 libedit                  x86_64 3.1-23.20170329cvs.el8         baseos    102 k
 libestr                  x86_64 0.1.10-1.el8                   appstream  27 k
 libevent                 x86_64 2.1.8-5.el8                    baseos    253 k
 libfastjson              x86_64 0.99.8-2.el8                   appstream  37 k
 libfdisk                 x86_64 2.32.1-24.el8                  baseos    249 k
 libffi                   x86_64 3.1-22.el8                     baseos     37 k
 libgcrypt                x86_64 1.8.5-4.el8                    baseos    462 k
 libgpg-error             x86_64 1.31-1.el8                     baseos    242 k
 libidn2                  x86_64 2.2.0-1.el8                    baseos     93 k
 libini_config            x86_64 1.3.1-39.el8                   baseos     70 k
 libkcapi                 x86_64 1.2.0-2.el8                    baseos     48 k
 libkcapi-hmaccalc        x86_64 1.2.0-2.el8                    baseos     31 k
 libksba                  x86_64 1.3.5-7.el8                    baseos    134 k
 libldb                   x86_64 2.1.3-2.el8                    baseos    178 k
 libmaxminddb             x86_64 1.2.0-10.el8                   baseos     33 k
 libmetalink              x86_64 0.1.3-7.el8                    baseos     32 k
 libmnl                   x86_64 1.0.4-6.el8                    baseos     30 k
 libmodulemd              x86_64 2.9.4-2.el8                    baseos    188 k
 libmount                 x86_64 2.32.1-24.el8                  baseos    231 k
 libmspack                x86_64 0.7-0.3.alpha.el8.4            appstream  71 k
 libndp                   x86_64 1.7-3.el8                      baseos     41 k
 libnetfilter_conntrack   x86_64 1.0.6-5.el8                    baseos     65 k
 libnfnetlink             x86_64 1.0.1-13.el8                   baseos     33 k
 libnfsidmap              x86_64 1:2.3.3-35.el8                 baseos    119 k
 libnftnl                 x86_64 1.1.5-4.el8                    baseos     83 k
 libnghttp2               x86_64 1.33.0-3.el8_2.1               baseos     77 k
 libnl3                   x86_64 3.5.0-1.el8                    baseos    324 k
 libnl3-cli               x86_64 3.5.0-1.el8                    baseos    198 k
 libnsl2                  x86_64 1.2.0-2.20180605git4a062cf.el8 baseos     58 k
 libpath_utils            x86_64 0.2.1-39.el8                   baseos     34 k
 libpcap                  x86_64 14:1.9.1-4.el8                 baseos    166 k
 libpciaccess             x86_64 0.14-1.el8                     baseos     32 k
 libpipeline              x86_64 1.5.0-2.el8                    baseos     54 k
 libpng                   x86_64 2:1.6.34-5.el8                 baseos    126 k
 libpsl                   x86_64 0.20.2-6.el8                   baseos     61 k
 libpwquality             x86_64 1.4.0-9.el8                    baseos    102 k
 libref_array             x86_64 0.1.5-39.el8                   baseos     33 k
 librepo                  x86_64 1.12.0-2.el8                   baseos     89 k
 libseccomp               x86_64 2.4.3-1.el8                    baseos     67 k
 libsecret                x86_64 0.18.6-1.el8                   baseos    163 k
 libsemanage              x86_64 2.9-3.el8                      baseos    164 k
 libsepol                 x86_64 2.9-1.el8                      baseos    340 k
 libsigsegv               x86_64 2.11-5.el8                     baseos     30 k
 libsmartcols             x86_64 2.32.1-24.el8                  baseos    175 k
 libsolv                  x86_64 0.7.11-1.el8                   baseos    358 k
 libss                    x86_64 1.45.6-1.el8                   baseos     53 k
 libssh                   x86_64 0.9.4-2.el8                    baseos    214 k
 libssh-config            noarch 0.9.4-2.el8                    baseos     18 k
 libsss_autofs            x86_64 2.3.0-9.el8                    baseos    108 k
 libsss_certmap           x86_64 2.3.0-9.el8                    baseos    140 k
 libsss_idmap             x86_64 2.3.0-9.el8                    baseos    110 k
 libsss_nss_idmap         x86_64 2.3.0-9.el8                    baseos    117 k
 libsss_sudo              x86_64 2.3.0-9.el8                    baseos    106 k
 libsysfs                 x86_64 2.1.0-24.el8                   baseos     53 k
 libtalloc                x86_64 2.3.1-2.el8                    baseos     49 k
 libtasn1                 x86_64 4.13-3.el8                     baseos     76 k
 libtdb                   x86_64 1.4.3-1.el8                    baseos     58 k
 libteam                  x86_64 1.31-2.el8                     baseos     64 k
 libtevent                x86_64 0.10.2-2.el8                   baseos     49 k
 libtirpc                 x86_64 1.1.4-4.el8                    baseos    112 k
 libtool-ltdl             x86_64 2.4.6-25.el8                   baseos     58 k
 libunistring             x86_64 0.9.9-3.el8                    baseos    422 k
 libuser                  x86_64 0.62-23.el8                    baseos    416 k
 libutempter              x86_64 1.1.6-14.el8                   baseos     31 k
 libuuid                  x86_64 2.32.1-24.el8                  baseos     94 k
 libverto                 x86_64 0.3.0-5.el8                    baseos     24 k
 libxcrypt                x86_64 4.1.1-4.el8                    baseos     73 k
 libxkbcommon             x86_64 0.9.1-1.el8                    baseos    116 k
 libxml2                  x86_64 2.9.7-8.el8                    baseos    695 k
 libxslt                  x86_64 1.1.32-5.el8                   baseos    249 k
 libyaml                  x86_64 0.1.7-5.el8                    baseos     61 k
 libzstd                  x86_64 1.4.4-1.el8                    baseos    266 k
 linux-firmware           noarch 20200619-99.git3890db36.el8    baseos    101 M
 logrotate                x86_64 3.14.0-4.el8                   baseos     85 k
 lshw                     x86_64 B.02.19.2-2.el8                baseos    340 k
 lsscsi                   x86_64 0.30-1.el8                     baseos     69 k
 lua-libs                 x86_64 5.3.4-11.el8                   baseos    118 k
 lvm2                     x86_64 8:2.03.09-5.el8                baseos    1.6 M
 lvm2-libs                x86_64 8:2.03.09-5.el8                baseos    1.1 M
 lz4-libs                 x86_64 1.8.3-2.el8                    baseos     65 k
 lzo                      x86_64 2.08-14.el8                    baseos     69 k
 man-db                   x86_64 2.7.6.1-17.el8                 baseos    887 k
 memstrack                x86_64 0.1.11-1.el8                   baseos     47 k
 mokutil                  x86_64 1:0.3.0-10.el8                 baseos     45 k
 mozjs60                  x86_64 60.9.0-4.el8                   baseos    6.7 M
 mpfr                     x86_64 3.1.6-1.el8                    baseos    221 k
 ncurses                  x86_64 6.1-7.20180224.el8             baseos    387 k
 ncurses-base             noarch 6.1-7.20180224.el8             baseos     81 k
 ncurses-libs             x86_64 6.1-7.20180224.el8             baseos    335 k
 nettle                   x86_64 3.4.1-2.el8                    baseos    300 k
 newt                     x86_64 0.52.20-11.el8                 baseos    121 k
 nftables                 x86_64 1:0.9.3-16.el8                 baseos    311 k
 npth                     x86_64 1.5-4.el8                      baseos     26 k
 numactl-libs             x86_64 2.0.12-11.el8                  baseos     36 k
 open-vm-tools            x86_64 11.1.0-2.el8                   appstream 715 k
 openldap                 x86_64 2.4.46-15.el8                  baseos    351 k
 openssh                  x86_64 8.0p1-5.el8                    baseos    520 k
 openssh-clients          x86_64 8.0p1-5.el8                    baseos    666 k
 openssh-server           x86_64 8.0p1-5.el8                    baseos    483 k
 openssl-pkcs11           x86_64 0.4.10-2.el8                   baseos     66 k
 os-prober                x86_64 1.74-6.el8                     baseos     51 k
 p11-kit                  x86_64 0.23.14-5.el8_0                baseos    272 k
 p11-kit-trust            x86_64 0.23.14-5.el8_0                baseos    139 k
 pam                      x86_64 1.3.1-11.el8                   baseos    738 k
 parted                   x86_64 3.2-38.el8                     baseos    555 k
 passwd                   x86_64 0.80-3.el8                     baseos    114 k
 pciutils                 x86_64 3.6.4-2.el8                    baseos    102 k
 pciutils-libs            x86_64 3.6.4-2.el8                    baseos     53 k
 pcre                     x86_64 8.42-4.el8                     baseos    208 k
 pcre2                    x86_64 10.32-2.el8                    baseos    246 k
 pigz                     x86_64 2.4-4.el8                      baseos     79 k
 pinentry                 x86_64 1.1.0-2.el8                    baseos    100 k
 platform-python          x86_64 3.6.8-31.el8                   baseos     83 k
 platform-python-pip      noarch 9.0.3-18.el8                   baseos    1.7 M
 platform-python-setuptools
                          noarch 39.2.0-6.el8                   baseos    632 k
 plymouth                 x86_64 0.9.4-7.20200615git1e36e30.el8 appstream 126 k
 plymouth-core-libs       x86_64 0.9.4-7.20200615git1e36e30.el8 appstream 121 k
 plymouth-scripts         x86_64 0.9.4-7.20200615git1e36e30.el8 appstream  42 k
 policycoreutils          x86_64 2.9-9.el8                      baseos    377 k
 polkit                   x86_64 0.115-11.el8                   baseos    154 k
 polkit-libs              x86_64 0.115-11.el8                   baseos     76 k
 polkit-pkla-compat       x86_64 0.1-12.el8                     baseos     46 k
 popt                     x86_64 1.16-14.el8                    baseos     61 k
 prefixdevname            x86_64 0.1.0-6.el8                    baseos    460 k
 procps-ng                x86_64 3.3.15-3.el8                   baseos    328 k
 publicsuffix-list-dafsa  noarch 20180723-1.el8                 baseos     56 k
 python3-configobj        noarch 5.0.6-11.el8                   baseos     68 k
 python3-dateutil         noarch 1:2.6.1-6.el8                  baseos    251 k
 python3-dbus             x86_64 1.2.4-15.el8                   baseos    134 k
 python3-decorator        noarch 4.2.1-2.el8                    baseos     27 k
 python3-dmidecode        x86_64 3.12.2-15.el8                  baseos     93 k
 python3-dnf              noarch 4.2.23-4.el8                   baseos    525 k
 python3-dnf-plugins-core noarch 4.0.17-5.el8                   baseos    220 k
 python3-firewall         noarch 0.8.2-2.el8                    baseos    391 k
 python3-gobject-base     x86_64 3.28.3-2.el8                   baseos    312 k
 python3-gpg              x86_64 1.13.1-3.el8                   baseos    244 k
 python3-hawkey           x86_64 0.48.0-5.el8                   baseos    110 k
 python3-libcomps         x86_64 0.1.11-4.el8                   baseos     52 k
 python3-libdnf           x86_64 0.48.0-5.el8                   baseos    755 k
 python3-libs             x86_64 3.6.8-31.el8                   baseos    7.8 M
 python3-libxml2          x86_64 2.9.7-8.el8                    baseos    236 k
 python3-linux-procfs     noarch 0.6.2-2.el8                    baseos     42 k
 python3-nftables         x86_64 1:0.9.3-16.el8                 baseos     26 k
 python3-perf             x86_64 4.18.0-240.el8                 baseos    4.4 M
 python3-pip-wheel        noarch 9.0.3-18.el8                   baseos    1.0 M
 python3-pyudev           noarch 0.21.0-7.el8                   baseos     84 k
 python3-rpm              x86_64 4.14.3-4.el8                   baseos    156 k
 python3-schedutils       x86_64 0.6-6.el8                      baseos     29 k
 python3-setuptools-wheel noarch 39.2.0-6.el8                   baseos    288 k
 python3-six              noarch 1.11.0-8.el8                   baseos     38 k
 python3-slip             noarch 0.6.4-11.el8                   baseos     38 k
 python3-slip-dbus        noarch 0.6.4-11.el8                   baseos     39 k
 python3-unbound          x86_64 1.7.3-14.el8                   baseos    118 k
 readline                 x86_64 7.0-10.el8                     baseos    199 k
 rng-tools                x86_64 6.8-3.el8                      baseos     59 k
 rootfiles                noarch 8.1-22.el8                     baseos     13 k
 rpm                      x86_64 4.14.3-4.el8                   baseos    540 k
 rpm-build-libs           x86_64 4.14.3-4.el8                   baseos    154 k
 rpm-libs                 x86_64 4.14.3-4.el8                   baseos    338 k
 rpm-plugin-selinux       x86_64 4.14.3-4.el8                   baseos     75 k
 rpm-plugin-systemd-inhibit
                          x86_64 4.14.3-4.el8                   baseos     76 k
 rsyslog                  x86_64 8.1911.0-6.el8                 appstream 731 k
 sed                      x86_64 4.5-2.el8                      baseos    297 k
 selinux-policy           noarch 3.14.3-54.el8                  baseos    621 k
 selinux-policy-targeted  noarch 3.14.3-54.el8                  baseos     15 M
 setup                    noarch 2.12.2-6.el8                   baseos    180 k
 sg3_utils                x86_64 1.44-5.el8                     baseos    919 k
 sg3_utils-libs           x86_64 1.44-5.el8                     baseos     99 k
 shadow-utils             x86_64 2:4.6-11.el8                   baseos    1.2 M
 shared-mime-info         x86_64 1.9-3.el8                      baseos    328 k
 slang                    x86_64 2.3.2-3.el8                    baseos    368 k
 snappy                   x86_64 1.1.8-3.el8                    baseos     37 k
 sqlite-libs              x86_64 3.26.0-11.el8                  baseos    580 k
 squashfs-tools           x86_64 4.3-19.el8                     baseos    165 k
 sssd-client              x86_64 2.3.0-9.el8                    baseos    170 k
 sssd-common              x86_64 2.3.0-9.el8                    baseos    1.5 M
 sssd-kcm                 x86_64 2.3.0-9.el8                    baseos    223 k
 sssd-nfs-idmap           x86_64 2.3.0-9.el8                    baseos    104 k
 tar                      x86_64 2:1.30-5.el8                   baseos    837 k
 teamd                    x86_64 1.31-2.el8                     baseos    130 k
 trousers                 x86_64 0.3.14-4.el8                   baseos    152 k
 trousers-lib             x86_64 0.3.14-4.el8                   baseos    168 k
 unbound-libs             x86_64 1.7.3-14.el8                   baseos    499 k
 util-linux               x86_64 2.32.1-24.el8                  baseos    2.5 M
 vim-minimal              x86_64 2:8.0.1763-15.el8              baseos    572 k
 virt-what                x86_64 1.18-6.el8                     baseos     35 k
 which                    x86_64 2.21-12.el8                    baseos     49 k
 xfsprogs                 x86_64 5.0.0-4.el8                    baseos    1.1 M
 xkeyboard-config         noarch 2.28-1.el8                     baseos    782 k
 xmlsec1                  x86_64 1.2.25-4.el8                   appstream 190 k
 xmlsec1-openssl          x86_64 1.2.25-4.el8                   appstream  93 k
 xz                       x86_64 5.2.4-3.el8                    baseos    153 k
 xz-libs                  x86_64 5.2.4-3.el8                    baseos     94 k
 yum                      noarch 4.2.23-4.el8                   baseos    191 k
 zlib                     x86_64 1.2.11-16.el8_2                baseos    102 k
依存関係のインストール:
 grub2-tools-efi          x86_64 1:2.02-90.el8.alma             baseos    469 k
ダウングレード:
 iproute                  x86_64 5.3.0-1.el8                    baseos    658 k
 libusbx                  x86_64 1.0.23-3.el8                   baseos     73 k

トランザクションの概要
================================================================================
インストール     1 パッケージ
アップグレード  36 パッケージ
ダウングレード   2 パッケージ

ダウンロードサイズの合計: 368 M
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
(1/387): libusbx-1.0.23-3.el8.x86_64.rpm        433 kB/s |  73 kB     00:00
(2/387): acl-2.2.53-1.el8.x86_64.rpm            438 kB/s |  81 kB     00:00
(3/387): iproute-5.3.0-1.el8.x86_64.rpm         2.8 MB/s | 658 kB     00:00
<略>
  zlib-1.2.11-16.el8_2.x86_64

失敗しました:
  filesystem-3.8-3.el8.x86_64            filesystem-3.8-3.el8.x86_64

エラー: トランザクションが失敗しました
[root@almalinux ~]#

おや????

[root@almalinux ~]# dnf distro-sync
メタデータの期限切れの最終確認: 0:10:17 時間前の 2021年02月09日 17時08分11秒 に 実施しました。
依存関係が解決しました。
================================================================================
 パッケージ          Arch            バージョン           リポジトリー    サイズ
================================================================================
再インストール:
 filesystem          x86_64          3.8-3.el8            baseos          1.1 M

トランザクションの概要
================================================================================

ダウンロードサイズの合計: 1.1 M
インストール済みのサイズ: 0
これでよろしいですか? [y/N]: y
パッケージのダウンロード:
filesystem-3.8-3.el8.x86_64.rpm                 1.2 MB/s | 1.1 MB     00:00
--------------------------------------------------------------------------------
合計                                            1.2 MB/s | 1.1 MB     00:00
トランザクションの確認を実行中
トランザクションの確認に成功しました。
トランザクションのテストを実行中
トランザクションのテストに成功しました。
トランザクションを実行中
  scriptletの実行中: filesystem-3.8-3.el8.x86_64                            1/1
  準備             :                                                        1/1
  再インストール   : filesystem-3.8-3.el8.x86_64                            1/2
Error unpacking rpm package filesystem-3.8-3.el8.x86_64
  検証             : filesystem-3.8-3.el8.x86_64                            1/2
  検証             : filesystem-3.8-3.el8.x86_64                            2/2

失敗しました:
  filesystem-3.8-3.el8.x86_64            filesystem-3.8-3.el8.x86_64

エラー: トランザクションが失敗しました
[root@almalinux ~]#

filesystemの置き換えがうまくいってない模様。

とりあえずOracle Linuxへのコンバート時に問題となったgrub2-efi.cfgは生成されている

[root@almalinux ~]# ls -l /etc/grub2-efi.cfg
lrwxrwxrwx. 1 root root 31  1月 19 08:21 /etc/grub2-efi.cfg -> ../boot/efi/EFI/centos/grub.cfg
[root@almalinux ~]# ls -l /boot/efi/EFI/*
/boot/efi/EFI/BOOT:
合計 1568
-rwx------. 1 root root 1237503  1月 15 22:34 BOOTX64.EFI
-rwx------. 1 root root  362968  1月 15 22:34 fbx64.efi

/boot/efi/EFI/centos:
合計 5436
-rwx------. 1 root root     122  1月 15 22:34 BOOTX64.CSV
drwx------. 2 root root    4096  1月 19 08:21 fonts
-rwx------. 1 root root    6544  2月  9 16:45 grub.cfg
-rwx------. 1 root root    1024  2月  9 17:15 grubenv
-rwx------. 1 root root 1890896  1月 19 08:21 grubx64.efi
-rwx------. 1 root root 1171320  1月 15 22:34 mmx64.efi
-rwx------. 1 root root 1240144  1月 15 22:34 shimx64-almalinux.efi
-rwx------. 1 root root 1237503  1月 15 22:34 shimx64.efi
[root@almalinux ~]#

…いや、grub.cfgの作成時間が古いのでCentOS8で作成されたものなので再作成します。

[root@almalinux ~]# grub2-mkconfig -o /etc/grub2-efi.cfg
Generating grub configuration file ...
Adding boot menu entry for EFI firmware configuration
done
[root@almalinux ~]# ls -l /boot/efi/EFI/centos/grub.cfg
-rwx------. 1 root root 6544  2月  9 17:21 /boot/efi/EFI/centos/grub.cfg
[root@almalinux ~]#

「CentOS Linux … Security Violation」・・・・お??

あー、Secure Bootか

セキュアブートを無効化して電源ON

再起動後、「dnf distro-sync」を実行したところ正常に完了した。

で・・・改めてESXi7.0で仮想マシンを作る際にセキュアブート無効設定で仮想マシンを作ってからインストールを試みる。

無事起動