Skip to main content
Active IQ Unified Manager
È disponibile una versione più recente di questo prodotto.
La versione in lingua italiana fornita proviene da una traduzione automatica. Per eventuali incoerenze, fare riferimento alla versione in lingua inglese.

Effettua il provisioning delle condivisioni file CIFS e NFS utilizzando le API di Active IQ Unified Manager

Puoi eseguire il provisioning di CIFS share e condivisioni file NFS sulle tue Storage Virtual Machines (SVM) utilizzando le API di provisioning fornite come parte di Active IQ Unified Manager. Questo flusso di lavoro di provisioning descrive in dettaglio i passaggi per recuperare le chiavi delle SVM, i livelli di servizio delle prestazioni e le policy di efficienza dello storage prima di creare le condivisioni file.

Il diagramma seguente illustra ogni fase del flusso di lavoro per il provisioning di una condivisione file. Include il provisioning sia delle CIFS share sia delle condivisioni file NFS.

Un diagramma che mostra il workflow di provisioning delle condivisioni file CIFS e NFS
Nota

Assicurarsi quanto segue:

  • I cluster ONTAP sono stati aggiunti a Unified Manager ed è stata ottenuta la chiave del cluster.

  • Le SVM sono state create sui cluster.

  • Gli SVM supportano i servizi CIFS e NFS. Il provisioning delle condivisioni di file potrebbe non riuscire se gli SVM non supportano i servizi richiesti.

  • La porta FCP è online per il provisioning della porta.

  1. Verifica se sono disponibili Data LIF o endpoint di accesso sull'SVM su cui vuoi creare la CIFS share. Ottieni l'elenco degli endpoint di accesso disponibili sull'SVM:

    Categoria Verbo HTTP Percorso

    storage-provider

    GET

    /storage-provider/access-endpoints /storage-provider/access-endpoints/{key}

    Esempio di cURL

    curl -X GET "https://<hostname>/api/storage-provider/access-endpoints?resource.key=7d5a59b3-953a-11e8-8857-00a098dcc959" -H "accept: application/json" -H "Authorization: Basic <Base64EncodedCredentials>"
  2. Se il tuo endpoint di accesso è presente nell'elenco, ottieni la chiave dell'endpoint di accesso, altrimenti crea l'endpoint di accesso.

    Nota

    Assicurati di creare endpoint di accesso con il protocollo CIFS abilitato. Il provisioning delle CIFS share non andrà a buon fine se non hai creato un endpoint di accesso con il protocollo CIFS abilitato.

    Categoria Verbo HTTP Percorso

    storage-provider

    POST

    /storage-provider/access-endpoints

    Esempio di cURL

    Devi inserire i dettagli dell'endpoint di accesso che vuoi creare come parametri di input.

    curl -X POST "https://<hostname>/api/storage-provider/access-endpoints" -H "accept: application/json" -H "Content-Type: application/json" -H "Authorization: Basic <Base64EncodedCredentials>"
    { \"data_protocols\": \"nfs\",
    \"fileshare\": { \"key\": \"cbd1757b-0580-11e8-bd9d-00a098d39e12:type=volume,uuid=f3063d27-2c71-44e5-9a69-a3927c19c8fc\" },
    \"gateway\": \"10.132.72.12\",
    \"ip\": { \"address\": \"10.162.83.26\",
    \"ha_address\": \"10.142.83.26\",
    \"netmask\": \"255.255.0.0\" },
    \"lun\": { \"key\": \"cbd1757b-0580-11e8-bd9d-00a098d39e12:type=lun,uuid=d208cc7d-80a3-4755-93d4-5db2c38f55a6\" },
    \"mtu\": 15000, \"name\": \"aep1\",
    \"svm\": { \"key\": \"cbd1757b-0580-11e8-bd9d-00a178d39e12:type=vserver,uuid=1d1c3198-fc57-11e8-99ca-00a098d38e12\" },
    \"vlan\": 10}"

    L'output JSON visualizza una chiave dell'oggetto Job che puoi usare per verificare l'endpoint di accesso che hai creato.

  3. Verifica l'endpoint di accesso:

    Categoria Verbo HTTP Percorso

    server di gestione

    GET

    /management-server/jobs/{key}

  4. Determina se devi creare una CIFS share o una condivisione file NFS. Per creare CIFS share, segui questi passaggi:

    1. Verifica se il server CIFS è configurato sul tuo SVM, ovvero se sull'SVM è stata creata una mappatura Active Directory.

      Categoria Verbo HTTP Percorso

      storage-provider

      GET

      /storage-provider/active-directories-mappings

    2. Se la mappatura di Active Directory è stata creata, prendi la chiave, altrimenti crea la mappatura di Active Directory sull'SVM.

      Categoria Verbo HTTP Percorso

      storage-provider

      POST

      /storage-provider/active-directories-mappings

      Esempio di cURL

      Devi inserire i dettagli per creare la mappatura di Active Directory, come parametri di input.

    curl -X POST "https://<hostname>/api/storage-provider/active-directories-mappings" -H "accept: application/json" -H "Content-Type: application/json" -H "Authorization: Basic <Base64EncodedCredentials>"
    { \"_links\": {},
    \"dns\": \"10.000.000.000\",
    \"domain\": \"example.com\",
    \"password\": \"string\",
    \"svm\": { \"key\": \"9f4ddea-e395-11e9-b660-005056a71be9:type=vserver,uuid=191a554a-f0ce-11e9-b660-005056a71be9\" },
    \"username\": \"string\"}"

    + Si tratta di una chiamata sincrona e puoi verificare la creazione del mapping di Active Directory nell'output. In caso di errore, viene visualizzato il messaggio di errore per aiutarti a risolvere il problema e rieseguire la richiesta.

  5. Ottieni la chiave SVM per l'SVM su cui vuoi creare la CIFS share o la condivisione file NFS, come descritto nell'argomento del flusso di lavoro Verifica degli SVM sui cluster.

  6. Ottieni la chiave per il Performance Service Level eseguendo la seguente API e recuperando la chiave dalla risposta.

    Categoria Verbo HTTP Percorso

    storage-provider

    GET

    /storage-provider/performance-service-levels

    Nota

    Puoi recuperare i dettagli dei livelli di servizio delle prestazioni definiti dal sistema impostando il system_defined`parametro di input su `true. Dall'output, ottieni la chiave del livello di servizio delle prestazioni che vuoi applicare alla condivisione di file.

  7. Facoltativamente, ottieni la chiave di Storage Efficiency Policy per la Storage Efficiency Policy che vuoi applicare alla condivisione file eseguendo la seguente API e recuperando la chiave dalla risposta.

    Categoria Verbo HTTP Percorso

    storage-provider

    GET

    /storage-provider/storage-efficiency-policies

  8. Crea la condivisione file. Puoi creare una condivisione file che supporti sia CIFS che NFS specificando l'elenco di controllo degli accessi e la policy di esportazione. I sottopassaggi seguenti forniscono informazioni se vuoi creare una condivisione file per supportare solo uno dei protocolli sul volume. Puoi anche aggiornare una condivisione file NFS per includere l'elenco di controllo degli accessi dopo aver creato la condivisione NFS. Per informazioni, consulta l'argomento Modifying storage workloads.

    1. Per creare solo una CIFS share, raccogli le informazioni relative all'elenco di controllo degli accessi (ACL). Per creare la CIFS share, fornisci valori validi per i seguenti parametri di input. Per ogni gruppo di utenti che assegni, viene creato un ACL quando esegui il provisioning di una CIFS/SMB share. In base ai valori che inserisci per ACL e mappatura di Active Directory, il sistema determina il controllo degli accessi e la mappatura per la CIFS share al momento della creazione.

      Un comando cURL con valori di esempio

      {
        "access_control": {
          "acl": [
            {
              "permission": "read",
              "user_or_group": "everyone"
            }
          ],
          "active_directory_mapping": {
            "key": "3b648c1b-d965-03b7-20da-61b791a6263c"
          },
    2. Per creare solo un file share NFS, raccogli le informazioni sulla policy di esportazione. Per creare il file share NFS, fornisci valori validi per i seguenti parametri di input. In base ai valori inseriti, la policy di esportazione viene associata al file share NFS al momento della creazione.

      Nota

      Durante il provisioning della condivisione NFS, puoi creare una policy di esportazione fornendo tutti i valori richiesti oppure fornire la chiave della policy di esportazione e riutilizzare una policy di esportazione esistente. Se vuoi riutilizzare una policy di esportazione per la VM di storage, devi aggiungere la chiave della policy di esportazione. A meno che tu non conosca la chiave, puoi recuperare la chiave della policy di esportazione usando l' `/datacenter/protocols/nfs/export-policies`API. Per creare una nuova policy, devi inserire le regole come mostrato nell'esempio seguente. Per le regole inserite, l'API tenta di cercare una policy di esportazione esistente facendo corrispondere host, VM di storage e regole. Se esiste una policy di esportazione, viene utilizzata. In caso contrario, viene creata una nuova policy di esportazione.

      Un comando cURL con valori di esempio

      "export_policy": {
            "key": "7d5a59b3-953a-11e8-8857-00a098dcc959:type=export_policy,uuid=1460288880641",
            "name_tag": "ExportPolicyNameTag",
            "rules": [
              {
                "clients": [
                  {
                    "match": "0.0.0.0/0"
                  }

    Dopo aver configurato l'access control list e la policy di esportazione, fornisci i valori validi per i parametri di input obbligatori per le condivisioni di file CIFS e NFS:

Nota

Storage Efficiency Policy è un parametro facoltativo per la creazione di condivisioni di file.

Categoria Verbo HTTP Percorso

storage-provider

POST

/storage-provider/file-shares

L'output JSON visualizza una chiave oggetto Job che puoi utilizzare per verificare la condivisione file che hai creato. . Verifica la creazione della condivisione file utilizzando la chiave oggetto Job restituita dall'interrogazione del job:

Categoria Verbo HTTP Percorso

server di gestione

GET

/management-server/jobs/{key}

Alla fine della risposta, vedi la chiave della condivisione file creata.

    ],
    "job_results": [
        {
            "name": "fileshareKey",
            "value": "7d5a59b3-953a-11e8-8857-00a098dcc959:type=volume,uuid=e581c23a-1037-11ea-ac5a-00a098dcc6b6"
        }
    ],
    "_links": {
        "self": {
            "href": "/api/management-server/jobs/06a6148bf9e862df:-2611856e:16e8d47e722:-7f87"
        }
    }
}
  1. Verifica la creazione della condivisione di file eseguendo la seguente API con la chiave restituita:

    Categoria Verbo HTTP Percorso

    storage-provider

    GET

    /storage-provider/file-shares/{key}

    Esempio di output JSON

    Come puoi vedere, il metodo POST di /storage-provider/file-shares richiama internamente tutte le API necessarie per ciascuna funzione e crea l'oggetto. Ad esempio, richiama l'API /storage-provider/performance-service-levels/ per assegnare il Performance Service Level al file share.

    {
        "key": "7d5a59b3-953a-11e8-8857-00a098dcc959:type=volume,uuid=e581c23a-1037-11ea-ac5a-00a098dcc6b6",
        "name": "FileShare_377",
        "cluster": {
            "uuid": "7d5a59b3-953a-11e8-8857-00a098dcc959",
            "key": "7d5a59b3-953a-11e8-8857-00a098dcc959:type=cluster,uuid=7d5a59b3-953a-11e8-8857-00a098dcc959",
            "name": "AFFA300-206-68-70-72-74",
            "_links": {
                "self": {
                    "href": "/api/datacenter/cluster/clusters/7d5a59b3-953a-11e8-8857-00a098dcc959:type=cluster,uuid=7d5a59b3-953a-11e8-8857-00a098dcc959"
                }
            }
        },
        "svm": {
            "uuid": "b106d7b1-51e9-11e9-8857-00a098dcc959",
            "key": "7d5a59b3-953a-11e8-8857-00a098dcc959:type=vserver,uuid=b106d7b1-51e9-11e9-8857-00a098dcc959",
            "name": "RRT_ritu_vs1",
            "_links": {
                "self": {
                    "href": "/api/datacenter/svm/svms/7d5a59b3-953a-11e8-8857-00a098dcc959:type=vserver,uuid=b106d7b1-51e9-11e9-8857-00a098dcc959"
                }
            }
        },
        "assigned_performance_service_level": {
            "key": "1251e51b-069f-11ea-980d-fa163e82bbf2",
            "name": "Value",
            "peak_iops": 75,
            "expected_iops": 75,
            "_links": {
                "self": {
                    "href": "/api/storage-provider/performance-service-levels/1251e51b-069f-11ea-980d-fa163e82bbf2"
                }
            }
        },
        "recommended_performance_service_level": {
            "key": null,
            "name": "Idle",
            "peak_iops": null,
            "expected_iops": null,
            "_links": {}
        },
        "space": {
            "size": 104857600
        },
        "assigned_storage_efficiency_policy": {
            "key": null,
            "name": "Unassigned",
            "_links": {}
        },
        "access_control": {
            "acl": [
                {
                    "user_or_group": "everyone",
                    "permission": "read"
                }
            ],
            "export_policy": {
                "id": 1460288880641,
                "key": "7d5a59b3-953a-11e8-8857-00a098dcc959:type=export_policy,uuid=1460288880641",
                "name": "default",
                "rules": [
                    {
                        "anonymous_user": "65534",
                        "clients": [
                            {
                                "match": "0.0.0.0/0"
                            }
                        ],
                        "index": 1,
                        "protocols": [
                            "nfs3",
                            "nfs4"
                        ],
                        "ro_rule": [
                            "sys"
                        ],
                        "rw_rule": [
                            "sys"
                        ],
                        "superuser": [
                            "none"
                        ]
                    },
                    {
                        "anonymous_user": "65534",
                        "clients": [
                            {
                                "match": "0.0.0.0/0"
                            }
                        ],
                        "index": 2,
                        "protocols": [
                            "cifs"
                        ],
                        "ro_rule": [
                            "ntlm"
                        ],
                        "rw_rule": [
                            "ntlm"
                        ],
                        "superuser": [
                            "none"
                        ]
                    }
                ],
                "_links": {
                    "self": {
                        "href": "/api/datacenter/protocols/nfs/export-policies/7d5a59b3-953a-11e8-8857-00a098dcc959:type=export_policy,uuid=1460288880641"
                    }
                }
            }
        },
        "_links": {
            "self": {
                "href": "/api/storage-provider/file-shares/7d5a59b3-953a-11e8-8857-00a098dcc959:type=volume,uuid=e581c23a-1037-11ea-ac5a-00a098dcc6b6"
            }
        }
    }