Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Use smaller disks by default for tests on Azure #272

Merged
merged 1 commit into from
Sep 12, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 4 additions & 4 deletions terraform/azure/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -177,7 +177,7 @@ After describing the physical disks, the logical volumes can be specified using
| --------- | --- | --- | --- | --- | --- |
| **names** | data | log | shared | usrsap | backup |
| **luns** | 0,1 | 2,3 | 4 | 5 | 6 |
| **lv_sizes** | 100 | 100 | 1000 | 100 | 100 |
| **lv_sizes** | 100 | 100 | 100 | 100 | 100 |
| **paths** | /hana/data | /hana/log | /hana/shared | /usr/sap | /hana/backup |

As you see, there are 5 volume groups specified. Each volume group has its own name. It is set with parameter `names`. The parameter `luns` assigns one LUN or a combination of several LUNs to a volume group. In the example above `data` uses disk with LUN **0** and **1**, but `backup` only uses disk with LUN **6**. A LUN can only be assigned to one volume group.
Expand Down Expand Up @@ -206,7 +206,7 @@ The **Demo** and **Small** sizes are targeted for non-production systems. The **

| | /hana/data | /hana/log | /hana/shared | /usr/sap | /hana/backup |
| -------- | ---------- | --------- | ------------ | -------- | ------------ |
| **Demo** | 2x128GB LUN 0,1 | 2x128GB LUN 2,3 | 128GB LUN 4 | 128GB LUN 5 | 128GB LUN 6 |
| **Demo** | 2x32GB LUN 0,1 | 2x16GB LUN 2,3 | 32GB LUN 4 | 64GB LUN 5 | 32GB LUN 6 |
| **Small** | 3x512GB LUN 0,1,2 | ← shared with data | 512GB LUN 3 | 64GB LUN 4 | 1024GB LUN 5 |
| **Medium** | 4x512GB LUN 0,1,2,3 | 2x512GB ¹ LUN 4,5 | 1024GB LUN 6 | 64GB LUN 7 | 2x1024GB LUN 8,9 |
| **Large** | 3x1024GB LUN 0,1,2 | 2x512GB ¹ LUN 3,4 | 1024GB LUN 5 | 64GB LUN 6 | 2x2048GB LUN 7,8 |
Expand All @@ -221,10 +221,10 @@ hana_vm_size = "Standard_E4s_v3"
hana_enable_accelerated_networking = false
hana_data_disks_configuration = {
disks_type = "Premium_LRS,Premium_LRS,Premium_LRS,Premium_LRS,Premium_LRS,Premium_LRS,Premium_LRS"
disks_size = "128,128,128,128,128,128,128"
disks_size = "32,32,16,16,32,64,32"
caching = "None,None,None,None,None,None,None"
writeaccelerator = "false,false,false,false,false,false,false"
luns = "0,1#2,3#4#5#6#7"
luns = "0,1#2,3#4#5#6"
names = "data#log#shared#usrsap#backup"
lv_sizes = "100#100#100#100#100"
paths = "/hana/data#/hana/log#/hana/shared#/usr/sap#/hana/backup"
Expand Down
4 changes: 2 additions & 2 deletions terraform/azure/variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -194,7 +194,7 @@ variable "sles4sap_uri" {
}

# For reference:
# Standard_M32ls has 32 VCPU, 256GiB RAM, 1000 GiB SSD
# Standard_E4s_v3 has 4 VCPU, 32GiB RAM, 64 GiB SSD
# You could find other supported instances in Azure documentation
variable "hana_vm_size" {
description = "VM size for the hana machine"
Expand All @@ -212,7 +212,7 @@ variable "hana_data_disks_configuration" {
type = map(any)
default = {
disks_type = "Premium_LRS,Premium_LRS,Premium_LRS,Premium_LRS,Premium_LRS,Premium_LRS,Premium_LRS"
disks_size = "128,128,128,128,128,128,128"
disks_size = "32,32,16,16,32,64,32"
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Maybe we can add a comment in the code to say something like

This default is aligned to default for hana_vm_size

We can also update comment in line 197 to talk about Standard_E4s_v3 and not Standard_M32ls

Copy link
Collaborator

@mpagot mpagot Sep 11, 2024

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Each value now is using a different number: does it make sense to document why and which disk has which size? Where we should do it? Here in this file or in the readme?

There's an explanation here

its data storage `/hana/data`, `/hana/log`, `/hana/shared`, `/usr/sap` and `/hana/backup`.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think those disks sizes are not finalized. I'll collect some data about cost saving with this commit. Then there shall be a follow up ticket to optimize the disk sizes further. Then we can add definitive documentation about disk sizes.

caching = "None,None,None,None,None,None,None"
writeaccelerator = "false,false,false,false,false,false,false"
# The next variables are used during the provisioning
Expand Down
Loading