Tag Archives: microsoft
Setting up Azure API on Postman and Azure CLI – Step-by-step guide
Setting up Azure API on Postman and Azure CLI – Step-by-step guide
Dive into the World of Azure APIs on Postman – Step-by-Step Guide by Suzaril Shah
Hello tech enthusiasts! I’m Suzaril Shah, a Gold Microsoft Learn Student Ambassador, here to guide you through the exciting process of setting up Azure API on Postman and Azure CLI. Whether you’re a student or a seasoned developer, our comprehensive guide is designed to enhance your skills in managing Azure resources effectively.
What You’ll Learn:
Efficient Setup: Begin with the basics as we walk you through the Azure CLI setup and login process, crucial for interacting with Azure from your command line.
Hands-On Experience: Create and configure your Azure service principal credentials and dive into real-world API testing scenarios using Postman.
Practical Insights: Gain practical insights on how to leverage Azure APIs for managing resources, understanding CLI toolsets (Azure, Azure Developer, GitHub CLI’s), and much more.
Join us to not only enhance your technical skills but also to prepare yourself for a future in cloud services and infrastructure management. Let’s explore the vast capabilities of Azure together! In this step-by-step guide, I will guide you through setting up Azure API on Postman and Azure CLI.
Prerequisites:
Postman Client
Azure CLI
Azure subscription
If you don’t already have one, you can sign up for an Azure free account.
For Students, you can use the free Azure for Students offer which doesn’t require a credit card only your school email.
Step 1 – Getting Started
On Azure CLI, run the “az login” command. You will be redirected to log in to your Azure account in a web browser, and upon successful login, you will be presented with your account detail, as shown below. Please take note of the “id” variable, as we need them later. The ‘id’ variable is our subscription ID on Azure.
Select the subscription for the Azure Account using the az account set command. Use the -n parameter to specify the subscription name, i.e: az account set -n “MSDN Platforms Subscription”
After that, create a resource group using CLI using the command “az group create –location [Azure Location, i.e: westus] –resource-group [Resource Group]”
Next, create a service principal credential on Azure using this command:
az ad sp create-for-rbac -n [SP_Name] –role Owner –scope “/subscriptions/[Subscription_ID]/resourceGroups/[ Resource Group]”
The output should look like this:
This command will provide the credentials we need to work on Postman to test some Azure API:
AppID
displayname
Password
Tenant
Copy the credentials to somewhere safe. Please do not expose the credentials! You can also explore other roles when creating a service principal by using the –role flag and specify the scope of the SP credentials with the –scope flag. Documentations included here.
Some built-in roles in Azure RBAC include
Owner – Total control of a Resource Group
Contributor – Has control over Actions on a Resource Group, like modifying a Resource Group (i.e. Deleting a VM) but cannot assign permission to the RG.
Reader – only has the ability to view the resource group. Learn More
Step 2 – Rocking with Postman!
Create a new Collection on your current Workspace and Click on the collection name. Under the collection name, you should find “Variables” tab. Create variables as listed below and map the values from the Service Principle and Subscription ID output from earlier.
ClientId = AppID
clientSecret = Password
tenantId = tenant
resource = https://management.azure.com/
subscriptionId = [Subscription ID]
resourceGroup = [Resource Group]
bearerToken = “leave it blank, we will programmatically fill the field later”
The configuration should look like this:
Click on “Save” and head to the Pre-request Script Tab and copy and paste the script below:
pm.test(“Check for collectionVariables”, function () {
let vars = [‘clientId’, ‘clientSecret’, ‘tenantId’, ‘subscriptionId’];
vars.forEach(function (item, index, array) {
console.log(item, index);
pm.expect(pm.collectionVariables.get(item), item + ” variable not set”).to.not.be.undefined;
pm.expect(pm.collectionVariables.get(item), item + ” variable not set”).to.not.be.empty;
});
if (!pm.collectionVariables.get(“bearerToken”) || Date.now() > new Date(pm.collectionVariables.get(“bearerTokenExpiresOn”) * 1000)) {
pm.sendRequest({
url: ‘https://login.microsoftonline.com/’ + pm.collectionVariables.get(“tenantId”) + ‘/oauth2/token’,
method: ‘POST’,
header: ‘Content-Type: application/x-www-form-urlencoded’,
body: {
mode: ‘urlencoded’,
urlencoded: [
{ key: “grant_type”, value: “client_credentials”, disabled: false },
{ key: “client_id”, value: pm.collectionVariables.get(“clientId”), disabled: false },
{ key: “client_secret”, value: pm.collectionVariables.get(“clientSecret”), disabled: false },
{ key: “resource”, value: pm.collectionVariables.get(“resource”) || “https://management.azure.com/”, disabled: false }
]
}
}, function (err, res) {
if (err) {
console.log(err);
} else {
let resJson = res.json();
pm.collectionVariables.set(“bearerTokenExpiresOn”, resJson.expires_on);
pm.collectionVariables.set(“bearerToken”, resJson.access_token);
}
});
}
});
This script will get the bearer Token use to authenticate to access Azure API and programmatically populate the token into the bearerToken variable we created earlier. Click on “Run” button to run the script. You should see the bearerToken is already generated and placed in the “Current Value” fields on the “Variable” tab.
Head to the Authorization tab, make sure to select the Authorization method to “Bearer Token”, and set the token to the variable as displayed below:
Step 3 – Testing Phase!
Right-Click on the ‘Collection’ name, and click on the “Add Request” option. Name the Request as “Get Resource Group Info”.
On the Request Type, select “GET” request, and using the variable setup on the Collection folder, type:
{{resource}}/subscriptions/{{subscriptionId}}/resourcegroups/{{resourceGroup}}?api-version=2020-09-01
This GET request will fetch information about the specified “Resource Group” on Azure. Click on the “Save” and “Send” buttons.
You should be seeing this output:
Voila! You have successfully set up Azure API authentication and performed an Azure API GET Request on Postman!
Create API Requests on the Collection.
You can explore the list of Azure API from the documentation
What’s next?
To kickstart your Azure API journey, you can find the Azure Cloud Onboarding collection on Postman that I have been working on from this postman collection.
Microsoft Tech Community – Latest Blogs –Read More
Introducing Microsoft Learn for Organizations Playbook, customizable Plans
As AI changes the way everyone works, many organizations struggle to take advantage of its transformative potential. If you’re like the learning managers and team leaders we work with, you’re facing a talent crunch and wondering where to start. Plus, our customers report that off-the-shelf training options don’t fit their business objectives or provide the flexibility that workers with busy schedules need.
As part of the solution to the talent crunch, organizations are adopting a skills-first approach to talent acquisition and development—that is, the focus shifts to an individual’s proven skills and capabilities and not just traditional qualifications like degrees and résumés. And as for training, developing technical skills is a clear imperative for any organization, but it’s only one strategy in a larger playbook.
That’s why we’re happy to announce a new playbook and innovative planning functionality that can help you chart your organization’s unique learning journey. By helping your learners build skills and earn credentials for Microsoft’s AI apps and services, Azure, and other in-demand technologies, you can help them thrive as individuals while building a culture of continuous learning that empowers your workforce to handle disruption with greater resilience and can advance your organization’s success.
Take the long view, and empower a culture of continuous learning
Your organization may be investing in reskilling and upskilling programs, custom courseware, or other learning tools. Yet the Association for Talent Development (ATD), in its 2023 State of the Industry report, points out that the average organization spent less per employee on workplace learning in 2023—and employees spent less time in training—compared to previous years. Microsoft Learn is always looking for ways to help our customers’ and partners’ learners develop and deepen technical skill sets, and we offer a wide variety of learning resources. To help with the sheer volume, the Microsoft Learn for Organizations Playbook puts these resources into perspective for you. It helps you organize your skill-building objectives so that each investment in learning, like a smart play on the field, moves you closer to the goal of building a culture of continuous learning.
The playbook helps you to get started developing and carrying out a plan that identifies and assesses skills gaps in your organization. And it provides resources to maximize your impact on the individual, team, and organization level through actions you can plan, tailor, implement, measure, and optimize. Plus, you can take advantage of Microsoft resources, such as the Microsoft Learn Assessments hub and the Microsoft Learn AI learning hub. You can also find recommendations for building and rolling out skilling plans, measuring progress, earning credentials, and sharing successes throughout the process. You can even connect with Training Services Partners.
We’re happy to make this skill-building resource available through Microsoft Learn for Organizations, which is the front door to all that Microsoft Learn has to offer learners engaged in team training.
Close skills gaps with customizable Plans on Microsoft Learn
The newly announced Plans on Microsoft Learn provide a reliable way for your organization to build and validate skills across your learning community. Plans help learners, teams, and organizations accelerate the achievement of their learning goals by using curated sets of content combined with milestones and automated nudges to keep learners focused and motivated. Plans are made up of thoughtfully created milestones of Microsoft Learn content across a wide variety of training and resources, along with the recommended number of days to complete them.
Experts who are familiar with Microsoft technology can create a custom technical Plan, targeting specific learning goals, and then can share that Plan with others. A Plan’s creator can track the progress of learners and generate reports to verify that the Plans have been completed. Learners who join the Plan can progress at their own speed or follow the recommended pace. If they’ve opted in to receive email notifications from Microsoft Learn, they get reminders that help them to stay on track and complete their Plans.
The owner of a Plan can tailor the collection of content as needed to create a curriculum that efficiently leads individuals and groups to achieve desired outcomes, such as learning how to use new technologies or to quickly get project-ready. They can even incorporate Microsoft Official Plans—curated collections created by Microsoft that help close the skills gap for common scenarios. Sharing a Plan is as easy as sharing a document, and any learner with the link can start and complete that Plan while the Plan’s owner measures progress.
Key features of Plans include:
⦁ Clear learning outcomes.
⦁ Content milestones.
⦁ Optional email reminders.
⦁ Tracking and reporting.
Plans not only help your organization build in-demand technical skills but also can accelerate individual success. For more details on Plans and the growing Plans library, along with links to helpful videos and instructions on how to create, customize, and work through Plans, read the announcement post, Introducing Plans on Microsoft Learn.
Using Plans on Microsoft Learn, you can tailor content to your learners’ needs and track their progress.
Together, the Microsoft Learn for Organizations Playbook and Plans on Microsoft Learn can help your organization address immediate skills gaps while cultivating a resilient culture of continuous learning.
Learn more
Make the most of the Microsoft Learn for Organizations Playbook.
Explore Microsoft Learn for Organizations.
Read Introducing Plans on Microsoft Learn.
Discover Plans on Microsoft Learn.
Microsoft Tech Community – Latest Blogs –Read More
Securing your API Management service from day one with Defender for APIs
Introduction
We are excited to announce that you can now secure your Azure API Management (APIM) managed APIs from day one with Defender for APIs. This allows you to enable security as soon as you create your APIM service within the Azure portal. This means that security for APIs is no longer an afterthought and API management administrators do not need to leave the Azure API Management portal experience to turn on protection for their APIs which is a critical entry point into the API attack surface.
Defender for APIs provides full lifecycle protection, detection, and response coverage. Defender for APIs includes unified visibility across your APIM Services within the Azure subscription, security insights with hardening recommendations, classification of sensitive data exposure, and continuous monitoring of APIs with machine learning and threat intelligence-based detections to alert against top OWASP API risks.
Enabling Defender for APIs from APIM instance creation experience in Azure portal
Step 1 – Create a new API Management Service
From the Azure Portal, select Create a resource. You can also select Create a resource on the Azure Home page.
On the Create a resource page, select Integration > API Management.
On the API Management services page select Create
Step 2 – Enable Defender for APIs
After filling out the information in the Basics tab, select the Monitor + secure tab. Select the Enable check box to enable the Defender for APIs plan. In order to enable the plan, you must have the proper role and permissions that can be found here.
Note: Enabling the Defender for APIs is at the Azure subscription level, and will apply to all APIM services within the Azure subscription
Step 3 – Select Pricing plan
Finally, Select Choose a plan dropdown menu to choose the correct Defender plan for your environment.
Note: For detailed information on pricing, click on View all plans to view more details on each individual plan and pricing. After selecting your desired pricing plan click Save. To estimate what is the right plan for you, please see our documentation to check your API Management Traffic analytics and use the Defender for APIs cost estimator script that will help in accurately deciding the plan costs.
After completing the rest of the setup for your API Management Service, select the Review + Install tab and select Create after you validate all information is correct. Your APIs that are onboarded to that APIM Service will now be protected with the added security of Defender for APIs!
Note: All APIs must still be onboarded manually. Any new APIs that are added to your APIM Service after this action will still need to be manually onboarded to Defender for APIs.
Conclusion and More Resources
To learn more about Defender for APIs please visit Overview of the Microsoft Defender for APIs plan – Microsoft Defender for Cloud | Microsoft Learn. To provide feedback on this article visit https://aka.ms/MDCUserVoice
Reviewers
Ajinkya Gore, Senior Product Manager – Defender for APIs
Haris Sohail, Product Manager 2 – Defender for APIs
Preetham Anand Naik, Senior Product Manager – Defender for APIs
Yuri Diogenes, Principal PM Manager – CxE Defender for Cloud
Microsoft Tech Community – Latest Blogs –Read More
A guide to Viva Connections 1st party dashboard cards
Viva Connections serves as a gateway to a modern employee experience, and dashboard cards are the building blocks of this experience. From streamlining tasks to enhancing communication, dashboard cards bring in actionable tasks and information from virtually anywhere into a single dynamic app for employees. Here’s a full list of first party dashboard cards released by Microsoft to help you boost productivity and foster a more connected and efficient work environment. If you’re new to dashboard cards or Viva Connections, we recommend you start with this overview before checking out the rest of this blog.
News card
Add the News card to the Viva Connections Dashboard to promote news from a variety of sources that you wish to prominently display, including boosted news from SharePoint. And it works with boosted news posts. If you choose any news posts that have already been boosted, they will display in the News card for the duration of the boost period.
People card
The People Search card will automatically retrieve contact information from members of your organization using Microsoft Entra ID (formerly Azure Active Directory). Users can access the People Search card to look up contact information and can jump into chat, email, or a call with the contact directly from the card view.
Events card
Surface any events from the organization on to the Viva Connections dashboard to spread awareness and increase the number of relevant audiences in the event.
Praise card
Site owners/authors of Viva Connections can add the Praise card from Microsoft Viva Insights on the dashboard, allowing employees to send praise to their colleagues. The Praise card shows the same experience as the one available within Microsoft Viva Insights today.
Learning card
The Learning card in Viva Connections serves as a convenient entryway for employees to access their assigned learning resources and training materials. It encourages continuous learning and skill development by providing personalized training content and integrating seamlessly with Viva Learning— it can even show upcoming learning deadlines.
Pulse card
The Viva Pulse card in Viva Connections allows you to create Pulse survey(s) via the dashboard, giving employees a quick and targeted way to share feedback and participate in workplace surveys. Once the survey is complete, the owner can view the response rate right on the card.
• Availability – Coming CY24Q2
Approvals card
The Approvals card allows you to create new approvals, view incoming requests, streamline requests, and access a history of previous approvals—all conveniently in one place. You can select the card type (small, medium, or large) and even target it to specific audiences by adding users or groups in the property pane.
Shifts Card
The Shifts card shows users information about their next or current shift from the Shifts app in Teams. Built with hourly and frontline workers in mind, it allows employees to clock in and clock out and track break time directly from their employee app. Note: this requires Time clock to be enabled in Teams.
Assigned Tasks Card
The Assigned Tasks card automatically displays information to users about their assigned tasks to. This information is retrieved from the Tasks app in Teams and enables users to quickly take action and accomplish tasks right from their dashboard.
Teams App card
With the Teams app card, you can create a card for an existing Teams app to drive traffic and create easy access for users. There are a variety of built-in Teams apps and integrations available to choose from.
Web link Card
Add a web link card to integrate any external websites seamlessly into your dashboard. It’s designed to provide quick access to important web resources, ensuring that relevant information is just a click away. The web link card can point to any internal or external URL, and can be a quick way to drive traffic without building or customizing a card.
Card Designer
You can choose the Card designer option to design your own card that includes a quick view, without needing to write code. The new updated card designer allows for advanced dynamic content capability including data pulls from MSGraph and SharePoint APIs.
To design your own cards, you should be familiar with JSON and Adaptive Card templates. There are also templates available to help you get started. For more information, see Adaptive Cards Templating.
Get the most out of your Viva connections dashboard
The Viva Connections dashboard cards are more than just features; they represent a shift towards a more integrated and intuitive work environment where employees can access all of the tools, info, and tasks they need to accomplish their job – all from a personalized in employee app that can be targeted and edited for different employee needs and jobs. The power of Viva Connections lies in its flexibility and user-centric design, so take the time to explore and experiment with these cards to discover the full potential of your dashboard.
Learn more about how to get started with Viva Connections with this quick video and learn more about designing your own cards with Adaptive Cards Templating.
Stay tuned as Microsoft and partners continue to build and release new cards. We’ll be sharing a follow up to this blog that highlights 3rd party and industry cards soon.
Microsoft Tech Community – Latest Blogs –Read More
Spring I/O 2024 – Join Microsoft and Broadcom to Celebrate All Things Spring and Azure!
Get ready for the ultimate Spring conference in Barcelona from May 30-31! Connect with over 1200 attendees, enjoy 70 expert speakers, and engage in 60 talks and 7 hands-on workshops. Microsoft Azure (as a Gold Sponsor) and VMware Tanzu (as a Platinum sponsor) bring you in-depth sessions on Spring and AI development, a dynamic full-day workshop, and an interactive booth experience. Learn, network, and enhance your Java skills with the latest tools and frameworks. Don’t miss out on this exciting event!
Java on Azure
We are making it easier for Java developers to use cloud technology. Java is popular for its flexibility, and with Azure, developers can work efficiently with familiar tools and frameworks. This helps them deploy and scale their applications in the cloud smoothly.
We have our own Microsoft Build of OpenJDK, reinforcing our commitment to core development and community collaboration. Over 2.5 million Java developers use Visual Studio Code. Java is widely used on platforms like GitHub and Azure OpenAI, especially for AI development. We partner with companies like Broadcom, IBM, Oracle, and Red Hat to support and promote Java in the developer community.
We offer tools for Java developers, like GitHub Copilot for code suggestions and Azure OpenAI Service for integrating advanced AI. We also provide services like Azure Spring Apps, Azure App Service, Azure Container Apps, Azure Kubernetes Service, and Azure Red Hat OpenShift to offer a complete cloud experience for Java applications, from deployment to management and scaling
What’s new with Spring applications on Azure
Savings Plan:
Starting January 1, 2024, Azure Spring Apps users can save up to 47% through an expanded Azure Savings Plan. This plan offers significant cost reductions for those committing to one or three-year terms.
Enhanced Reliability and Reduced Downtime:
Azure Spring Apps now offers a 99.95% SLA, reducing potential downtime to around 4.34 hours annually. This comprehensive assurance covers all the Azure resources used to build the service like Azure Kubernetes Service, Azure Storage, and Spring Cloud Gateway.
Increased Scalability:
The service can now support up to 1000 app instances, 8000 virtual CPUs, and 32 terabytes of memory per service instance. It also offers larger app instances with up to 8 vCPUs and 32GB of memory, plus more efficient build processes with increased resource allocation.
Bring Your Own Azure Container Registry:
Users can now bring their own Azure Container Registry (ACR), allowing seamless application deployment across different environments and regions.
Landing Zone Accelerator:
This tool helps establish secure, compliant, and scalable cloud environments for development, testing, and production within 15-30 minutes.
Extended Spring Boot Support:
Azure Spring Apps provides extended support for Spring Boot 2.x.x until August 2025, giving users more time to upgrade their applications.
Azure Migrate Support:
Azure Migrate now supports the discovery and assessment of Spring applications, making cloud transitions smoother and more efficient.
Java Native Image Support:
Support for Java native images is now available, providing faster startup times and optimized memory usage. This includes the ability to compile Java applications to standalone executables using GraalVM, benefiting from significant memory and performance improvements.
Session, Workshop and Booth Experience
At Spring I/O 2024, we’re showcasing Microsoft Azure’s commitment to the Spring community. We are offering a session filled with expert insights on using Spring and Azure together, a full-day workshop for hands-on learning with Azure for Spring Developers, and an interactive booth featuring demos, Q&A sessions, and exciting giveaways.
Making coding fun with Spring and Azure
Come see the ultimate way to combine Spring and Azure to make coding a blast! They are both amazing on their own. Put them together and you get developers who are over the moon, making cool apps that people love. However, navigating the vastness of Spring and Azure can be daunting. Learning them can be tough. Our talk is like a fast-forward button. We will show you the fastest ways to combine Spring and Azure. This means your coding is quick, your tests are smooth, your apps can grow and be intelligent (AI), and your design is solid. You will watch quick demos that highlight the top tricks for using Spring with Azure. And you will not leave empty-handed — you will get a Git repo with the best Spring plus Azure setups, straight from the experts.
Speaker(s): Adib Saikali – Broadcom / Asir Selvasingh – Microsoft
Full-day Workshop on May 29: Azure for Spring Developers
Join us for “Azure for Spring Developers”, a dynamic full-day workshop designed specifically for developers, DevOps, and operations personnel looking to leverage Azure for deploying and scaling Spring applications. This workshop will guide you through the essentials of Azure, from setting up your environment and managing applications, to deploying and monitoring Spring applications efficiently using Azure Spring Apps. Additionally, you’ll explore how to enhance your applications with AI capabilities using Azure Open AI.
The workshop is hands-on—bring your laptop and a willingness to learn. We will provide Azure Subscription, sample code, and steps to learn and experiment. By the end of the day, you will know how to effectively deploy and scale Spring projects on Azure, making use of cloud resources to build more scalable and robust applications. Whether you are new to Azure or looking to deepen your existing skills, this workshop will equip you with the practical knowledge and hands-on experience to enhance your development capabilities.
Workshop instructors: Sandra Ahlgrimm – Microsoft / Neven Cvetkovic – Broadcom / David Caron – Broadcom / Monica Calleja – Microsoft
How to register: The workshop will take place the day before the conference at Hotel Catalonia Barcelona Plaza, Plaça d’Espanya, 6-8, 08014 Barcelona. You can register for the workshop separately and do not need to pay for the conference registration. For workshop registration, please visit: https://reg.springio.net/event/afsdt
Make sure to stop by at the Microsoft Azure booth
Watch live demos, exclusive insights, and your chance to score cool swag! Fill out a survey, participate in our booth talks, and interact with Microsoft and Broadcom experts. Ask insightful questions, and you might even walk away with a pair of Microsoft earbuds!
Make sure to stop by the Microsoft Azure booth to supercharge your Spring-Azure skills, troubleshoot your toughest challenges, and discover the latest innovations.
Mark your calendars for Spring I/O 2024 in beautiful Barcelona! Don’t miss the Microsoft and Broadcom sessions, workshop, and booth – it is your chance to accelerate your Spring development experience with Microsoft Azure and VMware Tanzu. We can’t wait to connect!
Resources
Quickstart: Deploy your first application to Azure Spring Apps
Azure Spring Apps product page
Deploy to Azure Spring Apps video tutorial
Azure Spring Apps integrated with landing zones architecture guide
Microsoft Tech Community – Latest Blogs –Read More
Setting Up Slurm Cloud Bursting Using CycleCloud on Azure
Azure CycleCloud is an enterprise-friendly tool for orchestrating and managing High-Performance Computing (HPC) environments on Azure. With CycleCloud, users can provision infrastructure for HPC systems, deploy familiar HPC schedulers, and automatically scale the infrastructure to run jobs efficiently at any scale.
Slurm is a widely used open-source HPC scheduler that can manage workloads across clusters of compute nodes. Slurm can also be configured to interact with cloud resources, such as Azure CycleCloud, to dynamically add or remove nodes based on the demand of the jobs. This allows users to optimize their resource utilization and cost efficiency, as well as to access the scalability and flexibility of the cloud.
In this blog post, we are discussing how to integrate an external Slurm Scheduler to send jobs to CycleCloud for cloud bursting (Enabling on-premises workloads to be sent to the cloud for processing, known as “cloud bursting”) or hybrid HPC scenarios. For demonstration purposes, we are creating a Slurm Scheduler node in Azure as an external Slurm Scheduler in a different VNET and the execute nodes are in CycleCloud in a separate VNET. We are not discussing the complexities of networking involved in Hybrid scenarios.
Prerequisites
Before we start, we need to have the following items ready:
An Azure subscription
CycleCloud Version: 8.6.0-3223
OS version in Scheduler and execute nodes: Alma Linux release 8.7 (almalinux:almalinux-hpc:8_7-hpc-gen2:latest)
Slurm Version: 23.02.7-1
cyclecloud-slurm Project: 3.0.6
An external Slurm Scheduler node in Azure or on-premises. in this example we are using Azure VM running with Alma Linux 8.7.
A network connection between the external Slurm Scheduler node and the CycleCloud cluster. You can use Azure Virtual Network peering, VPN gateway, ExpressRoute, or other methods to establish the connection. In this example, we are using a very basic network setup.
A shared file system between the external Slurm Scheduler node and the CycleCloud cluster. You can use Azure NetApp Files, Azure Files, NFS, or other methods to mount the same file system on both sides. In this example, we are using a Scheduler VM as a NFS server.
Steps
After we have the prerequisites ready, we can follow these steps to integrate the external Slurm Scheduler node with the CycleCloud cluster:
1. On CycleCloud VM:
Ensure CycleCloud 8.6 VM is running and accessible via cyclecloud CLI.
Clone this repository and import a cluster using the provided CycleCloud template (slurm-headless.txt).
We are importing a cluster named hpc1using theslurm-headless.txt template.
git clone https://github.com/vinil-v/slurm-cloud-bursting-using-cyclecloud.git
cyclecloud import_cluster hpc1 -c Slurm-HL -f slurm-cloud-bursting-using-cyclecloud/templates/slurm-headless.txt
Output:
[vinil@cc86 ~]$ cyclecloud import_cluster hpc1 -c Slurm-HL -f slurm-cloud-bursting-using-cyclecloud/cyclecloud-template/slurm-headless.txt
Importing cluster Slurm-HL and creating cluster hpc1….
———-
hpc1 : off
———-
Resource group:
Cluster nodes:
Total nodes: 0
2. Preparing Scheduler VM:
Deploy a VM using the specified AlmaLinux image (If you have an existing Slurm Scheduler, you can skip this).
Run the Slurm scheduler installation script (slurm-scheduler-builder.sh) and provide the cluster name (hpc1) when prompted.
This script will install and configure Slurm Scheduler.
git clone https://github.com/vinil-v/slurm-cloud-bursting-using-cyclecloud.git
cd slurm-cloud-bursting-using-cyclecloud/scripts
sh slurm-scheduler-builder.sh
Output:
——————————————————————————————————————————
Building Slurm scheduler for cloud bursting with Azure CycleCloud
——————————————————————————————————————————
Enter Cluster Name: hpc1
——————————————————————————————————————————
Summary of entered details:
Cluster Name: hpc1
Scheduler Hostname: masternode2
NFSServer IP Address: 10.222.1.26
3. CycleCloud UI:
Access the CycleCloud UI, edit the hpc1 cluster settings, and configure VM SKUs and networking settings.
Enter the NFS server IP address for /sched and /shared mounts in the Network Attached Storage section.
Save & Start hpc1 cluster
4. On Slurm Scheduler Node:
Integrate External Slurm Scheduler with CycleCloud using the cyclecloud-integrator.sh script.
Provide CycleCloud details (username, password, and URL) when prompted. (Try entering the details manually instead of copy and paste. The copy & paste might contain some whitespaces and it might create issues in building the connection.)
cd slurm-cloud-bursting-using-cyclecloud/scripts
sh cyclecloud-integrator.sh
Output:
[root@masternode2 scripts]# sh cyclecloud-integrator.sh
Please enter the CycleCloud details to integrate with the Slurm scheduler
Enter Cluster Name: hpc1
Enter CycleCloud Username: vinil
Enter CycleCloud Password:
Enter CycleCloud URL (e.g., https://10.222.1.19): https://10.222.1.19
——————————————————————————————————————————
Summary of entered details:
Cluster Name: hpc1
CycleCloud Username: vinil
CycleCloud URL: https://10.222.1.19
——————————————————————————————————————————
5. User and Group Setup:
Ensure consistent user and group IDs across all nodes.
Better to use a centralized User Management system like LDAP to ensure the UID and GID are consistent across all the nodes.
In this example we are using the users.sh script to create a test user vinil and group for job submission. (User vinil exists in CycleCloud)
cd slurm-cloud-bursting-using-cyclecloud/scripts
sh users.sh
6. Testing & Job Submission:
Log in as a test user (vinil in this example) on the Scheduler node.
Submit a test job to verify the setup.
su – vinil
srun hostname &
Output:
[root@masternode2 scripts]# su – vinil
Last login: Tue May 14 04:54:51 UTC 2024 on pts/0
[vinil@masternode2 ~]$ srun hostname &
[1] 43448
[vinil@masternode2 ~]$ squeue
JOBID PARTITION NAME USER ST TIME NODES NODELIST(REASON)
1 hpc hostname vinil CF 0:04 1 hpc1-hpc-1
[vinil@masternode2 ~]$ hpc1-hpc-1
You will see a new node getting created in hpc1 cluster.
Congratulations! You have successfully set up Slurm bursting with CycleCloud on Azure.
Conclusion
In this blog post, we have shown how to integrate an external Slurm Scheduler node with Azure CycleCloud for cloud bursting or hybrid HPC scenarios. This enables users to leverage the power and flexibility of the cloud for their HPC workloads, while maintaining their existing Slurm workflows and tools. We hope this guide helps you to get started with your HPC journey on Azure.
Reference:
GitHub repo – slurm-cloud-bursting-using-cyclecloud
Azure CycleCloud Documentation
Microsoft Tech Community – Latest Blogs –Read More
Shortcut to clean filters
Does anyone knows if there is a shortcut in keypad to clean filters?
I just want to clean the filter, not to remove the entire filter.
Does anyone knows if there is a shortcut in keypad to clean filters?I just want to clean the filter, not to remove the entire filter. Read More
Exporting Emails to PDF
Does anyone know if there is a way to export a group of emails (or a folder of emails) to pdf in the new Outlook?
Does anyone know if there is a way to export a group of emails (or a folder of emails) to pdf in the new Outlook? Read More
Weekday Formula where if the date is a Sunday it returns the original value
I am using the WEEKDAY function to return the week beginning and end dates, from a date in another cell, where beginning of the week is Sunday, and end of the week is Saturday.
It works where a date falls on any day of the week, apart from Sunday itself. If the date I need the week beginning and end date for is also a Sunday, and the beginning date itself, it’s showing the date of the previous Sunday.
Example:
Examples A, C and D return the correct results. But when the date I am trying to get week beginning and end for is also on a Sunday, it’s returning the previous week start and end dates. When I need it to return the same value essentially, as Sunday is the beginning of the week.
Has anyone come across this before and know of a workaround? I’m completely stuck and would very much appreciate some help!
I am using the WEEKDAY function to return the week beginning and end dates, from a date in another cell, where beginning of the week is Sunday, and end of the week is Saturday. It works where a date falls on any day of the week, apart from Sunday itself. If the date I need the week beginning and end date for is also a Sunday, and the beginning date itself, it’s showing the date of the previous Sunday. Example:Examples A, C and D return the correct results. But when the date I am trying to get week beginning and end for is also on a Sunday, it’s returning the previous week start and end dates. When I need it to return the same value essentially, as Sunday is the beginning of the week. Has anyone come across this before and know of a workaround? I’m completely stuck and would very much appreciate some help! Read More
How to access my Outlook Classic Templates in New Outlook?
If you want to save time and hassle when composing emails, you can use templates. Templates allow you to access professional and consistent messages that impress your recipients. You can open and reuse the templates that you created in Classic Outlook.
Usable templates are pre-written email messages you can customize and send with just a few clicks. You may create a variety of templates for different purposes, such as:
– Thanking a customer for their feedback
– Responding to a support ticket
– Requesting a review or a testimonial
– Announcing a promotion or a new product
And many more! Usable templates help you communicate effectively and efficiently without compromising on quality, style, or your precious time.
In under two minutes, this video will show you how to save an email to your local drive and open your Outlook Classic templates in New Outlook.
https://youtu.be/6HoYiraeHXk?si=yNvt8nCOgSNIPonZ
/Teresa #traccreations4e 5/14/2024
If you want to save time and hassle when composing emails, you can use templates. Templates allow you to access professional and consistent messages that impress your recipients. You can open and reuse the templates that you created in Classic Outlook.
Usable templates are pre-written email messages you can customize and send with just a few clicks. You may create a variety of templates for different purposes, such as:
– Thanking a customer for their feedback
– Responding to a support ticket
– Requesting a review or a testimonial
– Announcing a promotion or a new product
And many more! Usable templates help you communicate effectively and efficiently without compromising on quality, style, or your precious time.
In under two minutes, this video will show you how to save an email to your local drive and open your Outlook Classic templates in New Outlook.
https://youtu.be/6HoYiraeHXk?si=yNvt8nCOgSNIPonZ
/Teresa #traccreations4e 5/14/2024 Read More
Add gridline at only the 0 axis for Waterfall chart
Hello,
I have a waterfall chart that reads dynamic data that could potentially cross the 0 axis line. I want to avoid gridlines on the whole chart, but would like to add one for the 0 axis to highlight when the chart goes negative. I thought about trying a combo chart but waterfalls don’t allow this. Is there any other way to implement this, potentially with VBA?
Hello, I have a waterfall chart that reads dynamic data that could potentially cross the 0 axis line. I want to avoid gridlines on the whole chart, but would like to add one for the 0 axis to highlight when the chart goes negative. I thought about trying a combo chart but waterfalls don’t allow this. Is there any other way to implement this, potentially with VBA? Read More
Help needed in Excel
I have a cell that changes their values when I enter a text in another cell. This are validations.
Cell L46 = Error – Please provide an explanation
Cell E46 is blank
Then when I write an Explanation in Cell E46
then
Cell E46 = OK
Where I can see those conditions in my excel s/s.
I looked in conditional format but it’s not there, there isn’t a Macro in my s/s
Can someone help?
Thanks
I have a cell that changes their values when I enter a text in another cell. This are validations. Cell L46 = Error – Please provide an explanation Cell E46 is blank Then when I write an Explanation in Cell E46 then Cell E46 = OK Where I can see those conditions in my excel s/s.I looked in conditional format but it’s not there, there isn’t a Macro in my s/s Can someone help? Thanks Read More
How can I apply the ISNUMBER function row-by-row until a value is found?
I can use the ISNUMBER formula explicitly to get the result I want. However, I need to do a dynamic row-by-row search until a value is returned and then stop. For example, I want to determine if the value in column A is found in ANY of the rows in column R. If it is, then I want to return the value in that row’s column S and place it in column G. In my example I am explicitly searching R5 for the value in A3 and returning S5 to G3. Now, how would I get it to look in R1, R2, R3… until if found the match? The trick for me is having to use the ISNUMBER function to search a string of values in a cell. Otherwise, with my basic understanding I could use a MATCH or INDEX formula I think.
Thanks!
I can use the ISNUMBER formula explicitly to get the result I want. However, I need to do a dynamic row-by-row search until a value is returned and then stop. For example, I want to determine if the value in column A is found in ANY of the rows in column R. If it is, then I want to return the value in that row’s column S and place it in column G. In my example I am explicitly searching R5 for the value in A3 and returning S5 to G3. Now, how would I get it to look in R1, R2, R3… until if found the match? The trick for me is having to use the ISNUMBER function to search a string of values in a cell. Otherwise, with my basic understanding I could use a MATCH or INDEX formula I think. Thanks! Read More
Excel calculation slow after version 2308 update
Hello, We have a large excel model which has property “ForceFullCalculation” switched on due to issues with usability and excel crashing. If Excel is updated to any version past 2307 the calculation time significantly increases (by about 70%) which is an issue when calculating iteratively for instance if we are using Solver. I know that the best solution would be to redesign the Workbook so that we don’t have to have “ForceFullCalculation” switched on however we have deliverables that need to be met. We have rolled back Excel version to 2307 thinking there would be a fix in a more recent version however this has not happened and we don’t want to be stuck on version 2307 forever. Any advice on the cause/solutions to this problem would be greatly appreciated. Read More
Installing .Net 8.0 via Intune Using Winget
I am trying to get .NET 8.0 installed on user machines via a PowerShell script via Intune. I upload the following script. I have tested locally on a machine and works well, but fails when sending through Intune as a script.
# Install .NET 8.0 using Winget
winget install –silent –exact Microsoft.DotNet.Runtime.8
The problem is that if winget has not been used before on new install of windows, you have to “accept” this agreement about region of PC. It fails at this point. I attached the photo of what I get.
I need to figure out what needs to be added to script to automatically accept the agreement for region and silently install .NET 8.0.
I am trying to get .NET 8.0 installed on user machines via a PowerShell script via Intune. I upload the following script. I have tested locally on a machine and works well, but fails when sending through Intune as a script. # Install .NET 8.0 using Wingetwinget install –silent –exact Microsoft.DotNet.Runtime.8 The problem is that if winget has not been used before on new install of windows, you have to “accept” this agreement about region of PC. It fails at this point. I attached the photo of what I get.I need to figure out what needs to be added to script to automatically accept the agreement for region and silently install .NET 8.0. Read More
Is it safe to delete appdata folder on Windows 11?
My C drive is running out of space and I found the app data folder takes up more 60GB space. Can I safely delete the whole folder?
My C drive is running out of space and I found the app data folder takes up more 60GB space. Can I safely delete the whole folder? Read More
Can MS Copilot integrate with other CRM?
We are using Zoho can MS Copilot be integrated to it?
We are using Zoho can MS Copilot be integrated to it? Read More
What to do When Quickbooks payroll not working when downloading payroll updates?
Can someone please assist why my Quickbooks Payroll not Working when Downloading Payroll Updates and offer guidance on resolving this issue? Any advice or suggestions would be greatly appreciated. Thank you.
Can someone please assist why my Quickbooks Payroll not Working when Downloading Payroll Updates and offer guidance on resolving this issue? Any advice or suggestions would be greatly appreciated. Thank you. Read More
Power Query what is faster for 2nd query ? Reference or source table from output of 1st query ?
I know that power query will refresh the first query on all referenced query.
Meaning, if you have a “main” query and then transformations in multiple query, the “main” will be refreshed every time. Slowing down your process.
Is it better to output the first query to a table and then use that as a source for the other queries ?
I know that power query will refresh the first query on all referenced query.Meaning, if you have a “main” query and then transformations in multiple query, the “main” will be refreshed every time. Slowing down your process. Is it better to output the first query to a table and then use that as a source for the other queries ? Read More
Best way to add endpoint firewall rule through Intune
Hello,
I have a 3rd party app deployed to all my endpoints that requires specific ports and servers allowed through the local devices outbound firewall. After looking through some Microsoft support articles for Intune, I did find something however it will only let me use IP Address ranges. I need to use DNS Hostnames instead.
Is there a way in Intune for me to do this through Endpoint Security -> Firewall that I’m missing or do I have to script something and deploy it through Intune instead?
Appreciate the assistance!
Hello, I have a 3rd party app deployed to all my endpoints that requires specific ports and servers allowed through the local devices outbound firewall. After looking through some Microsoft support articles for Intune, I did find something however it will only let me use IP Address ranges. I need to use DNS Hostnames instead. Is there a way in Intune for me to do this through Endpoint Security -> Firewall that I’m missing or do I have to script something and deploy it through Intune instead?Appreciate the assistance! Read More