Looking references for a multi-tenant footprint architecture to deploy on Azure - azure

I´m interested to capture links, references and comments about multi-tenant architectures to deploy in the modality SaaS (Software as a Service) on the Windows Azure Platform.

One link for you is the Fabrikam shipping sample from microsoft - https://fabrikamshipping.cloudapp.net/
Source code - http://archive.msdn.microsoft.com/fshipsaassource
Blog posts - http://blogs.msdn.com/b/vbertocci/archive/2010/10/07/new-online-demo-introducing-fabrikamshipping-saas.aspx

You can also look at our sample and book. It is similar to Fabrikam but has the content that goes along with the code that talks about all the trade offs. We will be updating our code/content in the next month to work with the new features of Windows Azure (ACS & Caching).
You can get the book on Amazon.

Here's a brand new multi-tenant sample application, Cloud Ninja, that demonstrates several facets of a multi-tenant application in Windows Azure. There's also a related blog here.

One thing you might need for your multi-tenant architecture is to have multiple SSL certificates (one for each tenant's custom domain) for a single HTTPS binding.
I'm a Microsoft Technical Evangelist and I have posted a detailed explanation and a sample "plug & play" source-code on how to do it with Azure Cloud Services with SNI at:
http://www.vic.ms/microsoft/windows-azure/multiples-ssl-certificates-on-windows-azure-cloud-services/

Related

Guideline for Inter Service Communication with principal propagation with Cloud SDK on CF

We are trying to set two micro services where the principal needs to be propagated from the first microservice(Login happens here) to the second one (This uses cloud SDK to talk to S/4 Hana Cloud). Has this particular scenario been explored before / is there any existing guideline the Cloud SDK team suggests.
Anirban
The Cloud SDK capabilities related to Principal propagation in conjunction with OAuth flow are nicely explained in this blog article by Marco Dahms.
I hope you'll find an idea of how to adapt it to your use case. There are additional helpful links in the comments section of the blog.
If you give more details or what solutions you have already tried we are happy to help you further.
Cheers,
Artem

Developing a web application for Azure market place

I am very new to Azure and Azure market place apps.
I could not find any samples in the Web to create an web application in azure market place. I want to create simple web application then i can publish this in Azure market place. For example, this web application simply retrieves all the users in a SQL table and show the list in a html page.
I tried different solutions in web and also here https://msdn.microsoft.com/en-us/library/azure/gg607768.aspx. But could not able to succeed.
I am confused on how to start developing the market place apps. I mean which project template i should use to develop an Market place App.
Can any one please help me how to start developing the web application for Azure market place?
You may check the process outlined in this document Publish and manage an offer in the Azure Marketplace - this article is provided to help - create, deploy, and manage solutions listed in the Azure Marketplace.
Refer to the Marketplace Publisher Guide and Azure managed applications in the Marketplace for details.
Publish a Solution Template: Based on your requirement, you could use the solution templates which allows you to combine multiple items already available in the marketplace to create more powerful solutions.
Whereas, the ‘Publish a Developer Service’ provides fully managed developer services (SAAS) for developers to use in custom application development.
Note: Solutions Template has migrated to the new Cloud Partner Portal (requires registration prior to access).
Additionally, check the Marketplace FAQs (here): Who do I contact with publishing or offer management questions? : Please visit the Azure Marketplace Publisher Guide for up-to-date resource and documentations on frequently asked questions. Additionally, you can log a ticket with Microsoft Support in the Cloud Partner Portal.

Web app onboarding to Azure Web Marketplace

We checked this documentation - https://blogs.msdn.microsoft.com/appserviceteam/2016/08/26/onboarding-to-azure-web-marketplace on how to onboard our web apps in the Azure marketplace and also the GitHub link - https://github.com/SunBuild/web-app-marketplace
We have contacted MSFT on how to host our application which has an API and WCF applications as sub-applications.
MSFT replied that sub applications are not currently supported in through this onboarding model.
So, we are trying to onboard the three applications individually and link them in the Azure marketplace. We are not sure whether this will work or if this is possible.
In the sample applications in the GitHub link - https://github.com/SunBuild/web-app-marketplace, they have a hosting plan JSON file for the web app resource. Can we link the applications using this hosting plan JSON file?
We could not find any information or definition related to this hosting plan file - https://github.com/SunBuild/web-app-marketplace/blob/master/WebApp-SQLDatabase/DeploymentTemplates/Website_NewHostingPlan_SQL_NewDB-Default.json
Does anyone tried this before or know how to do this?
sub applications are not currently supported in through this onboarding model.
From the documentation, we could know if web app need Virtual application setting to be configured for web app, we will not be able to on board the application.
we are trying to onboard the three applications individually and link them in the Azure marketplace. We are not sure whether this will work or if this is possible.
In my view, if you on board these application individually, it may not enable us to bundle multi individual applications to make them link with each other. You could contact with Azure marketplace support team.
We could not find any information or definition related to this hosting plan file - https://github.com/SunBuild/web-app-marketplace/blob/master/WebApp-SQLDatabase/DeploymentTemplates/Website_NewHostingPlan_SQL_NewDB-Default.json
In the link you posted, we could find that it is an Azure Resource Manager (ARM) template that is used to define resources you want to deploy. This article explained about the Azure Resource Manager template, please refer to it.

Azure site to use as technical repository

Do we have azure based site to share technical knowledge with team. To interact with colleagues. Or Do we have ready made site which we can customize?
I'm going to make a big assumption that I understand what your question is. Assuming you are looking for some type of collaborative website engine that can easily be deployed within Windows Azure, for the purpose of collaboration amongst your peers:
If you create a new Windows Azure Web Site and look at the gallery, you'll see several ready-made options such as Mediawiki, phpBB, DotNetNuke, Joomla, Kentico, Lemoon, mojoPortal, Orchard, Umbraco, and WordPress. I'm guessing at least one of these would help you build a collaborative knowledge site for your team.
Per your comment (which makes me think I assumed correctly): here's starter info on Web Sites, from the Azure portal. Also you should download the Training Kit, also linked from the Azure portal.

Is azure for big applications only?

I've recently been asked to redevelop an .Net 2.0 WinForms application with a back end SQL Server Express DB.
One of the requirements is to allow remote users access to the application, so I've been considering hosted options to avoid VPN setup. The data is not sensitive and does not fall under data protection act, so a basic security approach for the web will cover me.
I like the idea of using Azure for a few reasons, but I'm not sure if a good fit for a users base of 5 or 6 with no real scope to grow. I've never used Azure and I plan to develop using MVC and a SQL backend as this is my main skillset.
A few points in favour of Azure in my mind are:
Tight integration with the TFS preview that I'm using for this project
Easy to setup a sandpit and a live version
Easy maintenance as I expect other hosted options will require more knowledge of underlying OS
Sticking to a full Microsoft stack should hopefully make things simpler
From what I find on the Azure site the message is all about scalability, which is great if you need it.
My question is simply, do you need a large user base, or plans to grow quickly, to use azure or is it how we should be hosting apps now?
What you're asking here is the perfect case for Windows Azure Web Sites:
You get 10 web sites for free (no custom DNS, but this is perfect for your 'sandpit'/test version). The shared mode supports custom DNS and is very cheap.
Tight integration with TFS preview and GitHub
You don't need to worry about the underlying OS, you simply publish from Visual Studio or with TFS Preview.
Sticking to the Microsoft stack is the easiest solution, but other technologies work great aswell. Since you're talking about MVC I'm assuming you are considering ASP.NET MVC, which is a perfect match with Windows Azure. Take a look at the training kit for some good examples.
The day you'll need a solution which more scalable (meaning you'll have more users and more income) you can easily upgrade to a reserved instance or to a Cloud Service (Web/Worker Role).
About your question: "My question is simply, do you need a large user base, or plans to grow quickly, to use azure or is it how we should be hosting apps now?"
Windows Azure is a cloud service platform (includes PaaS as Cloud Services, IaaS as Windows Azure Virtual Machines and also Websites suggest by Sandrino above), and with cloud services you have ability to start very small and grow as much and as quickly as your user requirement is, so you can use Azure with both cases. On the other hand there are some advantages using certain offering depend on your which service you are going to use to run your application.
I think article (Section: "What Should I Use? Making a Choice") will explain the strategy about how you make a selection among various services.
This SO discussion does talks about the difference between cloud Services and Azure WebSites as well.

Resources