Azure Essentials
63 TopicsSetup Gitlab Continuous (CI/CD) on Azure
Deploy Ubuntu VM with Docker Engine Setup Gitlab on Ubuntu Deploy Webapp Setup Gitlab Continuous (CI/CD) Step-by-step video Deploy Ubuntu VM with Docker Engine Go to https://gitlab.com/daveRendon/ubuntu-vm-with-docker-engine/blob/master/README.md and deploy to Azure Provide the parameters for the VM and click purchase Once the VM is provisioned go to the VM configuration and change the IP Address to Static Connect to the VM using SSH Setup Gitlab Connect to the Ubuntu VM via SSH Install and configure the necessary dependencies sudo apt-get update sudo apt-get install -y curl openssh-server ca-certificates Install Postfix sudo apt-get install -y postfix During Postfix installation a configuration screen may appear. Select 'Internet Site' and press enter. Use your server's external DNS for 'mail name' and press enter. If additional screens appear, continue to press enter to accept the defaults Add the GitLab package repository curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.deb.sh | sudo bash Install the GitLab package. Change https://gitlab.example.comto the URL at which you want to access your GitLab instance. sudo EXTERNAL_URL="https://gitlab.example.com" apt-get install gitlab-ee Browse to the hostname and login using the default account's username root to login In this case> http://gitlabs.eastus.cloudapp.azure.com Deploy webapp on azure Deploy ARM Template using Azure Portal: https://gitlab.com/daveRendon/ifreeze/blob/master/webapp.js Create Gitlab project on Azure Access to Gitlab on Azure http://gitlabs.eastus.cloudapp.azure.com Create new project Generate your SSH Key https://gitlab.com/help/ssh/README#generating-a-new-ssh-key-pair Setup Gitlab Continuous (CI/CD) on Azure Go to the Azure web app Choose Deployment Center Select Source Control "External" and click Continue Now in Build Provider select "App Service Build Service" Add the Gitlab URL and the master branch In choose Private Repository "YES" and provide the credentials, in this case user root and the password previously created Test changes on the Gitlab project running on Azure Step-by-Step video https://youtu.be/naSdpfOuaUo63KViews0likes0CommentsMultiple Azure tenants > best practice (one microsoft account or more?)
We deliver an web application (SQL database and webserver). We host this application from an Azure tenant. No we are setting up an (separate) Azure tenant for a customer. In the future this will be the way we will deliver our application to our customers. So we might end up with (for example) 20 Azure tenants. What will be the best practice for setting up these tenants. Shall I use my Microsoft account I use for my first Azure account (someaccount@outlook.com) for all the tenants or shall I create a new microsoft account for all tenants (tenant1@outlook.com, tenant2@outlook.com, etc)? Or is there a better way to do this? Thanks, MikeSolved30KViews1like5CommentsAzure Essentials - Free Training
At Ignite 2017, we launched the new Microsoft Azure Essentials, the best place to get started with and learn more about Azure. Don`t know what is Azure, or want to learn more about Azure and Cloud? Just choose a topic and use the curated set of demo videos, hands-on labs, and product trials to learn about and try Azure at your own pace. Be sure to also check out the Azure learning paths, and Azure certification. You can access all this content for free at Azure.com/Essentials20KViews20likes12CommentsAzure Essentials just got an upgrade - Free learning resources
Forget Moore’s Law. It seems like the pace of migration to the cloud is doubling every month now. We see the shift to the cloud and love to hear about how it’s helping your organization and your career. Azure Essentials is meeting your need to expand your skills and is the single best resource to learn Azure, get training and have access to practical and free learning resources. Now we’ve made it even easier for you get exactly what you need with these upgrades: New Azure Essentials topics have been added. Watch the short video, do the Hands-on Labs and practice what you learned in a live environment with these new topics: Managing VM’s and Resources Data Visualization and Modeling Data Analytics The new Progress Tracker (requires log in) gives you a quick view of what you’ve already completed and allows you to add items to your queue for later. You will also see what is new since your last visit. No more need to log in to access most of the learning resources so accessing the content is even easier. Whether you’re picking up where you left off or starting your Azure education from scratch, Azure Essentials is more capable and accessible than ever. Take a look. Whether you’re picking up where you left off or starting your Azure education from scratch, Azure Essentials is more capable and accessible than ever. Take a look.7.8KViews19likes13Comments- 7.1KViews0likes2Comments
Deploy Next.js with Azure Static Web App Service and GitHub Actions (Video and Tutorial)
I recently made a new video on using the coolest new feature released at Microsoft Build 2020, Static Web Apps. Last time we used Hugo and it was pretty darn easy. This time we'll focus on the React framework Next.js. Requirements GitHub Account Azure Account - check out the $200 in free credit trial. npm - at least 10 npx Look I am new to this. No problem! A static site is more like a collection of HTML pages rather than dynamically rendered pages in the browser. We won't be accessing a database to provide the information in our site. In this case, we'll be creating .js files that contain CSS and HTML that can easily be flattend into simple HTML. Once that HTML page is built, you can deploy the output to your web host. In the past, serving these files required you to provide some form of simple web server along with the supportive storage to host the files. Before the cloud, these types of static pages would actually require virtual hosts on Apache Servers or IIS. This meant additional system administration, deployment methods and maintenance of the hardware. Deployments were not automatic either. Most of the time, new deployments using these older methods would be shipped by basic scripts or even via FTP. What is Next.js? Next.js is a static site generation framework. You build server-rendered React pages rather than dynamically generated, allowing you to quickly serve your website. The configuration is near minimal which makes it so powerful. Just create a site, add adtitional pages, use HTML/CSS and React to customize it to your needs. Tons of big companies are using the Next.js frameworks like Hulu, Docker, Jet and many more. It's the ease of creation and deployment that really helps organizations like this ship faster and easier. This free interactive course will guide you through how to get started with Next.js. For the case of this demo today, we'll use a pre-created site you can fork and modify. Deployment Method GitHub Actions is an API for cause and effect on GitHub: orchestrate any workflow, based on any event, while GitHub manages the execution, provides rich feedback and secures every step along the way. With GitHub Actions, workflows and steps are just code in a repository, so you can create, share, reuse, and fork your software development practices. Get Fast CI/CD - Any language or platform. YAML builds Live logging Workflows are reusable - like code! (Hello fellow StackOverflow Devs!) If you'd like to follow with this tutorial, make sure you have a GitHub account! Azure Static Web Apps Accelerate your app development with a static front end and dynamic back end powered by serverless APIs. Experience high productivity with a tailored local development experience, GitHub native workflows to build and deploy your app, and unified hosting and management in the cloud. Productivity from local development to GitHub native workflows for CI/CD Managed global availability for static content Dynamic scale for serverless APIs Streamlined management including custom domain configuration and authentication and authorization Azure Static Web Apps allows for native GitHub integration so that when you deploy, your workflow file will be generated for you, allowing you to build and deploy right to Azure. If you don't have an Azure account yet and you'd like to follow along with this post, check out the $200 in free credit trial. Getting Started Fork this repository into your GitHub account. It's just a silly static site dedicated to my pug Rico. jaydestro / ricoinfojs This is a starter template for Learn Next.js. This is a basic website about my dog that is used for deployment to different static site host. Start locally with npn dev start Export pages using npx next build && npm next export and find your static content in the out directory. View on GitHub If you'd like to test out the application before you deploy it, you can clone the application locally and start the development server: git clone https://github.com/jaydestro/riconext.git cd riconext npm install npm run dev You should now have a development Node server running at localhost on port 3000 for you to test your website: You can modify the site in any way or just follow the Next.js documentation on creating your own example site. When you've completed your design and are ready to build the static pages Create your Static Web App Service Creating the service just takes a few steps, here's how to get started in the Azure Portal. Go to your Azure Portal In the upper left hand corner of your portal click the three dashes, click "Create a resource" In the "Search the Marketplace" search bar, type "Static Web App (Preview)" - hit enter and you'll be taken to the Azure Resource Manager template to create the site. Click the "Create" button in the Azure Marketplace description Select your subscription, then create a new, or select a resource group would like to create your app in. Provide it with a name to identfy your App (this will not be the hostname) Select one of the Azure Regions the service is available in. Select the SKU Free! (that's right, free!) Click "Sign in with GitHub" for your source control - authenticate your GitHub account (you will need this!) Select your Organization, in my case it's jaydestro , Select your repository riconext and finally the branch master Click the Build button at the bottom to select your build details Update the build details with the following: App Location : / This is the location of your application code. For example, '/' represents the root of your app, while '/app' represents a directory called 'app'. Api location: LEAVE BLANK, DELETE api Location of your Azure Functions code. For example, '/api' represents a folder called 'api'. App artifact location: public The path of your build output relative to your apps location. For example, setting a value of build when your app location is set to /app will cause the content at /app/build to be served. Click "Review and Create" Review your summary and click create! Build with GitHub Actions Since you've created a trust between GitHub and Azure, you Azure will drop a workflow file into your repository located in .github/workflows . Azure will create a YAML file in the directory for you with the directions on how to build and deploy your application. The YAML file will have a name that will be similar to the randomized hostname eventually created for you. Here's an example: name: Azure Static Web Apps CI/CD on: push: branches: - master pull_request: types: [opened, synchronize, reopened, closed] branches: - master jobs: build_and_deploy_job: if: github.event_name == 'push' || (github.event_name == 'pull_request' && github.event.action != 'closed') runs-on: ubuntu-latest name: Build and Deploy Job steps: - uses: actions/checkout@v2 - name: Build And Deploy id: builddeploy uses: Azure/static-web-apps-deploy@v0.0.1-preview with: azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_GREEN_MUD_0FB62DF0F }} repo_token: ${{ secrets.GITHUB_TOKEN }} # Used for Github integrations (i.e. PR comments) action: 'upload' ###### Repository/Build Configurations - These values can be configured to match you app requirements. ###### # For more information regarding Static Web App workflow configurations, please visit: https://aka.ms/swaworkflowconfig app_location: '/' # App source code path api_location: 'api' # Api source code path - optional app_artifact_location: 'public' # Built app content directory - optional ###### End of Repository/Build Configurations ###### close_pull_request_job: if: github.event_name == 'pull_request' && github.event.action == 'closed' runs-on: ubuntu-latest name: Close Pull Request Job steps: - name: Close Pull Request id: closepullrequest uses: Azure/static-web-apps-deploy@v0.0.1-preview with: azure_static_web_apps_api_token: ${{ secrets.AZURE_STATIC_WEB_APPS_API_TOKEN_GREEN_MUD_0FB62DF0F }} action: 'close' Now whenever we commit to master GitHub Actions will follow the instructions in the GitHub Actions workflow file. If we wanted to add tests, make changes or anything else, all master deploys will automatically build and deploy. Let's look at what GitHub Actions has done. GitHub Actions was triggered by the commit of the YAML file into my repository. This triggered action tells GitHub Actions based on the workflow file in .github\workflows to build our static web app then deploy it to the App Service. Actions will provide you logs of your build and deploy so you can troubleshoot when issues arise. Once the build is completed you'll get a summary of what occurred during deployment. Once our deployment has completed you can now navigate back to the Azure portal and view the details and hostname of your new deployment: If I click on the hostname, I am now able to see my new website! We have options to integrate Azure Functions, add a custom hostname or even set up staging environments that are automatically created when a pull request is generated, and are promoted into production once the pull request is merged. Links to help you! Almost any static content will work using this service making your decision of what to use nearly limitless. The tutorial should help provide you with a great start on using this service with your Azure Static Web App Service. Utilizing resources like GitHub actions can help you on your journey to becoming a Microsoft DevOps Certified Expert. Microsoft Learn: Azure Fundamentals Microsoft Learn: Deploy Static Web App Microsoft Docs: App Service Documentation GitHub Actions Documentation Get 12 Months of free service and $200 for Microsoft Azure7KViews0likes0CommentsAzure SIT, UAT and Production Environment Deployment
Hi I am currently working for a client where were are migrating their IT estate to Azure. This involves migrating database and re-engineering numerous integrations using Azure Function / Logic Apps / Data Factory. All in All we have nearly 200 resources contained within a Resource Group. We have also created VMs, containers, NSG, DB, API, Vnets etc. We have developed the integration using a combination of Visual Studio and the Azure Portal. All code has been written using C#. The analysis to re-develop the existing integrations has been large and the current integration used a different and old technologies. I did consider creating the dev resources using IaC but the build task has been and ongoing process and integration have been delivered on an ongoing basis. We are now at the end of build and I need to recreate the resources in SIT, UAT and eventually production. I had envisaged I could export the ARM resource group template and refactor. However, this does not seem possible as I receive an error stating 200 resources exceeded. Could somebody recommend how this can be achieved instead of manually creating resources in each environment. I thougth Azure would be agile and would provide a capability to recreate resources are speed. If this is not possible then I will have to look at not considering Azure for future clients and bids. Also could somebody recommend (as a lesson learnt) how we could have created a repeatable process at the outset of the project. I was considering developing Terrafrom scripts but due to timescales in build and the need to analyse the integration this was dropped. Thanks Mike6.4KViews0likes1CommentProblem with Azure Storage Account (Used Capacity) Metrics
I have a bit of an odd issue in that when looking at the used Capacity metrics on my storage account it shows a wildly different amount from what is actually in use. We have had a storage account throttled as the capacity went over the maximum capacity of a storage account which we missed due to the Metric being incorrect. This is storage account hosts multiple unmanaged VHDs configured as Premium SSD disk. Is there a known issue or a suggested way to work around this ? Where could I pull an accurate metric for the actual used amount of storage on the storage account? Am I just missing something here, is there another Metric I should be looking at that might not be available via the GUI ?5.7KViews0likes5CommentsGitting Started! Using git in the Azure Cloud Shell!
Microsoft Azure Cloud Advocate Jay Gordon gives you the first steps in working with git on the Azure Cloud Shell. You'll see how to create your very first repo and branch on from the Cloud Shell using Bash. Docs - Overview of Azure Cloud Shell - https://aka.ms/overviewcs Azure Cloud Shell https://aka.ms/cloudshelljg3.6KViews0likes0Comments