Monthly Archives: June 2018

  • Azure SQL DB vs Amazon RDS

    amazon sql db vs rds

    Cloud computing business customers now have new advantages which can be leveraged against on – premise systems. Companies can now implement additional infrastructure through cloud consoles without lengthy hardware procurement. Large investments of capital for IT projects are no longer a hurdle with cloud-based technology. Database as a Service (DBaaS) is now the important factor for applications in the business community.

    With the cloud in mind, it is important to understand the differences between major providers such as Amazon RDS and Microsoft Azure SQL. Both of these offerings can be surprisingly similar and different at the same time. Here is an exploration of what you can expect between the two.

    Intended market

    Microsoft Azure SQL is clearly intended for enterprise class business applications of 5 GB or less. There are more details to Azure SQL than targeted customers so what may seem limiting but  this is actually more than meets the eye.

    Amazon RDS admittedly targets a wider range of business customers. However, the Amazon offering does have its own limitations and drawbacks when all factors are considered.


    Microsoft's cloud-based DBaaS product was designed for the cloud specifically in mind. As such, Azure SQL runs natively as a service on the Microsoft cloud platform and leverages the cloud specifically because of this design.

    Amazon RDS does not run natively on the cloud platform and is instead cloud capable. Most applications which were developed in MySQL will likely run without problems in Amazon RDS. But there is a big difference between the two in this respect.


    Azure SQL server database instances are not actually individual virtual servers. Since Azure SQL runs as a service natively on the cloud, these database instances are logical containers provisioned and customized for the customer's needs. This leverages cost and performance on the part of Microsoft and only the customers databases are hosted in these instances. This is based on a multi-tenant hardware architecture which does not allow for specific server level customization. Instead of focusing on hardware, Microsoft's DBaaS product focuses on cloud performance to fully leverage the intended advantages of cloud computing as previously noted. Microsoft focuses on only charging for what a customer needs, so sharding is advocated through the use of elastic pools and databases are therefore limited to 10 GB so that performance and cost can be achieved.

    Azure RDS also works on multi-tenant architecture which is the key element of cloud-based computing. However, RDS uses EC2 instances for its relational database services. This design allows RDS to allocate compute resources to databases while provisioning storage capacity separately. Since RDS charges storage separate from compute, there is a different cost to be factored versus Microsoft Azure SQL. The RDS standard level provides up to 6 TB of storage, and while RDS does not provide automatic resizing, Amazon's Aurora does scale automatically in 10 GB increments up to a total of 64 TB.


    Not only are Microsoft Azure SQL and Amazon RDS different in terms of deployment, they are also different in approaches to performance.

    Microsoft Azure SQL includes storage units price, charging for different tiers and performance levels. While services do allow for a database size of 1 TB and up to 2.9 TB total storage elastic pools, it is important to remember that Microsoft advocates the use of sharding with elastic pools in order to achieve performance and cost goals. Since SQL database on Azure is tiered, each level is suited to different workloads and broken down into further different performance levels ranked by Microsoft's Database Transaction Units (DTU). It is with DTU and elastic pools that Microsoft customers can address performance at cost. With the elastic pools, fluctuations in workload are shared over collective resources for hosted databases and can be spread across a single customer's databases for maximum utilization that also reduce costs.

    Amazon Relational Database Services works on the EC2 concept. Database instances are allocated to compute resources with storage provisioned separately. As mentioned earlier, RDS charges separately for storage and compute so that cost is approached very differently. To achieve improved query performance, Amazon RDS allows for added replicas in its supported read-only horizontal scaling. In this way, performance is achieved. However, in comparison to Microsoft Azure SQL, there are fewer tiers and separate pricing for storage and compute. It is more likely that an Amazon RDS customer may switch to improved database instances and not use the full amount of resources.


    Microsoft Azure SQL includes storage in its tiered pricing and performance levels. While it seems limiting that Microsoft allows for a limit of only 10 GB per database, it reduces the likelihood of performance issues from a single bloated database server. For this reason, Azure SQL is highly scalable and very price sensitive. With the latest introduction of elastic pools, Microsoft's concept of sharing databases means that growth and performance with cost in mind is as highly available as Azure itself.

    Amazon RDS, as mentioned previously, charges separately for storage and compute. It is very easy to scale the size of a database on the Amazon platform. Aurora as a database product is easily scalable in automatic increments, making RDS single database growth easy to achieve.


    Perhaps the best way to approach making choices between Microsoft Azure SQL and Amazon RDS as cloud-based database platforms is to actually measure performance. Since each platform measures performance differently, it may be important for prospective customers to use free offerings of these products in tandem with third-party performance measurement tools in order to clearly measure and compare corresponding resource performance for identical databases.

    Additionally, it is also important to keep in mind what technologies are in use in a particular organization. Amazon is not a software developer, so they offer a wider variety of database engines including Microsoft SQL server. Meanwhile, Microsoft Azure SQL is a specific product from the software developer, so they offer it exclusively as a DBaaS product.

    It is reasonable to expect that organizations which already use other database products than Microsoft SQL Server may well find Amazon RDS friendlier to their specific needs. On the other hand, organizations which are already Microsoft houses will find that Azure SQL will suit their needs best. However, it is important to consider how cost and performance are achieved on each platform and whether it suitably meets budgetary goals.

  • Azure Container Service Change

    For several years, Microsoft has offered container services via Azure as more than just a passing interest. Docker has long been considered the preeminent platform for app container development. Since 2014, Azure has offered Docker as a native service within its container product. Over the last year, Microsoft has stepped up its efforts with container services. First, Microsoft further improved its container services by offering Kubernetes as its primary container orchestration management. Then, there followed a shift in the naming of its container services from Azure Container Services to Azure Kubernetes Services. Next, Microsoft has stepped forward by purchasing Deis which is a company heavily involved in Kubernetes and then joined the Cloud Native Computing Foundation.

    With all these moves Microsoft has positioned Azure as a foremost provider of open-source application development. The container services available in Azure now operate with what are considered the industry standards for container orchestration and development.

    Containers are a way of managing resources aside from hardware virtualization. Instead of creating virtualized hardware, containers use far less server resources by functioning in a shared operating system environment. Where VMs can run a variety of operating systems, containers instead use the existing operating system for resource management. In this way, more application containers can be run than VM's meaning that companies can operate with fewer resources while presenting standardized applications to more users. Organizations are now using container application development in growing numbers which is why Microsoft could not ignore this budding market.

    Rather than compete with existing technologies, Microsoft chose to integrate industry standard software into their Azure platform to provide a wider range of application development. In 2014 Microsoft took the step of providing Docker as a native service via Azure. While there were several orchestration options available at that time, Kubernetes has since risen as the industry standard for the management of containers.

    With these moves, Microsoft now places itself squarely as a leader in the open-source application development community. Azure now acts as the platform on which both Kubernetes and Docker operate for container management and application development respectively. Kubernetes has become a major part of Azure Container Services to the point of renaming the product because it is so popular and widely used. Even Docker now chooses Kubernetes for its orchestration needs.

    Docker encourages the development of code and faster release of applications all within a shared operating system environment where resources are better used than virtual hardware. Since 2016, the use of Docker has grown in the market by leaps and bounds with an expected revenue that will quadruple by 2021. With its ease-of-use and cost efficiencies, Docker offers many companies a way to quickly develop and standardize the use of applications.

    Containers have been around for quite some time but have grown in popularity in recent years. Cloud-based computing has had as much to do with the growth of virtualization and containers. However, cost and performance are some of the key elements customers wish to leverage when using cloud services. In many cases, containers make solid alternatives for application presentation where cost and performance area a primary goal. The specific market needs mean that a cloud provider such as Azure must stay atop its container service offerings. Microsoft has not flinched from growing its cloud-based platform in such a way that it is quickly becoming a leader in the industry. Azure is now poised for solid growth in a market which will only continue to blossom within the next several years.

    For this reason, Microsoft has most recently shifted the name of Azure Container Services to Azure Kubernetes Services, by fully embracing this orchestration platform. Container orchestration is highly important for an IT environment just like any other control and monitoring system. Kubernetes has been embraced already by Docker which is the most popular container software for developing and deploying new and upgraded applications.

    Microsoft has placed Azure as the solid foundation for application deployment and development. With Azure in place, application developers can make use of a single operating systems upon which to build orchestration environments which will effectively manage containers using Kubernetes. Upon this orchestration layer, Microsoft has already fully embraced the otherwise important development by providing Docker as a native service within its container services.

    With this layering it is easy to imagine that Microsoft provides a next-generation model of cloud computing in this growing market. As such, Microsoft shifts itself from being just a software development company to one that is providing the fullest array of cloud-based computing products. Azure container services, now renamed to Azure Kubernetes Services, is the latest step by Microsoft to keep Azure as an industry leader in cloud-computing.

    It is clear with the growth of Docker for container development and application deployment that it is a highly effective product. Kubernetes was the next step for Microsoft to solidify its burgeoning container services product to bridge Docker and Azure with the best available and most desired orchestration software in the market. Microsoft's combination of these cloud-computing products makes for a powerful development option for any business in need of leveraging the most out of server resources.

    Millions of application developers already trust Docker and Kubernetes for their container needs and laying them atop Azure is a well-considered decision on the part of Microsoft, one which many cloud-computing customers will undoubtedly embrace within the next several years. Azure Kubernetes Services is the newest name in Microsoft's cloud-computing products, but one which should resound in the container marketplace as a leader in the industry while the popularity and demands for container application development only continue to grow exponentially.

    To learn more about Azure Container Service, contact our experts at - Your online source for cheap OEM, Retail & Cloud products.

  • Azure Multi Factor Authentication and Remote Desktop Services (RDS)

    implementing azure mfa

    Are you implementing Microsoft Azure Multi-Factor Authentication (MFA) in your Remote Desktop Services/RemoteApp (RDS) deployments? You better be….

    Don’t Put Mobility Ahead of Security. You Can Have Both!

    As the business landscape continues to evolve and “mobility” becomes less of a buzzword and more of a necessity, many companies are implementing mobile first and Bring-Your-Own-Device (BYOD) IT strategies to alleviate expensive hardware costs and rents. An added bonus – it gives employees the autonomy to fully execute their job functions.

    A widely used solution, and one of the most popular mobile infrastructure deployments, Microsoft Remote Desktop Services provides users remote access to company owned Windows virtual desktops, data, and applications from almost any device. Users simply log in using the Remote Desktop Client from a preferred device and gain secure access to the corporate assets they need to perform their duties.

    Whether you are deploying your Microsoft Remote Desktop Services environment on-premises, to the Microsoft Azure Cloud, or your preferred Datacenter, Microsoft RDS is the platform of choice for building virtualization solutions for every business.

    But how do you protect corporate assets and your user credentials from being stolen when using RDS?

    Add a little salt to those AD credentials.

    Is authenticating using Active Directory 100% secure? The short answer is no. Although AD provides a layer of security to your credentials, even an amateur hacker using specialized tools can quickly gain access to AD credentials.

    In the best-case scenario, a hacker will be able to gain access to your RDS deployment and sensitive data. In some cases, a sophisticated hacker will use a service attack to gain admin credentials, giving the hacker access to your company network and even control over user domain. Both scenarios are considered a data breach and put your company in harm’s way.

    Average cost of a data breach in 2018.

    According to the 12th annual Cost of Data Breach Study, the average cost of data breach is $3.62 million with an average per stolen record cost of $141. Simply put, a data breach can cripple your business even if you are able to survive it at all. 

    What is Azure MFA?

    Microsoft Azure Multi-Factor Authentication (MFA) is Microsoft’s two-step verification solution, a crucial step in protecting your RDS. Two-step verification is a process of authentication that requires more than one verification method and adds a critical second layer of security to user sign-ins. Azure MFA helps safeguard access to data and applications while meeting user demand for an easy sign-in process. It delivers strong authentication across a range of verification methods, including phone calls, text messages, and mobile app verifications.

    Azure MFA is an easy to use and reliable solution that provides an extra layer of security to protect users and your data.

    Make Microsoft Azure MFA Standard Across all Your RDS Deployments

    Although Microsoft Azure Multi-Factor Authentication (MFA) provides an inexpensive, easy to deploy, and necessary layer of security to your RDS environments.

    With Azure MFA successfully deployed, users and admins attempting to connect to company resources via the Remote Desktop Client will be prompted to enter a 6-digit code as a second layer of authentication to connect. This code is delivered automatically to the user’s mobile device, by either a phone call, text, or mobile app verification, after AD credentials are entered.

    Hackers may still be able to get a hold of your AD credentials; however, with MFA deployed, without access to your phone or network, their efforts are essentially useless.

    Full proof? Not quite. Is it necessary? Absolutely.

    Where can you purchase Microsoft Azure MFA Licenses?

    Azure Multi-Factor Authentication (MFA) is usually purchased through an Office 365 subscription as Azure Active Directory Premium or included in a bundled plan.

    Our recommendation would be to purchase a license through a CSP partner like Total Cloud IT as part of the Enterprise Mobility + Security bundle. The. Enterprise Mobility + Security includes numerous security tools necessary to protect your data on-premises or in the Cloud.

    Need Deployment help?

    Total Cloud IT is a Microsoft CSP Partner specializing in Office 365 and Azure Enterprise Deployments.

    Purchasing and implementing the right solution can be a tricky endeavor. Let Total Cloud IT take the guess work out of the equation.

    Please contact for a free consultation and get your business on the path to security.

    My name is Joel McElroy. I’ve been thinking about data security, you should be too.