The document provides steps for creating and publishing a virtual machine image on the Azure Marketplace. It discusses registering as a seller, building and certifying a VM image, creating an offer in the Publishing Portal, and testing in staging. Key steps include generalizing the VM image, generating SAS URIs for storage, and running a certification tool to test the image and submit results. The goal is to true anywhere on Azure infrastructure after completing the certification process.
Microsoft Azure intro - common information and blah blah blah about cloud computing, virtual machines - comparing A and D series by numbers ( performance CPU, RAM, storage ) and variability, Web apps ( ex-Web sites ).
PC = Personal Cloud (or how to use your development machine with Vagrant and ...Codemotion
by Andrey Adamovich - Have you ever wished to run production clone on your laptop to find that annoying bug? With decreasing hardware costs and growing hardware performance characteristics it becomes possible. Virtualization tools like VirtualBox come very handy at simulating real OS with real setup. Tools like Vagrant (VirtualBox wrapper) make it even easier. This presentation gives several hands-on demonstrations of Vagrant capabilities and the simplicity of integrating that into your normal development cycle.
Microsoft Azure intro - common information and blah blah blah about cloud computing, virtual machines - comparing A and D series by numbers ( performance CPU, RAM, storage ) and variability, Web apps ( ex-Web sites ).
PC = Personal Cloud (or how to use your development machine with Vagrant and ...Codemotion
by Andrey Adamovich - Have you ever wished to run production clone on your laptop to find that annoying bug? With decreasing hardware costs and growing hardware performance characteristics it becomes possible. Virtualization tools like VirtualBox come very handy at simulating real OS with real setup. Tools like Vagrant (VirtualBox wrapper) make it even easier. This presentation gives several hands-on demonstrations of Vagrant capabilities and the simplicity of integrating that into your normal development cycle.
The Unofficial VCAP / VCP VMware Study GuideVeeam Software
Veeam® is happy to provide the VMware community with new, unofficial study guides prepared by VMware certified professionals Jason Langer and Josh Coen.
Free VCP5-DCV Study Guide
In this 136-page study guide Jason and Josh cover all seven of the exam blueprint sections to help prepare you for the VCP exam.
Free VCAP5-DCA Study Guide
For those currently holding their VCP certification and want to take it up a notch, Jason and Josh have you covered with the 248-page VCAP5-DCA study guide. Using this study guide along with hands-on lab time will help you in the three and a half hours, lab-based VCAP5-DCA exam.
Virtualization Manager 5.0 – Now with Hyper-V Support!SolarWinds
For more information on Virtualization Manager, visit: http://www.solarwinds.com/virtualization-manager.aspx
Watch this webcast: http://www.solarwinds.com/resources/webcasts/virtualization-manager-50-now-with-hyperv-support.html
Whether you have a Hyper-V virtual environment, VMware, or both – Virtualization Manager now has you covered. Watch SolarWinds virtualization experts Brian Radovich and Robbie Wright as we discuss the key areas for managing a Hyper-V virtual environment.
• How to manage performance on a shared virtual infrastructure
• Building out a proactive capacity plan
• Tracking and reporting on virtual configurations and drift
• Living in a multi-hypervisor world!
Also during this webcast we demonstrate key technologies from SolarWinds that help to conquer these challenges and ensure success in virtual environments.
AAI-1304 Technical Deep-Dive into IBM WebSphere LibertyWASdev Community
A detailed look into the philosophy, architecture and design of the most flexible, simple and scalable Java EE Application Server on the market today; the WebSphere Liberty profile. These slides describe the motivation behind this project, and the key characteristics that are encouraging so many Java EE users to move their applications to Liberty.
The Unofficial VCAP / VCP VMware Study GuideVeeam Software
Veeam® is happy to provide the VMware community with new, unofficial study guides prepared by VMware certified professionals Jason Langer and Josh Coen.
Free VCP5-DCV Study Guide
In this 136-page study guide Jason and Josh cover all seven of the exam blueprint sections to help prepare you for the VCP exam.
Free VCAP5-DCA Study Guide
For those currently holding their VCP certification and want to take it up a notch, Jason and Josh have you covered with the 248-page VCAP5-DCA study guide. Using this study guide along with hands-on lab time will help you in the three and a half hours, lab-based VCAP5-DCA exam.
Virtualization Manager 5.0 – Now with Hyper-V Support!SolarWinds
For more information on Virtualization Manager, visit: http://www.solarwinds.com/virtualization-manager.aspx
Watch this webcast: http://www.solarwinds.com/resources/webcasts/virtualization-manager-50-now-with-hyperv-support.html
Whether you have a Hyper-V virtual environment, VMware, or both – Virtualization Manager now has you covered. Watch SolarWinds virtualization experts Brian Radovich and Robbie Wright as we discuss the key areas for managing a Hyper-V virtual environment.
• How to manage performance on a shared virtual infrastructure
• Building out a proactive capacity plan
• Tracking and reporting on virtual configurations and drift
• Living in a multi-hypervisor world!
Also during this webcast we demonstrate key technologies from SolarWinds that help to conquer these challenges and ensure success in virtual environments.
AAI-1304 Technical Deep-Dive into IBM WebSphere LibertyWASdev Community
A detailed look into the philosophy, architecture and design of the most flexible, simple and scalable Java EE Application Server on the market today; the WebSphere Liberty profile. These slides describe the motivation behind this project, and the key characteristics that are encouraging so many Java EE users to move their applications to Liberty.
Realistic Networking in generic multi-site Cloud DeploymentsEUBrasilCloudFORUM .
Congresso Sociedade Brasileira de Computação CSBC2016 Porto Alegre (Brazil)
Workshop on Cloud Networks & Cloudscape Brazil
Carlos de Alfonso and Ignacio Blanquer - Polytechnic University of Valencia (UPVLC) - Spain
Unpublished, novel research work related to the latest challenges, technologies, solutions and techniques related to networking within the cloud and to the efficient and effective cloud deployment and hosting of the various emerging applications and services.
Effective solutions related to the placement, sizing, bursting, and migration of compute, storage, and data resources within the cloud network(s) become critical to the deployment of elastic and agile applications.
Monitoring of distributed app hosted in Azure App ServiceAlexander Laysha
There are variety of approaches to monitor system and business metrics of your app hosted in Microsoft Azure. And you might feel like everything is simple and clear... However it's not so obvious on practice and evolution of the project can lead to limitations of current approach for monitoring you're using right now.
This presentation cover different approaches for monitoring distributed application hosted in Azure App Service as well as discover proc & cons of each approach,
Reltio: Powering Enterprise Data-driven Applications with CassandraDataStax Academy
Cassandra's flexibility and scalability make it an ideal foundation for a modern data management architecture. Come hear how Reltio is using Cassandra, in combination with graph technologies and Spark to deliver a new breed of data-driven applications.
In this presentation you'll find out:
- How we ended up selecting Cassandra
- The unique characteristics of data-driven applications
- The best practices we learned by combining Cassandra, graph technology, Spark and more
Tomasz Kopacz: Architektura i service fabric - jak budować aplikacje w paas v2AnalyticsConf
Service Fabric zmienia sposób myślenia o architekturze rozwiązań. Skalowanie warstwy UI jest proste. Ale - w przypadku logiki biznesowej, dotychczas można było albo budować szybko działające aplikacje typu "monolit" albo - skalowalne, n-warstwowe aplikacje oparte o kolejki (i podobne mechanizmy). Tu - dzięki zupełnie innemu podejściu do problemu - można te światy połączyć. Sesja dosyć techniczna!
During this Big Data Warehousing Meetup, Caserta Concepts and Databricks addressed the number one operational and analytic goal of nearly every organization today – to have complete view of every customer. Customer Data Integration (CDI) must be implemented to cleanse and match customer identities within and across various data systems. CDI has been a long-standing data engineering challenge, not just one of logic and complexity but also of performance and scalability.
The speakers brought together best practice techniques with Apache Spark to achieve complete CDI.
Speakers:
Joe Caserta, President, Caserta Concepts
Kevin Rasmussen, Big Data Engineer, Caserta Concepts
Vida Ha, Lead Solutions Engineer, Databricks
The sessions covered a series of problems that are adequately solved with Apache Spark, as well as those that are require additional technologies to implement correctly. Topics included:
· Building an end-to-end CDI pipeline in Apache Spark
· What works, what doesn’t, and how do we use Spark we evolve
· Innovation with Spark including methods for customer matching from statistical patterns, geolocation, and behavior
· Using Pyspark and Python’s rich module ecosystem for data cleansing and standardization matching
· Using GraphX for matching and scalable clustering
· Analyzing large data files with Spark
· Using Spark for ETL on large datasets
· Applying Machine Learning & Data Science to large datasets
· Connecting BI/Visualization tools to Apache Spark to analyze large datasets internally
The speakers also touched on data governance, on-boarding new data rapidly, how to balance rapid agility and time to market with critical decision support and customer interaction. They also shared examples of problems that Apache Spark is not optimized for.
For more information on the services offered by Caserta Concepts, visit our website: http://casertaconcepts.com/
Quick-Start Guide: Deploying Your Cloudian HyperStore Hybrid Storage ServiceCloudian
This document will help a new user deploy a 3-node Cloudian storage cluster in your data center for use with the Cloudian HyperStore Hybrid Cloud Service from AWS Marketplace.
OpenShift Virtualization - VM and OS Image LifecycleMihai Criveti
Building and packaging OS Images with KVM, qemu-img and podman and deploying them onto Kubernetes and KubeVirt with OpenShift Virtualization
Build and create images using Hashicorp Packer and Kickstart - create layered images for multiple cloud providers.
Building a secure image pipeline with Ansible. Generating secure OS images for OpenShift Virtualization. Creating a immutable image pipeline with Ansible, OpenSCAP, Packer, Molecule and Vagrant. Packaging OS images for consumption to OpenShift Virtualization.
KVM is a full virtualization solution for Linux on x86 hardware containing virtualization extensions (Intel VT or AMD-V). It consists of a loadable kernel module, kvm.ko, that provides the core virtualization infrastructure and a processor specific module, kvm-intel.ko or kvm-amd.ko. KVM also requires a modified QEMU although work is underway to get the required changes upstream.
OpenStack Summit 2013 Hong Kong - OpenStack and WindowsAlessandro Pilotti
OpenStack summit session about how to deploy Windows instances using Cloudbase-Init and Heat!
The session takes care of explaining all the issues you might encounter, for example how to choose the rioght KVM VirtIO drivers.
IBM® SmartCloud Entry+ for System X (delivered as IBM Starter Kit for Cloud x86
Edition) solution is an integrated cloud management platform that is designed to be
quickly installed and operational. The IBM SmartCloud Entry is implemented as a
lightweight Web-based application that runs as an Open Services Gateway initiative
(OSGI) application.
Okd wg kubecon marathon azure & vsphereWalid Shaari
this was part of open shift commons events, fringe to the Kubecon 2020 Europe/Amsterdam (virtual) . along with my good online friend and mentor Josef we presented our experience for installing OKD in Azure and VMware.
Kubernetes Story - Day 1: Build and Manage Containers with PodmanMihai Criveti
OpenShift Workshop Day 1: https://www.youtube.com/watch?v=3IuaZu8-fsY - Build and Manage Containers with Podman
In this workshop you'll learn how to build and manage containers, publish images to Quay, then install and deploy containers onto OpenShift.
Kubernetes Story - Day 2: Quay.io Container Registry for Publishing, Building...Mihai Criveti
Friday Brunch - a Kubernetes Story - Day 2: Build containers with Buildah, Skopeo and Quay.io https://www.youtube.com/watch?v=ygJrzMIZiWQ
In this workshop you'll learn how to build and manage containers, publish images to Quay, then install and deploy containers onto OpenShift.
Experience new tools to build, manage and deploy containerized applications following best practices. Learn how to build containers locally with podman, skopeo and buildah, publish and scan containers for vulnerabilities - and deploy containerized applications locally or on cloud using Kubernetes and OpenShift!
Mihai will take you through the process of:
Day 1 = Build: Building and running container images locally with podman, skopeo and buildah. Building containers for years or just getting started? Check out these new tools that help you build and run containers locally, and how they can help you get started with Kubernetes and OpenShift.
Learn some of the best practices on how you can build containers that run as regular users and how to automate the container build process using buildah. Learn about the Universal Base Image and how you can start your image builds from a known, trusted source.
and then over the next two Fridays the story will evolve as follows...
Day 2 = Publish: Publishing container images to quay.io and scanning containers for vulnerabilities and container best practices
Day 3 = Deploy: Getting started with OpenShift using CodeReady Containers or OKD and deploying containers on a Kubernetes Platform (Red Hat OpenShift / OKD / CRC)
Monte Carlo modeling in cloud - mc-modeling-sdkAlexey Bokov
This deck based on my financial modeling in Azure workshop. It starts with a little theory of Brewer theorem and Monte Carlo simulation and then goes to mc-modeling-sdk on C++ which is open sourced there https://github.com/abokov/mc-modeling-sdk/
Azure web apps - designing and debuggingAlexey Bokov
Проектирование и отладка веб приложений с использованием облака Microsoft Azure. Технологии для повышения отказоустойчивости и надежности веб приложений, в том числе при использовании своего хостинга.
Azure: Docker Container orchestration, PaaS ( Service Farbic ) and High avail...Alexey Bokov
Deep dive into Azure cloud technologies including common considerations about technology choices and then going deep into some of them. First we start from Azure Container Service and Docker containers orchestration by using Mesos or Swarm. Next part is about PaaS v2 which called Azure Service Fabric - crash course and deep dive into some parts of SF. After that we going through high Availability and Disaster Recovery in Azure:
- Azure DNS - cloud API for DNS records hosting
- Traffic Manager – load balancing and fault-tolerance on DNS level
- Azure Load Balancer – load balancing on transport level
-Application Gateway – load balancing on application level
Last part of deck is about IaaS based services and some updates for storage service:
* Azure Batch for computational tasks
* VM Scale sets
* Storage - managed disks and cool storage
Online aptitude test management system project report.pdfKamal Acharya
The purpose of on-line aptitude test system is to take online test in an efficient manner and no time wasting for checking the paper. The main objective of on-line aptitude test system is to efficiently evaluate the candidate thoroughly through a fully automated system that not only saves lot of time but also gives fast results. For students they give papers according to their convenience and time and there is no need of using extra thing like paper, pen etc. This can be used in educational institutions as well as in corporate world. Can be used anywhere any time as it is a web based application (user Location doesn’t matter). No restriction that examiner has to be present when the candidate takes the test.
Every time when lecturers/professors need to conduct examinations they have to sit down think about the questions and then create a whole new set of questions for each and every exam. In some cases the professor may want to give an open book online exam that is the student can take the exam any time anywhere, but the student might have to answer the questions in a limited time period. The professor may want to change the sequence of questions for every student. The problem that a student has is whenever a date for the exam is declared the student has to take it and there is no way he can take it at some other time. This project will create an interface for the examiner to create and store questions in a repository. It will also create an interface for the student to take examinations at his convenience and the questions and/or exams may be timed. Thereby creating an application which can be used by examiners and examinee’s simultaneously.
Examination System is very useful for Teachers/Professors. As in the teaching profession, you are responsible for writing question papers. In the conventional method, you write the question paper on paper, keep question papers separate from answers and all this information you have to keep in a locker to avoid unauthorized access. Using the Examination System you can create a question paper and everything will be written to a single exam file in encrypted format. You can set the General and Administrator password to avoid unauthorized access to your question paper. Every time you start the examination, the program shuffles all the questions and selects them randomly from the database, which reduces the chances of memorizing the questions.
Water billing management system project report.pdfKamal Acharya
Our project entitled “Water Billing Management System” aims is to generate Water bill with all the charges and penalty. Manual system that is employed is extremely laborious and quite inadequate. It only makes the process more difficult and hard.
The aim of our project is to develop a system that is meant to partially computerize the work performed in the Water Board like generating monthly Water bill, record of consuming unit of water, store record of the customer and previous unpaid record.
We used HTML/PHP as front end and MYSQL as back end for developing our project. HTML is primarily a visual design environment. We can create a android application by designing the form and that make up the user interface. Adding android application code to the form and the objects such as buttons and text boxes on them and adding any required support code in additional modular.
MySQL is free open source database that facilitates the effective management of the databases by connecting them to the software. It is a stable ,reliable and the powerful solution with the advanced features and advantages which are as follows: Data Security.MySQL is free open source database that facilitates the effective management of the databases by connecting them to the software.
Hierarchical Digital Twin of a Naval Power SystemKerry Sado
A hierarchical digital twin of a Naval DC power system has been developed and experimentally verified. Similar to other state-of-the-art digital twins, this technology creates a digital replica of the physical system executed in real-time or faster, which can modify hardware controls. However, its advantage stems from distributing computational efforts by utilizing a hierarchical structure composed of lower-level digital twin blocks and a higher-level system digital twin. Each digital twin block is associated with a physical subsystem of the hardware and communicates with a singular system digital twin, which creates a system-level response. By extracting information from each level of the hierarchy, power system controls of the hardware were reconfigured autonomously. This hierarchical digital twin development offers several advantages over other digital twins, particularly in the field of naval power systems. The hierarchical structure allows for greater computational efficiency and scalability while the ability to autonomously reconfigure hardware controls offers increased flexibility and responsiveness. The hierarchical decomposition and models utilized were well aligned with the physical twin, as indicated by the maximum deviations between the developed digital twin hierarchy and the hardware.
NUMERICAL SIMULATIONS OF HEAT AND MASS TRANSFER IN CONDENSING HEAT EXCHANGERS...ssuser7dcef0
Power plants release a large amount of water vapor into the
atmosphere through the stack. The flue gas can be a potential
source for obtaining much needed cooling water for a power
plant. If a power plant could recover and reuse a portion of this
moisture, it could reduce its total cooling water intake
requirement. One of the most practical way to recover water
from flue gas is to use a condensing heat exchanger. The power
plant could also recover latent heat due to condensation as well
as sensible heat due to lowering the flue gas exit temperature.
Additionally, harmful acids released from the stack can be
reduced in a condensing heat exchanger by acid condensation. reduced in a condensing heat exchanger by acid condensation.
Condensation of vapors in flue gas is a complicated
phenomenon since heat and mass transfer of water vapor and
various acids simultaneously occur in the presence of noncondensable
gases such as nitrogen and oxygen. Design of a
condenser depends on the knowledge and understanding of the
heat and mass transfer processes. A computer program for
numerical simulations of water (H2O) and sulfuric acid (H2SO4)
condensation in a flue gas condensing heat exchanger was
developed using MATLAB. Governing equations based on
mass and energy balances for the system were derived to
predict variables such as flue gas exit temperature, cooling
water outlet temperature, mole fraction and condensation rates
of water and sulfuric acid vapors. The equations were solved
using an iterative solution technique with calculations of heat
and mass transfer coefficients and physical properties.
We have compiled the most important slides from each speaker's presentation. This year’s compilation, available for free, captures the key insights and contributions shared during the DfMAy 2024 conference.
6th International Conference on Machine Learning & Applications (CMLA 2024)ClaraZara1
6th International Conference on Machine Learning & Applications (CMLA 2024) will provide an excellent international forum for sharing knowledge and results in theory, methodology and applications of on Machine Learning & Applications.
6. And one more : vmdepot.msopentech.com
Not really a
marketplace
But repo for “open
sourced” VMs
7. Publishing offer: how it works
1. Company registration as a seller with Microsoft
• Completed in the Microsoft Seller Dashboard
• Once you register your company, you can continue working in parallel while the verification of your registration is
completed by the Seller Dashboard team
2. Build and certify VM image
• This step and all subsequent steps are completed in the Azure Publishing Portal
3. Create offer, input marketing content, and define pricing in Publishing Portal
4. Test in staging and go-live
Seller portal : Used to register the company information once.
Publisher portal : Used to publish and manage the offer.
Microsoft Azure Marketplace Publication Guidelines : aka.ms/am-guideline
8. sellerdashboard.microsoft.com
Microsoft Seller Dashboard
• Used to register the company information once.
• The registrant must be a valid representative of the company, and must provide their
personal information as a way to validate their identity.
• The person registering must use a Microsoft Account that is shared for the company,
and the same account must be used in the Azure Publishing Portal.
10. publish.windowsazure.com
Azure Publishing Portal
• Used to publish and manage the offer.
• The same company Microsoft Account that was used in the Seller Dashboard
registration must be used here.
• Additional users can be added to assist once the master publisher account has been
created.
12. Create Virtual Machine for Marketplace
Terminology:
• SKU (StockKeeping Unit) means VM Image
• VM Image contain OS disk + some amount of data disks ( may be zero ) –
for each disk it own VHD is required ( even for empty data disk ).
• VHD means Virtual Hard Disk
• VHDx means another Hyper-V format, not supported by Azure. There’s
Convert-VHD tools for make conversion between formats.
13. Add offer
1. Log in to the Publishing Portal (publish.windowsazure.com)
using your seller account.
2. Enter the Virtual Machines tab of the Publishing Portal. In the
prompted entry field, enter your offer name, and create. Under
seller account, enter your namespace.
3. Add any other administrators you want to be able to work with
the publishing portal.
15. Define SKU
1. Add a SKU. It will require an identifier, which will be used in the
URL. This will need to be unique within your Publishing Profile,
but there is no risk of identifier collision with other publishers.
2. Add a summary description for your SKU. This will be read by
humans in the UX, so it is advised to make it easily readable.
This information does not need to be locked until "Push to
Staging". Until then, you are free to edit it.
3. If you are using Windows-based SKUs, follow the suggested
links to acquire the approved versions of Windows Server.
17. Common thoughts
1. Your VM image (aka SKU) should works on all existing ( and future) VM sizes – from
A0 ( one shared CPU core, 0.75 GB RAM) up to G5 (32 CPU cores, 448 GB RAM ).
2. Data disks can be as large as 1 TB. Data disk VHDs should be created as a fixed
format VHD, but also be sparse.
3. When deciding on the disk size, please keep in mind that end users cannot resize
VHDs within an image.
4. Data disks can be empty or contain data
19. Create Linux VM
1. VHD
2. Azure Linux agent ( waagent ) and required libs/packages
3. Kernel and Logical Volume Manager (LVM)
4. Network and SSH daemon
5. Security tips
6. Generalize image
Note: if you use image from Gallery like ‘official Ubuntu’ – just to step 6 ( as soon as
image is already well prepared )
20. 1. Create Linux VM : VHD
1. Linux OS VHD: The Linux OS VHD in your VM Image should be created as a 30GB —
50GB fixed format VHD.
2. No, It cannot be less than 30GB. If the physical size is less than VHD size, the VHD
should be sparse.
3. Linux VHDs larger than 50GB will be considered on a case by case basis.
Documentation : aka.ms/linux-vhd
21. 2. Create Linux VM: waagent and libs
1. The Azure Linux agent (waagent) provides key functions for deploying Linux IaaS deployment in
Azure, such as image provisioning and networking capabilities.
2. You can get this agent from repos ( RPM or Deb packages ) : aka.ms/linux-distros
3. Source code: github.com/Azure/WALinuxAgent
1. Copy 'waagent' file to /usr/sbin
2. chmod 755 /usr/sbin/waagent; /usr/sbin/waagent install
3. Agent config is placed here: /etc/waagent.conf
4. Read manual
4. Check latest Linux Integration Services (LIS) driver is installed, current v4.0: aka.ms/lis-v4
5. Magical Kernel Patch for Azure I/O ( usually included in latests distros, take care about non-listed
kernels )
6. Python 2.6+ and pyasn1 ( Abstract Syntax Notation v1) package
7. OpenSLL v1.0+
Azure Linux Agent user guide: aka.ms/waagent-guide
22. 3. Create Linux VM: Kernel and LVM
1. OS has to be placed on single root partition
2. SWAP space (if it needed ) can be created on the local resource disk with the Linux Agent
by enable swap in /etc/waagent.conf. It will automatically use the resource disk (which
comes with every VM) to create the swap. There's no need to create a disk for it. More
info : bokov.net/weblog/azure/configure-linux-in-azure
3. Serial console output must be always enabled even if you not allow any SSH to your VM (
and our support may provide you output from serial console )
4. Add good enough timeout for mounting cloud based storage device
5. Add this to kernel boot line “console=ttyS0 earlyprintk=ttyS0 rootdelay=300”
6. Do not :
• Do not use LVM Logical Volume Manager
• Do not use swap on OS or data disk
23. 4. Create Linux VM: network and SSH
1. We recommend enable SSH for the end user, add keep live into sshd_config
by ClientAliveInterval settings - acceptable range of ClientAliveInterval is 30 to
235, recommended 180.
2. Networking configuration should use ifcfg-eth0 file and manage it via the
ifup/ifdown
3. Make sure that network device is brought up on boot and uses DHCP
4. Do not:
• Do not install Network Manager package - it conflicts with waagent.
• No custom network configuration and resolv.conf file ( please “rm /etc/resolv.conf” ).
• Do not configure IPv6 – it’s not supported yet.
24. 5. Create Linux VM: Security
1. Do classics : install all security patches for your distribution ( sudo apt-get update;sudo
apt-get upgrade) / follow distribution security guidelines / clean up bash history
2. Please take care about root - the image should not contain a root password (!!!!!!) –
delete it and check /etc/shadow and /etc/passwd.
3. Add firewall i.e. include iptables, but do not enable any rules – default expectation from
customer is that they may easily enable it right after VM is started.
4. Do not:
• Store your Azure account credentials on VM image (!!!!!)
• Do not create default accounts, which remain the same, across provisioning instances
• A lot of other stupid things
25. 6. Create Linux VM: Generalize Image
1. OS VHD must be deprovisioned: “waagent deprovision”. This command does:
• Removes the nameserver configuration in /etc/resolv.conf
• Removes cached DHCP client leases
• Resets host name to localhost.localdomain
2. We recommend setting /etc/waagent.conf to ensure the following actions are also
completed:
• Remove all SSH host keys: Provisioning.RegenerateSshHostKeyPair='y'
• Remore root password from /etc/shadow : Provisioning.DeleteRootPassword='y‘
26. Example of /etc/waagent.conf
# Azure Linux Agent Configuration
Role.StateConsumer=None
Role.ConfigurationConsumer=None
Role.TopologyConsumer=None
Provisioning.Enabled=y
Provisioning.DeleteRootPassword=n
Provisioning.RegenerateSshHostKeyPair=y
Provisioning.SshHostKeyPairType=rsa
Provisioning.MonitorHostName=y
ResourceDisk.Format=y
ResourceDisk.Filesystem=ext4
ResourceDisk.MountPoint=/mnt/resource
ResourceDisk.EnableSwap=n
ResourceDisk.SwapSizeMB=0
LBProbeResponder=y
Logs.Verbose=n
OS.RootDeviceScsiTimeout=300
OS.OpensslPath=None
Azure Linux Agent user guide:
aka.ms/waagent-guide
27. Cool things Linux
1. Custom data and cloud-init – way to inject a script or other metadata into a Microsoft
Azure virtual machine at provision time:
bokov.net/weblog/azure/configure-linux-in-azure/
2. Non-endorsed Linux distros : aka.ms/another-linux
28. Create Windows VM
1.Choose base image
2.Run image
3.Customize VM using RDP and PowerShell
4.Configure
5.Generalize image
29. 1. Create Windows VM: choose base image
1. The OS VHD for your VM Image must be based on a Microsoft
Azure-approved base image, containing Windows Server or SQL
Server.
2. To begin, create a VM from one of the following images, located at
the Microsoft Azure Portal (portal.azure.com):
1. Windows Server 2012 R2 Datacenter, 2012 Datacenter, 2008 R2 SP1
2. SQL Server 2014 Enterprise/Standard/Web
3. SQL Server 2012 SP2 Enterprise/Standard/Web
4. SQL Server 2008 R2 SP2 Enterprise/Standard/Web
5. These links can also be found in the Publishing Portal under the SKU page.
3. Main idea is that you may use Windows Server Images published
on September 8, 2014 and later.
30. 1. Create Windows VM: choose base image
Current list of approved images in publish.windowsazure.com
31. 2. Create Windows VM: run image
1. Actually what you do is create VM under Azure portal, that’s all.
2. Hints:
• Choose US-* region for deployment, it would helps during certification
process because when you will submit your image for certification
team
• Do all thing in cloud, create/customize/configure VM on-premise under
Hyper-V technically correct and will work if you follow documentation,
but we don’t recommend it in most cases. Reality is that using on-
premise for this purpose makes whole process much longer and brings
very hard-to-find issues when VM is finally goes to cloud.
32. 3. Create Windows VM: Customize VM using
RDP and PowerShell
1. RDP is recommended way to develop on your VM.
33. 3. Create Windows VM: Customize VM using
RDP and PowerShell
1. You can use powershell to access your VM (download RDP
file to c:tools
>>Get-AzureAccount
>>Get-AzureVM
>>Get-AzureRemoteDesktopFile -ServiceName "abokov-
ws2012DC" -Name "abokov-ws2012DC" -LocalPath
"C:toolsabokov-ws2012DC.rdp" ServiceName
Name
34. 4. Create Windows VM: configure
1. The Windows OS VHD in your VM Image should be created as a 128 GB fixed format VHD. If
the physical size is less than 128GB, the VHD should be sparse. Base images of
recommended Windows Server are already meet this, just don’t charge defaults.
2. Install patches, especially critical and security
3. No configuration should rely on drives other than C: or D:, since these are the only two
drives that are always guaranteed to exist. C: is the OS disk and D: is the temporary local
disk.
4. Don’t keep your Azure credentials inside images
35. 4. Create Windows VM: generalize
1. Windows images should be sysprep’ed - run command line ( not PowerShell! ), change
directory to “c:windowssystem32sysprep”
2. “sysprep.exe /generalize /oobe /shutdown”
3. Remote Desktop Connection will be closed immediately
4. Wait for generalize and shutdown…
36. 4. Create Windows VM: generalize
When it finished – go to management panel for VHD URL
37. Deploy a VM from your generalized VHDs
1. Generalized OS VHD from Azure storage account can be registered as a user
VM Image with which to test. You cannot directly deploy the VM by providing
generalized VHD URL.
2. You need to use the Create VM Image Rest API to register VHDs as a VM
Image.
3. There’s two options for that: Invoke-WebRequest or Save-AzureVMIMage
41. Generate SAS URI
1. The SAS URI created should adhere to the following requirements
• When generating SAS URIs for your VHDs, List and Read-Only permissions are sufficient. Do not provide
Write or Delete access.
• The duration for access should be a minimum of 7 business days from when the SAS URI is created.
• To avoid immediate errors due to clock skews, specify a time 15 minutes before the current time.
2. You can use AzureStorageExplorer tool : AzureStorageExplorer.codeplex.com
45. Certification process
This process includes running a special certification tool, uploading the
verification results to the Azure container where your VHDs reside,
adding an offer, defining your SKU, and submitting your VM Image for
certification.
1. Download Certification tool
2. Connect to your image
1. Linux : choose SSH authentication ( DNS + username/password)
2. Windows : use FQDN ( Fully Qualified Domain Name +
username/password )
3. Run tool
4. Send results to Microsoft (contact
53. Summary
• There’s some formalities with registration
• Create VM based on VM images from Azure gallery is quite
easy
• Certification process took some time
• Nevertheless it might took time to make publishing,
keeping in touch with folks from Microsoft helps a LOT