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

sql db & sql iaas / concepts + demos init guide #53

Open
wants to merge 15 commits into
base: main
Choose a base branch
from
Open
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
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Costa Rica
[![GitHub](https://img.shields.io/badge/--181717?logo=github&logoColor=ffffff)](https://github.com/)
[brown9804](https://github.com/brown9804)

Last updated: 2024-11-19
Last updated: 2024-12-12

----------

Expand Down Expand Up @@ -145,4 +145,4 @@ Last updated: 2024-11-19
<div align="center">
<h3 style="color: #4CAF50;">Total Visitors</h3>
<img src="https://profile-counter.glitch.me/brown9804/count.svg" alt="Visitor Count" style="border: 2px solid #4CAF50; border-radius: 5px; padding: 5px;"/>
</div>
</div>
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
# Azure SQL Database Services
# Azure SQL Database Service Tiers (Compute + Storage)

Costa Rica

[![GitHub](https://badgen.net/badge/icon/github?icon=github&label)](https://github.com)
[![GitHub](https://img.shields.io/badge/--181717?logo=github&logoColor=ffffff)](https://github.com/)
[brown9804](https://github.com/brown9804)

Last updated: 2024-11-19
Last updated: 2024-12-12

----------

## Wiki

<details>
<summary><b>Table of Contents</b> (Click to expand)</summary>
<summary><b>Table of Wiki </b> (Click to expand)</summary>

- [How to manage a Hyperscale database - Azure SQL Database](https://learn.microsoft.com/en-us/azure/azure-sql/database/manage-hyperscale-database?view=azuresql)
- [Create a Hyperscale database - Azure SQL Database](https://learn.microsoft.com/en-us/azure/azure-sql/database/hyperscale-database-create-quickstart?view=azuresql)
Expand All @@ -26,11 +26,30 @@ Last updated: 2024-11-19

</details>

## Content

<details>
<summary><b>Table of Content </b> (Click to expand)</summary>

- [Wiki](#wiki)
- [Content](#content)
- [Overview](#overview)
- [SQL Database Hyperscale - Storage](#sql-database-hyperscale---storage)
- [SQL DB Single Hyp-Storage](#sql-db-single-hyp-storage)
- [SQL DB S0/S1/B Gen5 - Comp Gen5](#sql-db-s0s1b-gen5---comp-gen5)
- [SQL DB S0/S1/B Pool Hyp - Comp Gen5](#sql-db-s0s1b-pool-hyp---comp-gen5)
- [SQL DB Single/Elastic Pool Gen Pur-Compute G5](#sql-db-singleelastic-pool-gen-pur-compute-g5)
- [SQL DB Single/Elastic Pool GP-SQL Licen](#sql-db-singleelastic-pool-gp-sql-licen)
- [SQL DB Single/Elastic Pool Purc-PurcStorage](#sql-db-singleelastic-pool-purc-purcstorage)
- [SQL Database S0/S1/B Pool PITR Backup Storage](#sql-database-s0s1b-pool-pitr-backup-storage)

</details>

## Overview

| Service | Meaning | Configuration | Charging |
|---------|---------|---------------|----------|
| **SQL Database Hyperscale - Storage** | This service is for storing data in a Hyperscale SQL database, which supports up to 100 TB of data and provides high throughput and performance. | Configure through Azure portal, Azure CLI, PowerShell, or REST API. Storage is automatically allocated between 10 GB and 100 TB, growing in 10 GB increments as needed. | Charged based on the actual storage allocation. Cost is calculated per GB of storage used. |
| [SQL Database Hyperscale - Storage](#sql-database-hyperscale---storage) | This service is for storing data in a Hyperscale SQL database, which supports up to 100 TB of data and provides high throughput and performance. | Configure through Azure portal, Azure CLI, PowerShell, or REST API. Storage is automatically allocated between 10 GB and 100 TB, growing in 10 GB increments as needed. | Charged based on the actual storage allocation. Cost is calculated per GB of storage used. |
| **SQL DB Single/Elastic Pool Gen Pur-Compute G5** | Offers computing resources (vCores) for single databases or elastic pools in the General Purpose tier using Gen5 hardware. | Configure the compute resources through the Azure portal, specifying the number of vCores required. | Charges are based on the vCores used and the duration of usage. |
| **SQL DB Single Hyp-Storage** | This is for Hyperscale data storage but specifically for single databases. | Similar to the Hyperscale storage, configure via Azure portal, CLI, PowerShell, or REST API. | Charges are based on the storage used, dynamically allocated between 10 GB and 100 TB. |
| **SQL DB S0/S1/B Gen5 - Comp Gen5** | Provides computing resources (vCores) for SQL databases in the S0, S1, and Basic tiers using Gen5 hardware. | Scale compute resources by selecting the number of vCores needed through the Azure portal or other management tools. | Charges are based on the number of vCores and the duration they are used. |
Expand All @@ -39,6 +58,13 @@ Last updated: 2024-11-19
| **SQL DB Single/Elastic Pool Purc-PurcStorage** | For storing data in the General Purpose tier for single databases or elastic pools. | Storage is configured automatically based on your database or pool settings. | Charges are based on the amount of data stored. |
| **SQL Database S0/S1/B Pool PITR Backup Storage** | For backup storage using RA-GRS (Read-Access Geo-Redundant Storage) for databases in the S0, S1, and Basic tiers. | Backup settings can be configured through the Azure portal, including retention policies and redundancy options. | Charges are based on the amount of backup storage used. |

> [!NOTE]
> After deploying, viewing and managing: <br/>
> - Navigate to your SQL Database in the Azure portal. <br/>
> - Under `Settings`, select `Compute + storage` to view and manage your Hyperscale configuration.

<img width="550" alt="image" src="https://github.com/user-attachments/assets/5d63cb2f-b9fc-4af9-8877-48a584454198">

### SQL Database Hyperscale - Storage
> Configuration Steps:
1. **Navigate to Azure Portal**: Go to Azure Portal.
Expand All @@ -49,11 +75,12 @@ Last updated: 2024-11-19
- Under `Compute + storage`, click `Configure database`.
- Select `Hyperscale` from the `Service tier` dropdown.
- Configure the `vCores` and `Storage size` as needed.
4. **Review and Create**: Click `Review + create` and then `Create`.

> Viewing and Managing:
- Navigate to your SQL Database in the Azure portal.
- Under `Settings`, select `Compute + storage` to view and manage your Hyperscale configuration.
<img width="550" alt="image" src="https://github.com/user-attachments/assets/28526181-63bc-4ab9-9872-ba920d1117a3">

<img width="550" alt="image" src="https://github.com/user-attachments/assets/3dce04f2-0db6-4458-b1c4-ca03fbd7be51">

4. **Review and Create**: Click `Review + create` and then `Create`.

### SQL DB Single Hyp-Storage
> Configuration Steps:
Expand Down Expand Up @@ -170,4 +197,4 @@ Last updated: 2024-11-19
<div align="center">
<h3 style="color: #4CAF50;">Total Visitors</h3>
<img src="https://profile-counter.glitch.me/brown9804/count.svg" alt="Visitor Count" style="border: 2px solid #4CAF50; border-radius: 5px; padding: 5px;"/>
</div>
</div>
Original file line number Diff line number Diff line change
Expand Up @@ -5,11 +5,11 @@ Costa Rica
[![GitHub](https://img.shields.io/badge/--181717?logo=github&logoColor=ffffff)](https://github.com/)
[brown9804](https://github.com/brown9804)

Last updated: 2024-11-26
Last updated: 2024-12-12

----------

> $${\color{red}Same\ geo\ but\ across\ region}$$ The `multi-geography setup` in Microsoft Fabric allows you to deploy content to data centers in regions other than the home region of your Fabric tenant. This feature is particularly useful for multinational customers who need to address regional, industry-specific, or organizational data residency requirements.` In your example, if you have the US as the geography with Central US and West US 2 as regions, you can set up a Fabric capacity reservation in one of these regions. Once a capacity is created, it remains in that region, and any workspaces created under it will have their content stored in that regio`n. This approach ensures that `you don't need to move the home region`, which can simplify management and compliance. CLick [here for more information about it](https://learn.microsoft.com/en-us/fabric/admin/service-admin-premium-multi-geo?tabs=power-bi-premium)
> $${\color{red}Same\ geo\ but\ across\ region}$$ The `multi-geography setup` in Microsoft Fabric allows you to deploy content to data centers in regions other than the home region of your Fabric tenant. This feature is particularly useful for multinational customers who need to address regional, industry-specific, or organizational data residency requirements.` In your example, if you have the US as the geography with Central US and West US 2 as regions, you can set up a Fabric capacity reservation in one of these regions. Once a capacity is created, it remains in that region, and any workspaces created under it will have their content stored in that region`. This approach ensures that `you don't need to move the home region`, which can simplify management and compliance. CLick [here for more information about it](https://learn.microsoft.com/en-us/fabric/admin/service-admin-premium-multi-geo?tabs=power-bi-premium)

## Wiki

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ Costa Rica
[![GitHub](https://img.shields.io/badge/--181717?logo=github&logoColor=ffffff)](https://github.com/)
[brown9804](https://github.com/brown9804)

Last updated: 2024-11-19
Last updated: 2024-12-12

----------

Expand Down Expand Up @@ -155,4 +155,4 @@ Setting up a self-hosted macOS agent involves a few more steps but gives you mor
<div align="center">
<h3 style="color: #4CAF50;">Total Visitors</h3>
<img src="https://profile-counter.glitch.me/brown9804/count.svg" alt="Visitor Count" style="border: 2px solid #4CAF50; border-radius: 5px; padding: 5px;"/>
</div>
</div>
59 changes: 37 additions & 22 deletions 0_Azure/5_DataProtectionMng/3_CustomRole/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,10 +6,14 @@ Costa Rica
[![GitHub](https://img.shields.io/badge/--181717?logo=github&logoColor=ffffff)](https://github.com/)
[brown9804](https://github.com/brown9804)

Last updated: 2024-11-28
Last updated: 2024-12-12

----------

> [!NOTE]
> This example is around how to grant access to a subscription using a custom role.


> Custom roles in Azure are a powerful feature of Azure Role-Based Access Control (RBAC) that allow you to create roles tailored to the specific needs of your organization

> E.g., Imagine you have a team of developers who need to manage virtual machines but should not have access to billing information. You can create a custom role that includes permissions to start, stop, and restart virtual machines but excludes any billing-related actions.
Expand All @@ -18,7 +22,7 @@ Last updated: 2024-11-28
## Wiki

<details>
<summary><b>Table of Contents</b> (Click to expand)</summary>
<summary><b>Table of Wiki</b> (Click to expand)</summary>

- [Install Azure CLI on Windows](https://learn.microsoft.com/en-us/cli/azure/install-azure-cli-windows?tabs=azure-cli)
- [Tutorial: Create an Azure custom role using Azure CLI](https://learn.microsoft.com/en-us/azure/role-based-access-control/tutorial-custom-role-cli)
Expand Down Expand Up @@ -59,13 +63,12 @@ Custom roles can be created using various methods:
| **Azure PowerShell**| Another scripting tool for creating and managing roles. |
| **REST API** | For programmatic access and integration with other systems. |


> [!IMPORTANT]
> Please ensure you log in to the admin account, as you need admin permissions to set up the custom role.

1. Sign in to Azure CLI: `az login`

<img width="550" alt="image" src="https://github.com/user-attachments/assets/83ec82fe-dea2-494e-8937-69f0cdf281b3">
<img width="550" alt="image" src="https://github.com/user-attachments/assets/83ec82fe-dea2-494e-8937-69f0cdf281b3">

- Click on `Enter`, the `highlighted` configuration is the one assigned to the account.

Expand Down Expand Up @@ -141,34 +144,46 @@ Custom roles can be created using various methods:

3. Create the custom role: Use the following command to create the role using the JSON file.

```powershell
az role definition create --role-definition {file-name}.json
```
```powershell
az role definition create --role-definition {file-name}.json
```

In this example:

```powershell
az role definition create --role-definition custom_role.json
```

In this example:

```powershell
az role definition create --role-definition custom_role.json
```

<img width="550" alt="image" src="https://github.com/user-attachments/assets/c4a3a705-b363-41cb-ac30-71a5c2ad7135">
<img width="550" alt="image" src="https://github.com/user-attachments/assets/c4a3a705-b363-41cb-ac30-71a5c2ad7135">

4. Verify the custom role: List your custom roles to ensure it was created successfully.

```powershell
az role definition list --custom-role-only true
```
```powershell
az role definition list --custom-role-only true
```

<img width="550" alt="image" src="https://github.com/user-attachments/assets/5449b403-4d1b-4bdb-9ff9-c1bfd406c6d0">
<img width="550" alt="image" src="https://github.com/user-attachments/assets/5449b403-4d1b-4bdb-9ff9-c1bfd406c6d0">

5. Validate the creation of your role. Depending on the assigned actions, you will see the role under either the pricegeled tab or the job function tab. Click on `view` to see detailed information about the actions included in the role.

<img width="550" alt="image" src="https://github.com/user-attachments/assets/cb8672c3-668d-4118-a703-91ce9886149b">
<img width="550" alt="image" src="https://github.com/user-attachments/assets/cb8672c3-668d-4118-a703-91ce9886149b">

6. Assign the custom role to the necessary users. Navigate to `Access control (IAM)`, click on `+ Add`, and select `Add role assignment`:

<img width="600" alt="image" src="https://github.com/user-attachments/assets/3da6fd4a-f968-45ad-b285-dc834846cc0a">
<img width="600" alt="image" src="https://github.com/user-attachments/assets/3da6fd4a-f968-45ad-b285-dc834846cc0a">

- Search for the role name in either the `Job Function Roles` or `Privileged Administrator Roles` tabs. Select the role, click on `+ Select members`, add the required members, and finally click on `Review + assign`:
- Search for the role name in either the `Job Function Roles` or `Privileged Administrator Roles` tabs. Select the role, click on `+ Select members`, add the required members, and finally click on `Review + assign`:

<img width="550" alt="image" src="https://github.com/user-attachments/assets/10a5b8d3-8ff0-49eb-aaa6-a3271e1baa0c">
<img width="550" alt="image" src="https://github.com/user-attachments/assets/10a5b8d3-8ff0-49eb-aaa6-a3271e1baa0c">

7. Once you assign the role, the new member will receive an email similar to this:

<img width="550" alt="image" src="https://github.com/user-attachments/assets/f12a6a14-9dcc-4ba6-81ee-5e5831f51d07">

8. If the subscription is not visible, select `Advanced options`, then `View eligible subscriptions`, and finally, click `Activate` the role. You should now be able to see the subscription.

<img width="700" alt="image" src="https://github.com/user-attachments/assets/57313333-bf36-421b-87f4-da135a06aaed">

<img width="325" alt="image" src="https://github.com/user-attachments/assets/7390ba6d-8273-4a27-ba04-1b04876e1520">

<img width="330" alt="image" src="https://github.com/user-attachments/assets/c7d0cced-2802-4c01-8c1e-53f774eff321">