The Resource Scheduler for Microsoft Azure provides a quick and easy way to create group schedules to stop and start Azure VMs on the schedule (days and times) you specify.
NOTE: While additional resource types may be added in the future, “resources” in the current release refers to Azure VMs.
Table of Contents
VIDEO GUIDANCE: Installation and configuration video links are available in the Installation and Configuration sections below. If you do not know the URL of your Resource Scheduler installation, watch the full Installation & Configuration Instructions HERE.
- A Note on Azure Managed Apps
- Scope of a Resource Scheduler instance
- Install and Configure
- Managing Schedules
- Troubleshooting, Support, and Resource Admin
- Resource Scheduler Licensing
- Frequently Asked Questions
- Referral Partner Program
A Note on Azure Managed Apps
The Resource Scheduler is an Azure managed application, a feature unique to Microsoft Azure. It is similar to a solution template in the Marketplace, with one key difference. With a managed application, the resources are deployed to a resource group that’s managed by the publisher of the app (Lumagate, in this case), so we can ensure your app is always up-to-date. The resource group is present in your subscription, but an identity in the publisher’s tenant has access to the resource group.
IMPORTANT: This does NOT grant Lumagate permissions of any kind over your resources outside the resource group hosting the Resource Scheduler.
Scope of a Resource Scheduler instance
A Resource Scheduler instance is associated to a single Azure Active Directory (AD) tenant. A Resource Scheduler instance can manage schedules for starting and stopping VMs in Azure connected subscriptions associated with an Azure AD tenant. In other words:
- Resource Scheduler has a 1-1 relationship with your Azure AD tenant.
- Resource Scheduler has a 1-many relationship with your Azure subscriptions associated to that Azure AD tenant.
Install and Configure
This section covers the initial installation and configuration of the Resource Scheduler.
Installation
INSTALLATION VIDEO WALKTHROUGH: Available HERE
Written version of Resource Scheduler installation steps is available immediately below.
-
Browse to the Azure portal at https://portal.azure.com. Login using an account with Global Administrator rights.
-
In the search box at the top of the browser window, type “Marketplace”. Select the Marketplace icon to go to the Azure Marketplace.
-
In the Marketplace search box, type “Resource Scheduler”.
-
Click the “Resource Scheduler” tile in the search results.
-
To install the Resource Scheduler, click the Create button.
FIGURE 1. Resource Scheduler in the Azure Marketplace
-
In the boxes provided, specify the subscription, resource group name, and an the Azure region where the Resource Scheduler will reside.
-
Then, click the Next : General Settings button.
FIGURE 2. Subscription, Resource group, and Azure region
-
Specify a value for the Resource Prefix. This can be any unique random alpha string up to 8 characters. (no numbers or special characters are supported).
IMPORTANT: Microsoft requires that the site URL is globally unique, so do not pick a common name or string others might use! For example, do not pick lumagate or luma! If your company name has an acronym, that is usually a good option to use.
-
In the Location for Application Insights field, specify the same region you selected when specifying a resource group name.
FIGURE 3. Resource group prefix and App Insights region
-
To deploy the Resource Scheduler, click Review + create.
FIGURE 4. Agreement and Deployment
-
Once the deployment begins, you will see the “Your deployment is underway” screen shown in Figure 5.
FIGURE 5. Resource Scheduler in Azure
-
When the deployment is complete, you will see the “Welcome to your Managed Application” screen shown in Figure 6.
FIGURE 6. Resource Scheduler in Azure
-
Now, click on the Parameters and Outputs link in the left navigation menu (shown in Figure 7). You will find the URL of your Resource Scheduler instance in the lower right.
-
Copy the URL to the clipboard (shown in Figure 7).
NOTE: The current limitations of the Azure Managed Application framework make this a necessary step to retrieve your site URL.
FIGURE 7. Deployment outputs (website name)
-
Paste the link into a web browser. (The Resource Scheduler has been tested in Edge, Chrome, Firefox, and Safari)
-
Click Login button in the upper right, and provide your Azure AD credentials.
-
You will then be prompted to allow the Resource Scheduler to read your profile information. Check the box and click Accept.
NOTE: This consent only affects your user account, and is the minimum required for any Azure app you login to.
FIGURE 8. Profile read access
You are now ready to configure schedules and add resources (VMs) to them.
Configuration
CONFIGURATION VIDEO WALKTHROUGH: Available HERE
Written version of Resource Scheduler configuration steps is available in the sections below.
Grant Permissions
The Resource Scheduler includes custom roles based on Azure role-based access control. Roles include:
- Administrator. Enables a user to manage schedules for resources to which they have access, as well as to schedule. Additionally, this role can add additional subscriptions to the Resource Scheduler instance.
- Schedule Manager. Enables a user to manage schedules for resources to which they have access, as well as to schedule.
- Auditor. This role has read-only access to resources, schedules, logs, and subscriptions connected to the Resource Scheduler instance.
IMPORTANT NOTE: Since the Scheduler Manager role can schedule based on Tags, a member of this role may be able to schedule resources they cannot see. This issue also exists when using tags with script or runbook-based scheduling, because Azure does not support RBAC for tags.
To assign a Resource Scheduler role to a user or group, perform the following steps:
- In the Azure portal or Office 365 Admin Center, select Azure Active Directory.
- Then, select Enterprise Applications. From the list, find and select Resource Scheduler (shown in Figure 9 below).
- Click Add user > Users and Groups. Then, select the user or group you wish to add the role. Click Select to save your changes.
- Next, click Select Role, and choose the role you would like to assign to the selected user or group (Administrator, Auditor, or Schedule Manager). Click Select to save your changes.
FIGURE 9. Enterprise Apps list in Azure Active Directory
Menu appearance will vary by role assignment. Member of the Administrator role will see the Subscriptions and Settings menus, as shown in Figure 10.
FIGURE 10. Enterprise Apps list in Azure Active Directory
Connect Subscriptions
You can associate multiple subscriptions to a single Resource Scheduler instance. The only requirement is that the subscriptions are associated to the same Azure AD tenant as the Resource Scheduler instance.
To connect a new subscription to the Resource Scheduler instance, perform the following steps:
- From the left menu, select Subscriptions.
- From the Available Subscriptions, find the subscription you want to add.
- Click the blue add button next to the right of the subscription. Click Connect to confirm the change.
NOTE: It can take up to 5 minutes after you deploy Resource Scheduler for the managed identity to be linked to the database. If you receive the error “The Managed Identity for Resource Scheduler has not been updated in the database yet.”, simply wait about 5 minutes and try again.
To disconnect a subscription to the Resource Scheduler instance, perform the following steps:
- From the left menu, select Subscriptions.
- From the Connected Subscriptions, find the subscription you want to remove.
- Click the red disconnect button next to the right of the subscription. Click Disconnect to confirm the change.
Configure Time Zone
The time zone settings determines the time zone by which schedules will be set and displayed in the Resource Scheduler portal. Only a user in the Resource Scheduler Administrator role can change this setting.
To connect a new subscription to the Resource Scheduler instance, perform the following steps:
- From the left menu, select Settings.
- Under Timezone, select the desired time zone.
- Click Save to save your changes.
IMPORTANT! If you change the Timezone setting after configuring schedules, it will change the time by which all schedules are evaluated! This should be clear from the time zone notices throughout the Resource Scheduler portal, but we wanted to mention it again here!
Email Notifications
You can configure the Resource Scheduler to send email notification of upcoming schedule actions from Office 365. Because the notifications are delivered in adaptive cards, they are actionable! You can postpone the next run of a schedule from this notification as described in “Postpone Scheduled Action”.
To configure email notification:
- In the Resource Scheduler site, select the Settings tab.
- In the Notifications Sender Address box, enter the address of a user or shared mailbox from your Office 365 subscription.
- In the Notifications Sender Address box, enter a valid user or distribution list email address.
- To generate the Office 365 Originator ID, click the Create Originator ID link beneath the box.
- Click the Save button at the bottom of the screen to save your changes.
FIGURE 11. Email Notifications configuration on Settings tab
Webhook Notifications
You can configure notification of upcoming schedule actions to Microsoft Teams via webhook. These notifications are actionable, and can be used to postpone an action or even just refresh the latest status! You can postpone the next run of a schedule from this notification as described in “Postpone Scheduled Action”.
To configure actionable webhook notifications:
- Open Microsoft Teams and select the team you would like to receive notifications.
- Click the ellipsis (…) next to the team name and select Manage team.
- Select the Apps tab.
- If you do not see webhooks in the list, click the More apps button.
- In the search box , type ‘webhook’. From the search results, select ‘Incoming Webhook’ and click the Add to a team button.
- On the ‘Setup an incoming Webhook…’, click the Setup a connector button.
- On the Incoming Webhook screen, click Create. Then, copy the URL, as shown in the figure below.
FIGURE 12. Webhook URL in Teams
- To complete the configuration, go back to the Settings tab of the Resource Scheduler.
- Paste the URL from step 7 into the box provided in the ‘Webhook Notifications’ area.
- Check the ‘Enable webhook for start actions’ and ‘Enable webhook for stop actions’ according to your preference.
- Click the Save button at the bottom of the screen to save your changes.
NOTE: While you can configure notifications for stop and start actions independently, you must select start notifications to enable the option to postpone schedule runs from these notifications.
FIGURE 13. Webhook Notifications configuration on Settings tab
A quick note on Managed Identity
To complete scheduled actions, the Resource Scheduler uses a managed identity. The managed identity is an account in the customer’s Azure Active Directory (AD) that only Azure / Azure AD know the password of, similar to the Managed Service Account in Active Directory.
When you connect a subscription, you authorize this account to have rights to the subscription, allowing it to start, stop, and inventory VMs and tags without a user signed in. This is useful when the schedule kicks off before/after working hours, when you are not sitting at your computer.
Managing Schedules
This section describes how to schedule resources for start and stop at the days and times you specify. There are two approaches for scheduling resources:
- Scheduling resources directly. With directly scheduling, you associate VMs to a schedule one at-a-time, using a simple search interface. This is great for smaller environments or schedules that affect a small number of VMs. See “Schedule Resources Directly” for configuration steps.
- Scheduling by tag. This option will automatically associate the schedule to all Azure VMs with the tag you specify. This is the preferred option for bulk scheduling and large environments. See “Schedule Resources by Tag” for configuration steps.
A note on multiple schedules. You can assign multiple schedules through direct assignment or using tags.
Schedule Resources Directly
Associating resources to schedules directly is the preferred method for managing small numbers of VMs, as explained in Managing Schedules above.
To add VMs to a schedule, perform the following steps:
- From the left menu, select Schedules.
- Click the plus (+) sign by Schedules, shown in Figure 11 below. This will bring up the schedule form.
- Complete the values in the schedule form.
- Add VMs in the Resources field, using the search and list controls, shown in Figure 14 below.
- Click Save to save your changes.
FIGURE 14. Schedule menu in Resource Scheduler
FIGURE 15. Adding VM resources directly to a schedule
Schedule Resources by Tag
Associating schedules to resources with Azure tags is the preferred method for managing large numbers of resources as explained in Managing Schedules above. The Resource Scheduler looks for the tag values you specify when associating a schedule to a tag. If you are not familiar with tags in Azure, see “Use tags to organize your Azure resources”.
IMPORTANT REMINDER! To avoid confusion and unintentional scheduling of VMs, the Resource Scheduler will look for tags only on the VM resource itself!
To associate a tag to a schedule, perform the following steps:
First, you will create the schedule:
- From the left menu, select Schedules.
- Click the plus (+) sign by Schedules. This will bring up the schedule form.
- Complete the values in the schedule form. Leave the Resources field blank.
- Click Save to save your changes.
Next, you will associate the schedule to tags:
- From the left menu, select Tags.
- In the Available Tags list, find the tag name associated to the resources you wish to schedule.
- To the right of your tag, click the orange Schedule tag button, shown in Figure 16. This will bring up the schedule form.
- In the Schedule Trigger Values field, add one or more tag values that will trigger schedule actions. The tag values are provided to you in the dropdown list, shown in Figure 17 below.
- In the** Attached Schedules** field, select the desired schedule or schedules from the dropdown list.
- Click Save to save your changes.
FIGURE 16. Adding VM resources to a schedule using tags
FIGURE 17. Associating tag values to the schedule
Postpone Scheduled Action
If you need to use a VM outside currently scheduled hours, you can postpone a scheduled run using the actionable message card in the email notification (in Outlook) or webhook notification (in Teams).
- To postpone the next scheduled action, use the dropdown in the notification.
- Choose from ‘by one hour’, ‘by two hours’, ‘by four hours’, or ‘until next run’.
- Add a comment noting the reason for the delay (optional).
- Click the Submit button to enforce your selection.
You can view postponed schedule actions in the Resource Scheduler portal, as shown in Figure 17.
FIGURE 15. Postpone schedule from email (before)
- After you submit your update, you can view the status of your request in the body of this message by pressing F5 to refresh the card.
FIGURE 16. Postpone schedule from email (after)
FIGURE 17. Postponed schedule actions (in red)
Troubleshooting and Support
This section details where to view logs related to Resource Scheduler operation, as well as how to ask a question or request support.
Viewing Resource Logs
You can view activity logs from multiple perspectives, as described here.
To view logs related to a resource or schedule, perform the following steps:
- From the left menu, select Schedules.
- Click the Expand details icon to the right of the resource (VM) in question.
- Select the Logs tab to see log entries, as shown in Figure 18.
FIGURE 18. Schedule logs
Events are listed in descending order (newest event at the top).
To view the central activity log, perform the following steps:
- From the left menu, select Logs. Log entries are immediately available, as shown in Figure 19.
FIGURE 19. Central resource and activity log
Request Support
E-mail support is available to Resource Scheduler customers.
To request support, perform the following steps:
NOTICE OF SUPPORT HOURS: Support hours for Resource Scheduler are 8am - 6pm Eastern Time, Monday-Friday.
STEP 1: Check the FAQs
Begin by checking our FAQs Page to see if your question is answered there. If it is not, proceed to STEP 2.
STEP 2: Screenshot your Claims
Visit https://<instance>.azurewebsites.net/claims and capture a screenshot of the claims associated with your account. If you are logging a request for another user, ask them to capture this data and forward to you.
IMPORTANT! Be sure to complete this step. Your support analyst may ask for this information.
STEP 3: Log a ticket
To log a ticket, visit our Support page at https://lumagate.us/support and click the “CONTACT US” button. In the form provided, select “Resource Scheduler” in the Product dropdown. Complete the required fields in the form and click Submit. A support ticket will be logged and routed automatically. You will receive an e-mail confirmation that your request was received.
Start and Stop VMs from Resource Scheduler
If desired, you can start and stop VMs on-demand directly from the Resource Scheduler portal.
To start or stop a VM, perform the following steps:
-
From the left menu, select Resources.
- Then, click the Start or Stop button as appropriate. Which button appears depends on the current state of the VM:
- The Start button only appears for VMs currently in a stopped or deallocated state.
- The Stop button only appears for VMs currently in a running state.
-
Press the appropriate button to start or stop the VM in Figure 20.
- To START a VM: Click the green button next to the right of the VM resource. Click the green start button again in the prompt to confirm the action.
- To STOP a VM: Click the stop button next to the right of the VM resource. Click the red stop button again in the prompt to confirm the action.
NOTE: The state of the VM may take up to 5 minutes after button press to reflect the change in state, as mentioned on the confirmation screen.
FIGURE 20. Start and Stop buttons for VM resources
Resource Scheduler Licensing
Resource scheduler is licensed according to the number of resources (VMs) you need to schedule. For pricing information, see “Resource Scheduler Licensing” on the Lumagate website.
Frequently Asked Questions
Frequently asked questions are maintained on our FAQs Page
Referral Partner Program
Prospective partners can learn more about Lumagate’s Resource Scheduler partner program on our Referral Partner Program page.