From 738e3b4e454d8ceecab59b3729110c9a9ca1e9ff Mon Sep 17 00:00:00 2001 From: Xavier Pillons Date: Fri, 9 Feb 2024 13:05:49 +0100 Subject: [PATCH] remove robinhood (#1828) --- README.md | 1 - bicep/azhop.bicep | 2 +- config.schema.json | 1 - config.tpl.yml | 1 - docs/apps/index.md | 1 - docs/deploy/index.md | 1 - docs/index.md | 1 - .../Implementing_Azure_HPC_OnDemand_Platform.md | 2 +- docs/tutorials/marketplace_deployment.md | 1 - docs/user_guide/index.md | 1 - docs/user_guide/robinhood.md | 5 ----- .../grafana/templates/azhop_infra_servers.json.j2 | 12 +----------- tests/configs/config_full.yml | 1 - tf/variables_local.tf | 2 -- tutorials/quickstart/build.yml | 1 - 15 files changed, 3 insertions(+), 30 deletions(-) delete mode 100644 docs/user_guide/robinhood.md diff --git a/README.md b/README.md index 058cb306b..4be048d05 100644 --- a/README.md +++ b/README.md @@ -8,7 +8,6 @@ Azure HPC On-Demand Platform (az-hop), provides the end-to-end deployment mechan - Dynamic resources provisioning and autoscaling is done by [Azure CycleCloud](https://docs.microsoft.com/en-us/azure/cyclecloud/?view=cyclecloud-8) pre-configured job queues and integrated health-checks to quickly avoid non-optimal nodes, - A Jumpbox to provide admin access, - A common shared file system for home directory and applications is delivered by [Azure Netapp Files](https://azure.microsoft.com/en-us/services/netapp/), -- A Lustre parallel filesystem using local NVME for high performance that automatically archives to [Azure Blob Storage](https://azure.microsoft.com/en-gb/services/storage/blobs/) using the [Robinhood Policy Engine](https://github.com/cea-hpc/robinhood) and [Azure Storage data mover](https://github.com/wastore/lemur), - [Grafana](https://grafana.com/) dashboards to monitor your cluster, - Remote Visualization with [noVNC](https://novnc.com/info.html) and GPU acceleration with [VirtualGL](https://www.virtualgl.org/). diff --git a/bicep/azhop.bicep b/bicep/azhop.bicep index 91ea3a6c7..2d0633c07 100644 --- a/bicep/azhop.bicep +++ b/bicep/azhop.bicep @@ -402,7 +402,7 @@ var config = { } : {} ) - asg_names: union([ 'asg-ssh', 'asg-rdp', 'asg-jumpbox', 'asg-ad', 'asg-ad-client', 'asg-pbs', 'asg-pbs-client', 'asg-cyclecloud', 'asg-cyclecloud-client', 'asg-nfs-client', 'asg-telegraf', 'asg-robinhood', 'asg-ondemand', 'asg-deployer', 'asg-mariadb-client' ], + asg_names: union([ 'asg-ssh', 'asg-rdp', 'asg-jumpbox', 'asg-ad', 'asg-ad-client', 'asg-pbs', 'asg-pbs-client', 'asg-cyclecloud', 'asg-cyclecloud-client', 'asg-nfs-client', 'asg-telegraf', 'asg-ondemand', 'asg-deployer', 'asg-mariadb-client' ], deployLustre ? [ 'asg-lustre-client' ] : [], deployGrafana ? [ 'asg-grafana' ] : [] ) diff --git a/config.schema.json b/config.schema.json index 13c982359..f9a56e558 100644 --- a/config.schema.json +++ b/config.schema.json @@ -883,7 +883,6 @@ "asg-nfs-client": { "type": "string" }, "asg-telegraf": { "type": "string" }, "asg-grafana": { "type": "string" }, - "asg-robinhood": { "type": "string" }, "asg-ondemand": { "type": "string" }, "asg-deployer": { "type": "string" }, "asg-mariadb-client": { "type": "string" } diff --git a/config.tpl.yml b/config.tpl.yml index 43ea47ffb..69e0adf72 100644 --- a/config.tpl.yml +++ b/config.tpl.yml @@ -160,7 +160,6 @@ network: # asg-nfs-client: asg-nfs-client # asg-telegraf: asg-telegraf # asg-grafana: asg-grafana -# asg-robinhood: asg-robinhood # asg-ondemand: asg-ondemand # asg-deployer: asg-deployer # asg-mariadb-client: asg-mariadb-client diff --git a/docs/apps/index.md b/docs/apps/index.md index 6be9f5346..421d895d2 100644 --- a/docs/apps/index.md +++ b/docs/apps/index.md @@ -43,7 +43,6 @@ There are actually 9 application folder under the ood-applications ansible role - [bc_vmd](#visual-molecular-dynamics) : A Visual Molecular Dynamics launcher running as a Linux Remote Desktop session - cyclecloud : A python passenger application to launch the Cycle Cloud Web UI - grafana : A python passenger application to launch the Grafana Web UI -- robinhood : A python passenger application to launch the Robinhood Web UI The specific bc_* pattern comes from Open OnDemand and means that the Batch Connect feature is used. This provides form design, job scheduler integration, remote desktop integration, session management and more. To add a new Interactive Application named `foo` follow these steps : diff --git a/docs/deploy/index.md b/docs/deploy/index.md index 41b6e4923..435a4640a 100644 --- a/docs/deploy/index.md +++ b/docs/deploy/index.md @@ -790,7 +790,6 @@ network: ``` ### Pre-requisities for using an existing VNET - There is a need of a minimum of 5 IP addresses for the infrastructure VMs -- Allow enough IP addresses for the Lustre cluster, default being 4 : Robinhood + Lustre + 2*OSS - Delegate a subnet to Azure NetApp Files like documented [here](https://docs.microsoft.com/en-us/azure/azure-netapp-files/azure-netapp-files-delegate-subnet) - Look at the `tf/network_security_group.tf` and `tf/variables_local.tf` to get the list of all ports and rules define between subnets diff --git a/docs/index.md b/docs/index.md index 3338e5e93..60553962d 100644 --- a/docs/index.md +++ b/docs/index.md @@ -7,7 +7,6 @@ Azure HPC OnDemand Platform or **azhop**, delivers an end-2-end deployment mecha - [Azure Cycle Cloud](https://docs.microsoft.com/en-us/azure/cyclecloud/?view=cyclecloud-8) to handle autoscaling of nodes thru job scheduler integration, - A Jumpbox to provide admin access, - Azure Netapp Files for home directory and data storage, -- A Lustre cluster for the scratch storage with HSM capbilities to Azure Blobs thru a [RobinHood](https://github.com/cea-hpc/robinhood) integration, - [Grafana](https://grafana.com/) dashboards to monitor your cluster diff --git a/docs/tutorials/Implementing_Azure_HPC_OnDemand_Platform.md b/docs/tutorials/Implementing_Azure_HPC_OnDemand_Platform.md index e4705cdfb..33605ccee 100644 --- a/docs/tutorials/Implementing_Azure_HPC_OnDemand_Platform.md +++ b/docs/tutorials/Implementing_Azure_HPC_OnDemand_Platform.md @@ -467,7 +467,7 @@ In this exercise, you'll install and configure software components that form the 1. In the **Monitoring** menu, select **Azure CycleCloud**. 1. When presented with the page titled **App has not been initialized or does not exist**, select **Initialize App**. - > Note: This prompt reflects the OnDemand component architecture, which the Azure HPC OnDemand Platform solution relies on to implement its portal. The shared frontend creates Per User NGINX (PUN) processes to provide connectivity to such components as **Azure CycleCloud**, **Grafana**, or **Robinhood Dashboard**. + > Note: This prompt reflects the OnDemand component architecture, which the Azure HPC OnDemand Platform solution relies on to implement its portal. The shared frontend creates Per User NGINX (PUN) processes to provide connectivity to such components as **Azure CycleCloud** or **Grafana**. 1. On the **Azure CycleCloud for Azure HPC On-Demand Platform** page, note the presence of a configuration of a cluster named **pbs1**. 1. On the **pbs1** page, select the **Arrays** tab, and note that it contains six entries representing queue definitions you reviewed earlier in the **config.yml** file. diff --git a/docs/tutorials/marketplace_deployment.md b/docs/tutorials/marketplace_deployment.md index 498a32b80..9f611e126 100644 --- a/docs/tutorials/marketplace_deployment.md +++ b/docs/tutorials/marketplace_deployment.md @@ -28,7 +28,6 @@ This tutorial with create the following resources. - [Azure CycleCloud](https://learn.microsoft.com/en-us/azure/cyclecloud/?view=cyclecloud-8&WT.mc_id=Portal-Microsoft_Azure_Marketplace) to handle autoscaling of nodes thru job scheduler integration, - A Jumpbox to provide admin access, - Azure Netapp Files for home directory and data storage, -- A Lustre cluster for the scratch storage with HSM capabilities to Azure Blobs thru a [Robinhood](https://github.com/cea-hpc/robinhood) integration, - [Grafana](https://grafana.com/) dashboards to monitor your cluster. # Deployment steps diff --git a/docs/user_guide/index.md b/docs/user_guide/index.md index f123830e8..fd934ec30 100644 --- a/docs/user_guide/index.md +++ b/docs/user_guide/index.md @@ -11,4 +11,3 @@ - Monitoring - [CycleCloud](cycle_cloud.md) - [Grafana Dashboards](grafana.md) - - [Lustre HSM monitoring](robinhood.md) diff --git a/docs/user_guide/robinhood.md b/docs/user_guide/robinhood.md deleted file mode 100644 index d5c3c2944..000000000 --- a/docs/user_guide/robinhood.md +++ /dev/null @@ -1,5 +0,0 @@ -# Monitoring Lustre HSM - -Compute nodes and Remote Desktop have a `/lustre` mount. Files there are automatically archived in blobs if untouched since 30min, and are automatically restored upon access. - -Monitoring the Lustre system can be done thru the **Monitoring / Robinhood Dashboard** menu. diff --git a/playbooks/roles/grafana/templates/azhop_infra_servers.json.j2 b/playbooks/roles/grafana/templates/azhop_infra_servers.json.j2 index 68c80274a..d67fa44c5 100644 --- a/playbooks/roles/grafana/templates/azhop_infra_servers.json.j2 +++ b/playbooks/roles/grafana/templates/azhop_infra_servers.json.j2 @@ -4079,23 +4079,13 @@ "text": "{{ccportal_name}}", "value": "{{ccportal_name}}" }, - { - "selected": false, - "text": "robinhood", - "value": "robinhood" - }, { "selected": false, "text": "{{grafana_name}}", "value": "{{grafana_name}}" - }, - { - "selected": false, - "text": "guacamole", - "value": "guacamole" } ], - "query": "{{scheduler_name}}, {{ondemand_name}}, {{ccportal_name}}, robinhood, {{grafana_name}}", + "query": "{{scheduler_name}}, {{ondemand_name}}, {{ccportal_name}}, {{grafana_name}}", "queryValue": "", "skipUrlSync": false, "type": "custom" diff --git a/tests/configs/config_full.yml b/tests/configs/config_full.yml index 4887af2fd..2401d2963 100644 --- a/tests/configs/config_full.yml +++ b/tests/configs/config_full.yml @@ -130,7 +130,6 @@ network: asg-nfs-client: asg-nfs-client asg-telegraf: asg-telegraf asg-grafana: asg-grafana - asg-robinhood: asg-robinhood asg-ondemand: asg-ondemand asg-deployer: asg-deployer asg-mariadb-client: asg-mariadb-client diff --git a/tf/variables_local.tf b/tf/variables_local.tf index a1ef6098d..ffec2b66c 100644 --- a/tf/variables_local.tf +++ b/tf/variables_local.tf @@ -304,7 +304,6 @@ locals { asg-nfs-client = "asg-nfs-client" asg-telegraf = "asg-telegraf" asg-grafana = "asg-grafana" - asg-robinhood = "asg-robinhood" asg-ondemand = "asg-ondemand" asg-deployer = "asg-deployer" asg-mariadb-client = "asg-mariadb-client" @@ -323,7 +322,6 @@ locals { grafana = ["asg-ssh", "asg-grafana", "asg-ad-client", "asg-telegraf", "asg-nfs-client"] jumpbox = ["asg-ssh", "asg-jumpbox", "asg-ad-client", "asg-telegraf", "asg-nfs-client"] ondemand = ["asg-ssh", "asg-ondemand", "asg-ad-client", "asg-nfs-client", "asg-pbs-client", "asg-lustre-client", "asg-telegraf", "asg-cyclecloud-client", "asg-mariadb-client"] - robinhood = ["asg-ssh", "asg-robinhood", "asg-lustre-client", "asg-telegraf"] scheduler = ["asg-ssh", "asg-pbs", "asg-ad-client", "asg-cyclecloud-client", "asg-nfs-client", "asg-telegraf", "asg-mariadb-client"] } diff --git a/tutorials/quickstart/build.yml b/tutorials/quickstart/build.yml index 577080f27..24517c5e8 100644 --- a/tutorials/quickstart/build.yml +++ b/tutorials/quickstart/build.yml @@ -224,7 +224,6 @@ _nsg_rules: AllowLustreIn : ['409', 'Inbound', 'Allow', 'Tcp', 'Lustre', 'asg/asg-lustre', 'asg/asg-lustre-client'] AllowLustreClientIn : ['410', 'Inbound', 'Allow', 'Tcp', 'Lustre', 'asg/asg-lustre-client', 'asg/asg-lustre'] AllowLustreClientComputeIn : ['420', 'Inbound', 'Allow', 'Tcp', 'Lustre', 'subnet/compute', 'asg/asg-lustre'] - AllowRobinhoodIn : ['430', 'Inbound', 'Allow', 'Tcp', 'Web', 'asg/asg-ondemand', 'asg/asg-robinhood'] # CycleCloud AllowCycleWebIn : ['440', 'Inbound', 'Allow', 'Tcp', 'Web', 'asg/asg-ondemand', 'asg/asg-cyclecloud']