The transition to NetApp MS Azure AD B2C is complete. If you missed the pre-registration, you will be invited to reigister at next log in.
Please note that access to your NetApp data may take up to 1 hour.
To learn more, read the FAQ and watch the video.
Need assistance? Complete this form and select “Registration Issue” as the Feedback Category.

Active IQ Unified Manager Discussions

Find volumes with less than 3 LUNs in it...

solal

Hey guys,

In a pretty standard flow for creating VMFS datastore (with volume, lun....) there's a request from a customer that I'm struggling to get my head on and appreciate any thought:

- convention for LUNs in a volume is 3 LUNs in a volume.

- let's say naming convention is na_w2k8_X and current X is vol number 1

- if there are 3 LUNs already in that vol 1, then create a new volume numbered 2 with the same convention.

- if there are less than 3 in the first volume of that convention, then resize that volume and create the 3rd LUN in it.

Now, how do I do that search for that convention to search for number of LUNs in it to know if I should create a LUN in an existing volume matching the convention or create a new one.

of course, if there are 5 volume, vols 1-4 might be full, 5 might be with only 1 or 2... then i'll put new lun in 5.

thanks in advance!

Soli.

1 ACCEPTED SOLUTION

yaronh

Ah, one of the secret caveats and the holy grail of WFA 🙂

So here's one of the best kept and least known secrets of WFA:

You can actually extend SPECIFIC objects based on information returned in the filter.

Let me explain:

Let's say you use finder F1 with the basic filter "Find Volume by key" to fill up variable Vol1 => Vol1 will have regular volume fields

Let's assume a new filter "Volume with lun count" that looks like this:

SELECT volume.name, array.ip AS 'array.ip', count(lun.id) AS lun_count

FROM storage.volume

JOIN storage.array ON volume.array_id = array.id

LEFT JOIN storage.lun ON lun.volume_id = volume.id

GROUP BY volume.id

  HAVING lun_count < ${max_luns}

That query is simple one, running on ALL the volumes in the cache, listing them,

and counting for each the numbers of luns each holds (Here under a certain maximum).

Note that the list is not bound by anything else.

Now lets create finder F2 with 2 filters:

1) Volume by key

2) Volume by lun count

The first filter returns a single result and the second a whole list.

Combined they would return a single volume object BUT with a twist:

An additional field holding the number of luns inside.

So if that variable is called Vol2 you can (and will) reference Vol2.lun_count

and have the current number of luns in it.

Do note that only variables filled by this new finder F2 will have that extra half-hidden field!!

Hope that was clear enough and gave you an idea how to proceed.

Best,

Yaron Haimsohn

OnCloud Team

View solution in original post

2 REPLIES 2

yaronh

Ah, one of the secret caveats and the holy grail of WFA 🙂

So here's one of the best kept and least known secrets of WFA:

You can actually extend SPECIFIC objects based on information returned in the filter.

Let me explain:

Let's say you use finder F1 with the basic filter "Find Volume by key" to fill up variable Vol1 => Vol1 will have regular volume fields

Let's assume a new filter "Volume with lun count" that looks like this:

SELECT volume.name, array.ip AS 'array.ip', count(lun.id) AS lun_count

FROM storage.volume

JOIN storage.array ON volume.array_id = array.id

LEFT JOIN storage.lun ON lun.volume_id = volume.id

GROUP BY volume.id

  HAVING lun_count < ${max_luns}

That query is simple one, running on ALL the volumes in the cache, listing them,

and counting for each the numbers of luns each holds (Here under a certain maximum).

Note that the list is not bound by anything else.

Now lets create finder F2 with 2 filters:

1) Volume by key

2) Volume by lun count

The first filter returns a single result and the second a whole list.

Combined they would return a single volume object BUT with a twist:

An additional field holding the number of luns inside.

So if that variable is called Vol2 you can (and will) reference Vol2.lun_count

and have the current number of luns in it.

Do note that only variables filled by this new finder F2 will have that extra half-hidden field!!

Hope that was clear enough and gave you an idea how to proceed.

Best,

Yaron Haimsohn

OnCloud Team

View solution in original post

solal

Haimsohn,

As always - a pleasure!!

Thanks.

Soli.

Announcements
NetApp on Discord Image

We're on Discord, are you?

Live Chat, Watch Parties, and More!

Explore Banner

Meet Explore, NetApp’s digital sales platform

Engage digitally throughout the sales process, from product discovery to configuration, and handle all your post-purchase needs.

NetApp Insights to Action
I2A Banner
Public