Trident: SVM has no assigned aggregates

Created on 18 Apr 2018  ·  6Comments  ·  Source: NetApp/trident

Hi, I'm trying to setup trident in kubernetes with our ontap nas, and I'm running into a problem.

I configured a user on the netapp based on the info in docs/docker/install/ndvp_ontap_config.rst, so I'm not using a full admin user. When adding the backend, I get this error:

time="2018-04-17T12:29:21Z" level=warning msg="Could not determine controller serial numbers. API status: failed, Reason: Unable to find API: system-node-get-iter, Code: 13005"
time="2018-04-17T12:29:21Z" level=error msg="SVM tda01 has no assigned aggregates." backend= handler=AddBackend

It seems the user I created does not have the necessary rights to see the aggregates of the svm. What extra rights could be necessary? Or is this another problem?

Most helpful comment

Most likely your SVM tda01 has simply no data aggregates assigned :) Check in your ONTAP with
vserver show -vserver tda01 if there are any entries in the property List of Aggregates Assigned

If that is empty then you should give your SVM access to at least one aggregate with
vserver modify -vserver tda01 -aggr-list [list at least one aggregate]

Background is that trident tries to create a 1 GB volume where it stores its own configuration. It can't do that if it has no place to write in the SVM.

All 6 comments

Most likely your SVM tda01 has simply no data aggregates assigned :) Check in your ONTAP with
vserver show -vserver tda01 if there are any entries in the property List of Aggregates Assigned

If that is empty then you should give your SVM access to at least one aggregate with
vserver modify -vserver tda01 -aggr-list [list at least one aggregate]

Background is that trident tries to create a 1 GB volume where it stores its own configuration. It can't do that if it has no place to write in the SVM.

Hm, I was sure there was one because the output vserver show -vserver tda01 shows:

Aggregate: tda01_data1

But it also shows

List of Aggregates Assigned: -

So if the assigned list is what trident needs, I guess you are right :)

Can an aggregate be assigned to 2 different vservers? Because it seems we have 2 vservers using the same aggregate. And we plan to use trident with both vservers...

Sure, one aggregate can be assigned to many vservers/SVMs. In smaller environments where only one or two data aggregates exist I would usually assign all aggregates to all SVMs.

Your last sentence is more an architecture and design topic. In my opinion if you have one Kubernetes cluster with one trident installation in it then I would only create one backend (which points to one SVM). So one trident installation per Kubernetes cluster makes most sense. If you have multiple Kubernetes clusters then you can either create one SVM per cluster or even let all the Kubernetes cluster write into the same SVM only with different prefixes per volume naming convention. But I would probably not have one trident installation with two backends pointing to two different SVMs which are in the end storing the data on the same aggregate. That is possible but the question would be why you would want that?

Thanks a lot for your quick response. We have multiple kubernetes/openshift clusters, and the non-pro clusters will connect to different vservers in the same DC. More a logical separation than anything else, just to mirror the production setup which runs in different DC's

The Aggregate: tda01_data1 line indicates which aggregate the root volume of the SVM is on, but does not necessarily indicate which aggregate(s) you wish to have data volumes provisioned on. Additionally, that line will only ever contain a single aggregate, while List of Aggregates Assigned can, logically, take a list. This is why Trident uses the List of Aggregates Assigned attribute instead of the Aggregate attribute of the SVM

I'm not too familiar with the ontap side of things, but it makes sense.

I added the one available aggregate to both vservers with

vserver modify -vserver tda01 -aggr-list tda01_data1

And i added the backend successfully now. Thanks for the assistence.

Was this page helpful?
0 / 5 - 0 ratings

Related issues

SuperBaobab picture SuperBaobab  ·  3Comments

kaparora picture kaparora  ·  5Comments

gnarl picture gnarl  ·  5Comments

uberspot picture uberspot  ·  3Comments

ysakashita picture ysakashita  ·  6Comments