3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Red Hat OpenShift Service on AWSのPersistentVolumeとしてAmazon FSx for NetApp ONTAPを使ってみた(FSx for ONTAPのデプロイ・マウント編)

Posted at

はじめに

  • Red Hat社が提供するKubernetesのディストリビューションとして、エンタープライズな領域を中心によく使われている印象(やっぱり保守受けたいですよね、わかります)があるRed Hat OpenShift Container Platform(OCP)。
  • そのOCPの、AWSによるマネージドサービスがRed Hat OpenShift Service on AWS(ROSA)。
  • そのROSAとAmazon FSx for NetApp ONTAP(FSx for ONTAP)との統合について紹介されているAWSブログを読んで、興味が湧いてきたので自分でも試してみました。ちなみにOpenShift自体は少し触れたことがありますが、ROSA自体に触れるは全くの初めてです。
  • ROSAクラスタのデプロイ編の記事でROSAクラスタを作成するところまでは完了したので、今回はFSx for ONTAPのデプロイからPVのマウントまでをやってみます。

前回はWindowsでやっていましたが、今回はROSAクラスタがあるVPC上に立てたAmazon Linux上で作業する場合の手順です。2023年2月上旬に実施していますので、今後手順等が変わったらすみません。

予め用意しておくもの

早速やってみた

FSx for ONTAPのデプロイ

  • 参考にしたこちらのブログではCloudFormationでデプロイしていますが、今回はあえてGUI(AWSマネジメントコンソール)でやってみました。

  • まずはAWSマネジメントコンソールのAmazon FSxの画面から「ファイルシステムを作成」をクリック。
    deploy_fsxn1.png

  • 「ファイルシステムのオプション」は「Amazon FSx for NetApp ONTAP」を選択し、「次へ」をクリック。
    deploy_fsxn2.png

  • 「作成方法」は「スタンダード作成」を選択して、「ファイルシステムの詳細」は適当に以下の通り入力/選択。
    deploy_fsxn3.png

  • 「ネットワークとセキュリティ」は以下の通り選択。

    • VPC:ROSAクラスタがあるVPC(ROSAデプロイ時に自動作成されたもの)
    • VPCセキュリティグループ:ROSAクラスタのMaster Node用、Worker Node用セキュリティグループの両方(ROSAデプロイ時に自動作成されたもの)
    • サブネット:ROSAクラスタのWorker Nodeがあるプライベートサブネット(ROSAデプロイ時に自動作成されたもの)

    deploy_fsxn4.png

今回、検証なのでセキュリティグループは適当にROSAクラスタのものを使いまわしています。本番利用される場合は、ちゃんとFSx for ONTAP用に最小権限で作成したほうがいいです。
また、Astra Tridentが通信に使用するポートはセキュリティグループのインバウンドルールに追加しておく必要があります。(追加時のスクリーンショット取り忘れてました。。。)

  • 「セキュリティと暗号化」は、以下の通り入力/選択。

    • 暗号化キー:aws/fsx(デフォルト)
    • ファイルシステム管理パスワード:「パスワードを指定」を選択
    • パスワード:任意のものを入力

    deploy_fsxn4_1.png

  • 「デフォルトのストレージ仮想マシン設定」は、以下の通り入力/選択。

    • ストレージ仮想マシン名:svm1(任意の名前でOK)
    • SVM管理パスワード:「パスワードを指定」を選択(Astra Tridentでストレージバックエンドの設定をするのに必要)
    • ルートボリュームのセキュリティスタイル:Unix (Linux)
    • Active Directory:Active Directoryに参加しない

    deploy_fsxn5.png

  • 「デフォルトのボリューム設定」、「バックアップとメンテナンス - オプション」、「タグ」は、以下の通り入力/選択し、「次へ」をクリック。(今回の検証なら適当でOK)
    deploy_fsxn6.png

  • 確認画面で設定内容を確認して「ファイルシステムを作成」をクリック。
    deploy_fsxn8.png

  • しばらく待っているとできました。
    deploy_fsxn9.png

Astra Trident(CSIドライバ)の設定

Astra Tridentとは

  • NetAppストレージ用のCSIドライバ。
  • Astra Tridentを介してKubernetesのレイヤーからNetAppストレージへPersistentVolumeの要求やSnapshotなどの操作を実施可能。
  • ハードウェアストレージであってもFSx for ONTAPのようなクラウド上のストレージサービスであっても同じドライバを利用可能。
  • 勿論、Red Hat OpenShift(ROSA含む)でも利用可能。
  • ここからは、ROSAクラスタとFSx for ONTAPがあるVPC内に立てたAmazon Linux(AWS CLI、OC CLI、ROSA CLI、Helmがインストール済)から操作していきます。

Astra Tridentのインストール

  • 以下コマンドにて、ROSAクラスタにログイン。(実際のログイン先、認証情報は前回の記事参照)
    $ oc login https://api.st-rosa-test.XXXX.XX.openshiftapps.com:6443 --username cluster-admin --password XXXXXXXXXXXXXXXXXXXXXXX
    Login successful.
    
    You have access to 101 projects, the list has been suppressed. You can list all projects with 'oc projects'
    
    Using project "default".
    Welcome! See 'oc help' to get started.
    
  • 以下コマンドにて、Astra Trident用のNamespacetridentを作成。
    $ oc create ns trident
    namespace/trident created
    
  • 以下コマンドにて、Astra Trident(今回はv22.10.0)のインストーラをダウンロード。
    $ curl -L -o trident-installer-22.10.0.tar.gz https://github.com/NetApp/trident/releases/download/v22.10.0/trident-installer-22.10.0.tar.gz
    
  • 以下コマンドにて、インストーラの圧縮ファイルを解凍。
    $ tar -xvf ./trident-installer-22.10.0.tar.gz 
    
  • 以下コマンドにて、Helmを使ってAstra Tridentをインストール。
    $ cd trident-installer/helm
    $ helm install trident -n trident trident-operator-22.10.0.tgzz 
    W0206 13:31:09.800783    3835 warnings.go:70] would violate PodSecurity "restricted:v1.24": allowPrivilegeEscalation != false (container "trident-operator" must set securityContext.allowPrivilegeEscalation=false), unrestricted capabilities (container "trident-operator" must set securityContext.capabilities.drop=["ALL"]), runAsNonRoot != true (pod or container "trident-operator" must set securityContext.runAsNonRoot=true), seccompProfile (pod or container "trident-operator" must set securityContext.seccompProfile.type to "RuntimeDefault" or "Localhost")
    NAME: trident
    LAST DEPLOYED: Mon Feb  6 13:31:06 2023
    NAMESPACE: trident
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
    NOTES:
    Thank you for installing trident-operator, which will deploy and manage NetApp's Trident CSI
    storage provisioner for Kubernetes.
    
    Your release is named 'trident' and is installed into the 'trident' namespace.
    Please note that there must be only one instance of Trident (and trident-operator) in a Kubernetes cluster.
    
    To configure Trident to manage storage resources, you will need a copy of tridentctl, which is
    available in pre-packaged Trident releases.  You may find all Trident releases and source code
    online at https://github.com/NetApp/trident.
    
    To learn more about the release, try:
    
      $ helm status trident
      $ helm get all trident
    

Astra Tridentのインストール

  • 以下コマンドにて、ROSAクラスタにログイン。(実際のログイン先、認証情報は前回の記事参照)
    $ oc login https://api.st-rosa-test.XXXX.XX.openshiftapps.com:6443 --username cluster-admin --password XXXXXXXXXXXXXXXXXXXXXXX
    Login successful.
    
    You have access to 101 projects, the list has been suppressed. You can list all projects with 'oc projects'
    
    Using project "default".
    Welcome! See 'oc help' to get started.
    
  • 以下コマンドにて、Astra Trident用のNamespacetridentを作成。
    $ oc create ns trident
    namespace/trident created
    
  • 以下コマンドにて、Astra Trident(今回はv22.10.0)のインストーラをダウンロード。
    $ curl -L -o trident-installer-22.10.0.tar.gz 
    
  • 以下コマンドにて、圧縮ファイルのインストーラを解凍。
    $ tar -xvf ./trident-installer-22.10.0.tar.gz 
    
  • 以下コマンドにて、Helmを使ってAstra Tridentをインストール。
    $ cd trident-installer/helm
    $ helm install trident -n trident trident-operator-22.10.0.tgzz 
    W0206 13:31:09.800783    3835 warnings.go:70] would violate PodSecurity "restricted:v1.24": allowPrivilegeEscalation != false (container "trident-operator" must set securityContext.allowPrivilegeEscalation=false), unrestricted capabilities (container "trident-operator" must set securityContext.capabilities.drop=["ALL"]), runAsNonRoot != true (pod or container "trident-operator" must set securityContext.runAsNonRoot=true), seccompProfile (pod or container "trident-operator" must set securityContext.seccompProfile.type to "RuntimeDefault" or "Localhost")
    NAME: trident
    LAST DEPLOYED: Mon Feb  6 13:31:06 2023
    NAMESPACE: trident
    STATUS: deployed
    REVISION: 1
    TEST SUITE: None
    NOTES:
    Thank you for installing trident-operator, which will deploy and manage NetApp's Trident CSI
    storage provisioner for Kubernetes.
    
    Your release is named 'trident' and is installed into the 'trident' namespace.
    Please note that there must be only one instance of Trident (and trident-operator) in a Kubernetes cluster.
    
    To configure Trident to manage storage resources, you will need a copy of tridentctl, which is
    available in pre-packaged Trident releases.  You may find all Trident releases and source code
    online at https://github.com/NetApp/trident.
    
    To learn more about the release, try:
    
      $ helm status trident
      $ helm get all trident
    

FSx for ONTAPをバックエンドとして設定

  • 以下コマンドにて、適当な作業ディレクトリ(今回はホームディレクトリ)に移動。

    $ cd ~/
    
  • 以下コマンドにて、SVMのシークレット用のyamlファイルを作成し、保存。

    $ vi svm_secret.yaml
    
    svm_secret.yaml
    apiVersion: v1
    kind: Secret
    metadata:
      name: backend-fsx-ontap-nas-secret
      namespace: trident
    type: Opaque
    stringData:
      username: vsadmin
      password: <FSx for ONTAPデプロイ時に設定したSVM管理パスワード>
    
  • 以下コマンドにて、シークレットを追加。

    $ oc apply -f svm_secret.yaml
    secret/backend-fsx-ontap-nas-secret created
    
  • 以下コマンドにて、シークレットが追加されたことを確認。

    $ oc get secrets -n trident |grep backend-fsx-ontap-nas
    backend-fsx-ontap-nas-secret         Opaque                                2      8s
    
  • AWSマネジメントコンソールのFSx for ONTAPの画面からストレージ仮想マシン(SVM)のエンドポイントを確認。
    deploy_fsxn10.png

  • 以下コマンドにて、バックエンド設定用のyamlファイルを作成し、保存。ここでSVMへの接続のために先ほど作成したシークレットが登場します。

    $ vi backend-ontap-nas.yaml
    
    backend-ontap-nas.yaml
    apiVersion: trident.netapp.io/v1
    kind: TridentBackendConfig
    metadata:
      name: backend-fsx-ontap-nas
      namespace: trident
    spec:
      version: 1
      backendName: fsx-ontap
      storageDriverName: ontap-nas
      managementLIF: 10.0.225.117 <- 上記で確認した「管理IPアドレス」 
      dataLIF: 10.0.225.117 <- 上記で確認した「NFS IPアドレス」 
      svm: svm1 <- 作成したストレージ仮想マシン名
      credentials:
        name: backend-fsx-ontap-nas-secret
    

    ちょっと前まではバックエンドの設定はjsonファイルで定義してtridentctlコマンドを使用して設定するものだったんですが、v21.04からはTridentBackendConfigオブジェクトが導入されたので、kubectl applyoc applyコマンドで設定できるようになりました。

  • 以下コマンドにて、FSx for ONTAPをバックエンドとして構成。

    $ oc apply -f backend-ontap-nas.yaml
    tridentbackendconfig.trident.netapp.io/backend-fsx-ontap-nas created
    
  • 以下コマンドにて、バックエンドが構成されていることを確認。(tbcTridentBackendConfig

    $ oc get tbc -n trident
    NAME                    BACKEND NAME   BACKEND UUID                           PHASE   STATUS
    backend-fsx-ontap-nas   fsx-ontap      3051def7-bb11-4fea-aa37-9f3f018865f8   Bound   Success
    

ストレージクラスの作成

  • 以下のコマンドにて、ストレージクラス設定用のyamlファイルを作成し、保存。
    $ vi storage-class-csi-nas.yaml
    
    storage-class-csi-nas.yaml
    apiVersion: storage.k8s.io/v1
    kind: StorageClass
    metadata:
      name: trident-csi
    provisioner: csi.trident.netapp.io
    parameters:
      backendType: "ontap-nas"
      fsType: "ext4"
    allowVolumeExpansion: True
    reclaimPolicy: Retain
    
  • 以下コマンドにて、ストレージクラスを作成。
    $ oc apply -f storage-class-csi-nas.yaml
    storageclass.storage.k8s.io/trident-csi created
    
  • 以下コマンドにて、ストレージクラスが作成されていることを確認。
    $ oc get sc
    NAME            PROVISIONER             RECLAIMPOLICY   VOLUMEBINDINGMODE      ALLOWVOLUMEEXPANSION   AGE
    gp2             kubernetes.io/aws-ebs   Delete          WaitForFirstConsumer   true                   82m
    gp2-csi         ebs.csi.aws.com         Delete          WaitForFirstConsumer   true                   77m
    gp3 (default)   ebs.csi.aws.com         Delete          WaitForFirstConsumer   true                   82m
    gp3-csi         ebs.csi.aws.com         Delete          WaitForFirstConsumer   true                   77m
    trident-csi     csi.trident.netapp.io   Retain          Immediate              true                   5s
    

PersistentVolumeを作成(サンプルのMySQLのStatefulSetをデプロイ)

  • 以下コマンドにて、MySQL用のNamespacemysqlを作成。
    $ oc create ns mysql
    namespace/mysql created
    
  • 以下コマンドにて、MySQLのシークレット用のyamlファイルを作成し、保存。
    $ vi mysql-secrets.yaml
    
    mysql-secrets.yaml
    apiVersion: v1
    kind: Secret
    metadata:
      namespace: mysql
      name: mysql-password
    type: opaque
    stringData:
      MYSQL_ROOT_PASSWORD: password
    
  • 以下コマンドにて、MySQL用のシークレットを追加。
    $ oc apply -f mysql-secrets.yaml
    secret/mysql-password created
    
  • 以下コマンドにて、シークレットが追加されたことを確認。
    $ oc get secrets -n mysql
    NAME                       TYPE                                  DATA   AGE
    builder-dockercfg-vssdp    kubernetes.io/dockercfg               1      13s
    builder-token-5kj4x        kubernetes.io/service-account-token   4      14s
    default-dockercfg-dsggs    kubernetes.io/dockercfg               1      13s
    default-token-s775h        kubernetes.io/service-account-token   4      14s
    deployer-dockercfg-5bjv5   kubernetes.io/dockercfg               1      13s
    deployer-token-jcd5h       kubernetes.io/service-account-token   4      13s
    mysql-password             opaque                                1      6s
    
  • 以下コマンドにて、MySQLのStatefulSet用のyamlファイルを作成し、保存。
    $ vi mysql-statefulset.yaml
    
    mysql-statefulset.yaml
    apiVersion: apps/v1
    kind: StatefulSet
    metadata:
      namespace: mysql
      name: mysql-set
    spec:
      selector:
        matchLabels:
          app: mysql
      serviceName: "mysql"
      replicas: 3
      template:
        metadata:
          labels:
            app: mysql
        spec:
          terminationGracePeriodSeconds: 10
          containers:
          - name: mysql
            image: mysql:5.7
            ports:
            - containerPort: 3306
            volumeMounts:
            - name: mysql-store
              mountPath: /var/lib/mysql
            env:
              - name: MYSQL_ROOT_PASSWORD
                valueFrom:
                  secretKeyRef:
                    name: mysql-password
                    key: MYSQL_ROOT_PASSWORD
      volumeClaimTemplates:
      - metadata:
          name: mysql-store
        spec:
          accessModes: ["ReadWriteMany"]
          storageClassName: trident-csi
          resources:
            requests:
              storage: 10Gi
    
  • 以下コマンドにて、StatefulSetを作成。
    $ oc apply -f mysql-statefulset.yaml
    Warning: would violate PodSecurity "restricted:v1.24": allowPrivilegeEscalation != false (container "mysql" must set securityContext.allowPrivilegeEscalation=false), unrestricted capabilities (container "mysql" must set securityContext.capabilities.drop=["ALL"]), runAsNonRoot != true (pod or container "mysql" must set securityContext.runAsNonRoot=true), seccompProfile (pod or container "mysql" must set securityContext.seccompProfile.type to "RuntimeDefault" or "Localhost")
    statefulset.apps/mysql-set created
    
  • 以下コマンドにて、MySQLのPodが作成されていることを確認。
    $ oc get pods -n mysql
    NAME          READY   STATUS    RESTARTS   AGE
    mysql-set-0   1/1     Running   0          58s
    mysql-set-1   1/1     Running   0          36s
    mysql-set-2   1/1     Running   0          16s
    
  • 以下コマンドにて、PVCが作成されていることを確認。
    $ oc get pvc -n mysql
    NAME                      STATUS   VOLUME                                     CAPACITY   ACCESS MODES   STORAGECLASS   AGE
    mysql-store-mysql-set-0   Bound    pvc-db5d8d26-192c-454c-ba95-52a4dacf2935   10Gi       RWX            trident-csi    68s
    mysql-store-mysql-set-1   Bound    pvc-a9015077-e97c-4054-9a6b-19ec12c157a5   10Gi       RWX            trident-csi    46s
    mysql-store-mysql-set-2   Bound    pvc-9102b0af-85f7-48bb-a531-30a71d54cb27   10Gi       RWX            trident-csi    26s
    
  • 以下コマンドにて、MySQLのサービス用のyamlファイルを作成し、保存。
    $ vi mysql-service.yaml
    
    mysql-service.yaml
    apiVersion: v1
    kind: Service
    metadata:
      namespace: mysql
      name: mysql
      labels:
        app: mysql
    spec:
      ports:
      - name: mysql
        port: 3306
      clusterIP: None
      selector:
        app: mysql
    
  • 以下コマンドにて、MySQLのサービスを作成。
    $ oc apply -f mysql-service.yaml
    service/mysql created
    
  • 以下コマンドにて、MySQLのサービスが作成されていることを確認。
    $ oc get svc -n mysql
    NAME    TYPE        CLUSTER-IP   EXTERNAL-IP   PORT(S)    AGE
    mysql   ClusterIP   None         <none>        3306/TCP   6s
    
  • 以下コマンドにて、MySQL ClientのPod用のyamlファイルを作成し、保存。
    $ vi mysql-client.yaml
    
    mysql-client.yaml
    apiVersion: v1
    kind: Pod
    metadata:
      name: mysql-client
    spec:
      containers:
      - name: mysql-container
        image: alpine
        command: ['sh','-c', "sleep 1800m"]
        imagePullPolicy: IfNotPresent
    
  • 以下コマンドにて、MySQL Client用のPodを作成。
    $ oc apply -f mysql-client.yaml
    Warning: would violate PodSecurity "restricted:latest": allowPrivilegeEscalation != false (container "mysql-container" must set securityContext.allowPrivilegeEscalation=false), unrestricted capabilities (container "mysql-container" must set securityContext.capabilities.drop=["ALL"]), runAsNonRoot != true (pod or container "mysql-container" must set securityContext.runAsNonRoot=true), seccompProfile (pod or container "mysql-container" must set securityContext.seccompProfile.type to "RuntimeDefault" or "Localhost")
    pod/mysql-client created
    
  • 以下コマンドにて、MySQL ClientのPodが作成されたことを確認。
    $ oc get pods
    NAME           READY   STATUS    RESTARTS   AGE
    mysql-client   1/1     Running   0          19s
    
  • 以下コマンドにて、MySQL ClientのPodにログイン。
    $ oc exec --stdin --tty mysql-client -- sh
    / #
    
  • 以下コマンドにて、MySQL Clientツールをインストール
    / # apk add mysql-client
    fetch https://dl-cdn.alpinelinux.org/alpine/v3.17/main/x86_64/APKINDEX.tar.gz
    fetch https://dl-cdn.alpinelinux.org/alpine/v3.17/community/x86_64/APKINDEX.tar.gz
    (1/7) Installing mariadb-common (10.6.11-r0)
      0%                                                                                                                                                         0% #                                                                                                                                                       1% #                                                                                                                                                       1% ##                                                                                                                                                      2% ###                                                                                                                                                     2% ####                                                                                                                                                    3% ####                                                                                                                                                    3% #####                                                                                                                                                   4% ######                                                                                                                                                  4% #######                                                                                                                                                 5% #######                                                                                                                                                 5% ########                                                                                                                                              (2/7) Installing libgcc (12.2.1_git20220924-r4)
      6% #########                                                                                                                                             (3/7) Installing ncurses-terminfo-base (6.3_p20221119-r0)
      6% ##########                                                                                                                                              7% ##########                                                                                                                                            (4/7) Installing ncurses-libs (6.3_p20221119-r0)
      7% ###########                                                                                                                                             8% #############                                                                                                                                         (5/7) Installing libstdc++ (12.2.1_git20220924-r4)
      8% #############                                                                                                                                          14% ######################                                                                                                                                (6/7) Installing mariadb-client (10.6.11-r0)
     15% #######################                                                                                                                                21% ################################                                                                                                                       27% ########################################                                                                                                               27% #########################################                                                                                                              33% ##################################################                                                                                                     38% #########################################################                                                                                              43% #################################################################                                                                                      48% ########################################################################                                                                               54% #################################################################################                                                                      59% ########################################################################################                                                               65% #################################################################################################                                                      69% ########################################################################################################                                               75% #################################################################################################################                                      79% #######################################################################################################################                                85% ################################################################################################################################                       89% ######################################################################################################################################                 95% ###############################################################################################################################################       (7/7) Installing mysql-client (10.6.11-r0)
     99% ##################################################################################################################################################### 100% ######################################################################################################################################################Executing busybox-1.35.0-r29.trigger
    OK: 41 MiB in 22 packages
    
  • 以下のコマンドにて、MySQLに接続。(mysql-secrets.yamlに記載したパスワードを入力)
    / # mysql -u root -p -h mysql-set-0.mysql.mysql.svc.cluster.local
    Enter password: 
    Welcome to the MariaDB monitor.  Commands end with ; or \g.
    Your MySQL connection id is 3
    Server version: 5.7.41 MySQL Community Server (GPL)
    
    Copyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.
    
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    
    MySQL [(none)]> 
    
  • 以下コマンドにて、データベースを作成
    MySQL [(none)]> CREATE DATABASE erp;
    Query OK, 1 row affected (0.004 sec)
    
    MySQL [(none)]> CREATE TABLE erp.Persons ( ID int, FirstName varchar(255),Lastname varchar(255));
    Query OK, 0 rows affected (0.011 sec)
    
    MySQL [(none)]> INSERT INTO erp.Persons (ID, FirstName, LastName) values (1234 , "John" , "Doe");
    Query OK, 1 row affected (0.007 sec)
    
    MySQL [(none)]> commit;
    Query OK, 0 rows affected (0.000 sec)
    
    MySQL [(none)]> select * from erp.Persons;
    +------+-----------+----------+
    | ID   | FirstName | Lastname |
    +------+-----------+----------+
    | 1234 | John      | Doe      |
    +------+-----------+----------+
    1 row in set (0.000 sec)
    

MySQLのStatefulSetのPodをスケール

  • 以下コマンドにて、MySQLのStatefulSetのPodをスケール。

    $ oc scale statefulsets mysql-set --replicas=4 -n mysql
    statefulset.apps/mysql-set scaled
    
  • 以下コマンドにて、MySQLのPodが4つに増えていることを確認。

    $ oc get pods -n mysql
    NAME          READY   STATUS    RESTARTS   AGE
    mysql-set-0   1/1     Running   0          6m38s
    mysql-set-1   1/1     Running   0          6m16s
    mysql-set-2   1/1     Running   0          5m56s
    mysql-set-3   1/1     Running   0          18s
    
  • AWSマネジメントコンソールからボリュームを確認すると、Astra Tridentを介して作成されたボリューム(trident_pvcで始まるボリューム)が4つあることを確認。
    deploy_fsxn11.png

  • 参考にしたこちらのブログではこの後バックアップとリストアも実行していますが、今回は割愛しました。

  • ということで、今回は以上で完了です。

まとめ

  • ROSAでもAstra Tridentを介してFSx for ONTAPをPersitentVolumeとして利用できることを確認できました。
  • ROSAはAWS側で一度有効化などをしておけばAWSのインフラの準備をする必要なく、コマンド一発でOpenShiftのクラスタを作成できるのが良いと思いました。
  • オンプレミスでOpenShiftを利用しており、PersistentVolumeのバックエンドとしてNetAppのONTAPが搭載されたストレージを使用している場合、PVのボリュームをオンプレミスのストレージからFSx for ONTAPにレプリケーションしておけば、アプリケーションなどはyamlのマニフェストファイルさえあれば立ち上げられるので、簡単にクラウドDRを実現できると思いました。
  • また機会があればいろいろ触ってみたいと思います。

参照記事

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?