Highlighted

ColdFusion on Azure and AWS

Enthusiast ,
Jul 27, 2018

Copy link to clipboard

Copied

I'm looking to get some hands on experience with Azure and AWS.

Can anybody tell me if there are any gotchas that I should be aware of when trying to run CF2016 on either of these platforms?

At the moment I am running on a cloud based system using VPS servers, the ISP has a great set of dashboard controlled features, for Firewall, load balancing etc, very easy to set up and use.

I'm wondering if setting up in Azure or AWS would be as simple? Can I set up a VPS in the same way, install CF and roll with it, or is this going to be a very different and possibly challenging task?

TOPICS
Server administration

Views

2.5K

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more

ColdFusion on Azure and AWS

Enthusiast ,
Jul 27, 2018

Copy link to clipboard

Copied

I'm looking to get some hands on experience with Azure and AWS.

Can anybody tell me if there are any gotchas that I should be aware of when trying to run CF2016 on either of these platforms?

At the moment I am running on a cloud based system using VPS servers, the ISP has a great set of dashboard controlled features, for Firewall, load balancing etc, very easy to set up and use.

I'm wondering if setting up in Azure or AWS would be as simple? Can I set up a VPS in the same way, install CF and roll with it, or is this going to be a very different and possibly challenging task?

TOPICS
Server administration

Views

2.5K

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Jul 27, 2018 0
Adobe Community Professional ,
Jul 27, 2018

Copy link to clipboard

Copied

I have quite a bit of experience with CF on AWS. I don't have any experience with CF on Azure, but I do have some Azure experience and I expect it would basically work the same way for CF as for other things that aren't .NET apps. CF on AWS is pretty straightforward. You can install CF on EC2 instances just like you'd install it on on-premise VMs or hardware. Everything works just fine. One of our largest CF customers, Signupgenius.com, is on AWS, as well as several other large-scale CF customers.

I can't really compare your current dashboard to what you get with AWS. But AWS has a pretty good dashboard for configuring all of the items you listed. The problem with the AWS dashboard is that it also has tons of other features, and just finding the things you want in there can be pretty complicated. Anyway, I generally recommend that you not use the dashboard and use the AWS API instead. This lets you preserve your infrastructure setup as code, which can be incredibly valuable. Needless to say, though, not everyone takes this advice - sometimes I don't take it myself!

The real problem with CF on AWS is better described as the real problem with any proprietary software on AWS. You can't use some of the most interesting features of the platform unless you're willing to pay for them even if you don't use them. For example, let's say you want to have auto scaling. Auto scaling lets you have a pool of servers that automatically increases or decreases based on incoming traffic. Well, you pay for CF per server, so you kind of have to know how many servers you're going to have in advance. So, a lot of CF customers will simply over-provision here rather than try to provision as exactly as auto scaling allows. If on the other hand you were using something like PHP (yeah, I know, yecch), you wouldn't have to worry about that and you could use auto scaling to its fullest extent. Another aspect of that problem is that you can't use things like Lambda to run CFML code, because it's a proprietary language that Amazon will simply never support. This probably isn't something you really care about, but it would be nice to run CFML in a serverless environment.

If you're running CF on Linux, you get more options, like the ability to use Docker containers and things like Kubernetes to orchestrate said containers.

Azure is basicallly going to be the same environment. You'll have to use Azure VMs instead of Azure Web Apps, etc. And don't forget Google Cloud Platform, which is just as good as Azure for this stuff, and arguably better, and may be as good as or better than AWS depending on what features you want to use.

Dave Watts, Fig Leaf Software

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jul 27, 2018 2
Enthusiast ,
Jul 27, 2018

Copy link to clipboard

Copied

Using AWS can be as simple as spinning up a instance on EC2, this is pretty easy to figure out and get going. The problem with AWS is also its power, it is so configurable that spinning up an instance on EC2 will have 30-50 configurable options - I think that can be overwhelming for some.

Adobe does have some ColdFusion AMI's on the marketplace that have hourly licensing, so you should be able to use features like auto-scaling with those instances, but if you are bringing your own license key then everything Dave said about that would apply.

Your best bet is to give it a try, you can do so for free in the free tier or even just spinning up a server for a day to play around can be very cheap. I use AWS all the time for setting up temporary servers to test stuff.

You may find that it is too complex for your needs, or you might just love it.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jul 27, 2018 1
Adobe Community Professional ,
Jul 27, 2018

Copy link to clipboard

Copied

Yeah, I left out the CF AMIs. I don't really like them for a variety of reasons, but you can use them for auto scaling. And it is worth just jumping in and giving it a try, as long as you remember to turn everything off when you're done.

Dave Watts, Fig Leaf Software

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jul 27, 2018 0
Enthusiast ,
Jul 31, 2018

Copy link to clipboard

Copied

Thanks guys for the in-depth feedback, much appreciated. It looks like I am going to have to roll up my sleeves and get stuck in to see where it takes me.

With my current provider I can easily clone a VPS, and just as easily set up load balancing across as many clones as I like, plus I have the ability to extend the performance/storage etc. of each server, it takes seconds to add more cores or memory, I think you have to reboot, I can't remember it's been a while since I did it.

With the AWS/Azure, is it a similar set up where if I need more raw power I need to manually request it?

With regards to running CF with my own license, yes that would be a bit of a pin if I spin up new instances (I guess there is a clone option).

One of my challenges is that one of my platforms receives images from a third party by receiving API data, and then recovering and then locally saving the images. If I spin up more servers the physical files will be out of sync, and this impacts me wherever I have my servers, that's a design issue that would need to be addressed, I guess a separate server just to dump these images under a sub-domain through a local /internal network setup (which might be more complex than it sounds)

Can you also create an internal network? With my current provider (fasthosts.co.uk) I can create an internal network of my servers which enables me for example to put my SQL on a standalone server, and then communicate internally on a 192. IP without having to reveal the server to the outside wall, siting it behind a firewall that they also provide.

So if I understand correctly, with Azure I could get full RDP server access in the same way I do with my current VPS? Also, it advertises as free until I choose to upgrade, am I missing something or is there an adequate service to try it out for free and maybe even run a site or two on it?

I would hope I could do all of the above with AWS and Azure, the 50+ options do sound like a bit of a challenge though

Mark

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jul 31, 2018 0
Adobe Community Professional ,
Jul 31, 2018

Copy link to clipboard

Copied

Again, I'll focus on AWS because I know that best.

You can create AMIs (machine images) from existing EC2 instances and use those as clones. You can allocate resources when you spin up a new EC2 instance from an AMI. I'm pretty sure you can reallocate resources for existing EC2 instances but it comes up so rarely that I don't really think about it much. That will require a reboot, I think.

The recommended approach is to store external data on something other than your CF instances. In AWS, you have S3 and EFS. EFS requires that you use Linux for your CF instances, but it's a better approach in this use case if you can use it. In general, in the cloud, you want to minimize the amount of work you need to do on your instances (search "pets vs cattle" for more information about this approach). This requires a bit more work during your initial setup, but is pretty easy to do and ultimately requires less work over the runtime of your application.

You can create internal or external VPCs, and you can hook things together in interesting ways if you like.

You can get RDP access on AWS or Azure for Windows instances. If you're not on the internal network, you have to figure out how to get on that network in order to RDP to an instance on that network. Honestly, I'd recommend you look at the SQL services offered in AWS or Azure instead of fiddling around with actual database servers.

AWS offers a free tier for many of their services, but it's easy to exceed the free tier limitations if you're not careful. I expect the same is true in Azure. You won't be able to run much if any production stuff on the free tier, but you can learn how it works.

Dave Watts, Fig Leaf Software

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Jul 31, 2018 2
Community Beginner ,
Aug 02, 2018

Copy link to clipboard

Copied

Thanks Dave.  I am looking at moving over to AZURE as well.  This was really helpful.  It confirmed a lot.    Over the next few weeks, I am going to spin up CF18 on Azure.  As soon as I know.  I'll reply to everyone on this thread.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Aug 02, 2018 0
Community Beginner ,
Aug 06, 2018

Copy link to clipboard

Copied

Hello again.  I loaded CF18 on Azure last Friday.  I did not encounter anything out of the ordinary when I loaded to software.  Since I am on a free trial, I selected a very small VM. (B1), installed IIS and CF.

I would recommend going to a bigger server instance since the overall environment is slow....Other than that, seems to work fine.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Aug 06, 2018 0
Enthusiast ,
Aug 24, 2018

Copy link to clipboard

Copied

So if I understand correctly I could set up a free instance and literally have no bill for hosting?

I do have a particular site that has some HTML files only that need to be served under a subdomain, so I'm wondering if I could use one of these free instances just to server this static pages from, all I'd need is IIS for that.

If I understand correctly, I could also choose to install CF, and I could have a VPS with full desktop access just like I do not with my current virtual servers, right?

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Aug 24, 2018 0
Adobe Community Professional ,
Oct 17, 2018

Copy link to clipboard

Copied

Sure, you could set up an EC2 instance with whatever you like. But if you're doing this yourself, you have to know a decent amount about the networking that you may take for granted when you're working with a VPS vendor. Also, that free tier is very minimal.

Dave Watts, Fig Leaf Software

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 17, 2018 0
Explorer ,
Oct 17, 2018

Copy link to clipboard

Copied

Good information but, of course, I am looking for something a little different.  Specifically, I would like to have someone review our existing system, and then make recommendations on how to migrate it to either AWS or Azure.  I have tried Azure, which worked well on the CF side, expect for connectivity with a test SQL database on Azure SQL.  I need more detailed guidance on the "how-to" regarding migration.  Any recommendations would be appreciated.

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 17, 2018 0
Adobe Community Professional ,
Oct 17, 2018

Copy link to clipboard

Copied

That is a very broad question. If you just want to build a replica of your current infrastructure, say, one web/app and one database server, there isn't much to it - you set up two virtual servers in AWS or Azure and configure them just like you'd configure two local virtual or physical servers. But the value of moving to the cloud is really that you can do other stuff, like add lots of mechanisms for scalability and redundancy. Want to have an auto-scaling pool with a shared filesystem? You can do it. Etc, etc, etc. So the real question when you're asking how to migrate is, what exactly are you trying to build?

As for your Azure SQL issue, I suspect it was configured to use Windows authentication. CF by default uses "mixed-mode" authentication. You can probably change either the database or CF to work the other way.

Dave Watts, Fig Leaf Software

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 17, 2018 0
Explorer ,
Oct 18, 2018

Copy link to clipboard

Copied

Dave,

Thanks for the replies.  Yes, planning is a big issue for us as, while we know what we have, what we want, and the plethora of options that AWS and Azure offer, make planning a challenge.  That's why we are also looking for some direction from knowledgeable sources.  I have reached out to some businesses that have expertise in these areas, and await their reply.  In the meantime, we will have the "what are our goals and objectives" discussion.

Thanks,
Scott

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 18, 2018 0
New Here ,
Oct 29, 2018

Copy link to clipboard

Copied

Likes

Translate

Translate

Report

Report
Community Guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
Reply
Loading...
Oct 29, 2018 0