What Are Good, Advanced Tools For Managing EC2? [closed] - amazon-ec2

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I'm looking to manage a system (or preferably multiple systems) of machines on EC2, and at present the only way I can see doing that in a reasonable way is to extend the Typica library and build a control panel that launches, configures, and checks in on machines for me.
I don't expect there to be any prefabricated solutions to exactly my problem out there, but I'm wondering if there are any good tools for managing EC2 instances out there? Preferably in Java, but it'll more than likely be easier to learn a new language than to implement a seriously powerful control panel.
And yes, I know about Elasticfox - it's a wonderful tool, but not nearly powerful enough for what I'm looking for.

I realize the question is from 2009, so I wanted to mention that since then Amazon released CloudFormation that allows you to orchestrate the launching and configuration of complex AWS environments. Additionally, we created BitNami Cloud Hosting for managing ec2 servers, but I don't think this is what you want because is more focused on applications.

Have a look at Rightscale's tools as well; their premium tools are for-money, but their free tools are fairly comprehensive too.

In addition, there's Cloud42, but while all of these tools, along with Amazon's new official Java API interface are quite nice, none of them (except Rightscale, which is awesome, but very incompatible with what I'm doing, sadly) have any sort of functionality remotely close to properly managing an application launch on the cloud.
I suspect that Nimbus and OpenNebula are actually tools closer to what I was asking about - proper automated system management, rather than just access for manual machine management, however I have not had a proper chance to investigate either of these.
For my purposes we developed our own in house tool using the Typica library and several other tools, that allowed us to give machines abstract names and launch, configure, and issue commands to them via their names rather than instance id's or private dns's. Might be released open source, but that's not my decision unfortunately. I'll update this if it is.

AWS Toolkit for Eclipse should prolly work for your needs. It is Java oriented.
http://developer.amazonwebservices.com/connect/kbcategory.jspa?categoryID=250

Checkout the new iPhone application ( iAWSManager ) to manage your AWS resources from your iPhone .
http://www.iawsmanager.com

It seemed you want to do several distinct tasks:
1) Launch and check-in on EC2 instances - seems to be the domain of the
AWS cloudwatch and autoscale services. Maybe you can say how & why
those do not fit your needs? You might look at Ylastic too though
they probably won't work for the same reasons that RightScale won't - but you don't say what those reasons are...
2) You mention Nimbus and OpenNebula, but I think Eucalyptus (http://open.eucalyptus.com/) is what
you are after? I found the "Grid" founded projects tended to miss
the mark quite badly.
3) For configuration of the machines I think you'll want to look at
[Chef][2] and Puppet. You'll want to ask a separate question about
(resource ordering) differences between these two.

You should have a look to the different cloud management softwares available in the market. They should be able to solve your problems.
RightScale
Scalr (disclaimer: I work there): it is open-source so I you can tweak it if it does not fit your needs.
enStratus
Kaavo

You can set up a Rundeck (Java Jetty) instance with a public IP for the web UI and add the rundeck server's public key to your EC2 nodes under whatever user account you want to execute tasks as for centralized management and orchestration. Once you have populated your logical environments with your server lists, user accounts or LDAP/AD authentication, and assigned permissions for users you will be free to execute commands on any number of nodes simultaneously or via regex match and create repeatable jobs from them.
The Python boto SDK is also very useful for performing all things EC2 and creating automations against their APIs.

Related

Automatic deployment of Windows Service - tools [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
I am looking for recommendations on tools for automatic deployment of Windows Service to several machines. The tool should be able to:
- Stop/Start service
- Copy files
- Modify configuration files on each destination server according to some CSV/Excel file
Advantages: Web interface, notification via email, compression/decompression
Here are the tools I heard of, and I am starting to evaluate, but I would like to hear from people who actually applied one of these (or some other tools) in their automatic deployment process.
Chef http://wiki.opscode.com/display/chef/Home
ayehu AKA eyeShare http://www.ayehu.com/
Puppet http://puppetlabs.com/
Nolio http://www.noliosoft.com/
Octopus Deploy http://octopusdeploy.com/
Kwatee http://www.kwatee.net/
P.S. There is a similar question on SO, but it does not answer my question:
WCF service deployment - tools
Answering
Q: How many servers do you plan to deploy to?
A: Currently 20 servers in 2 data centers. The numbers might grow in the future
Q: How many users will be involved in designing and executing the deployment?
A: One would design the deployment, and somebody else (a single person) will execute it
Q: Does your deployment require Cross-tier synchronization?
A: I need to deploy only a single Windows Service, no database changes, no IIS or any other web tier
Q: How important are auditing and reports to you?
A: I would like the tool to be able to report whether its succeeded or not. It would be also nice to see a complete dashboard of all the deployed servers with their versions and recent changes.
You can try Jenkins (http://jenkins-ci.org/)
This tool provides a nice UI to configure automatic build and deploy any project. Also it have rich set of plugins available on internet.
You could add kwatee to your list. It's lightweight with a web interface for configuration and CLI tools to automate the deployment process. You can handle your target-specific parameter with built-in deployment variables but there might also be a way for you to do your own parsing of CSV files and inject them. Note that you must enable either ssh or telnet/ftp on your target computers.

What are the advantages / disadvantages of a Cloud-based / Web-based IDE? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 11 years ago.
I'm writing this as DevConnections in Las Vegas is happening. Visual Studio 2010 has been released and I now have this 3GB beast installed to my machine. (I'll admit, it has some nice features.)
However, while the install was monopolizing my computer's resources I began to wish that my IDE worked more like Google Documents (instantly available, available anywhere, easy to share, easy to collaborate, naturally versioned).
A few Google (and StackOverflow) searches led me to :
Coderun
Bespin
I'm well aware that these IDE's are missing a lot of what exists in VS 2010. However, that isn't my question. Instead, I'm wondering what benefits a web-based IDE might have? Assuming a company invests the time to create the missing features, what is the downside?
Benefits:
Code available anywhere an internet connection is available
Simple sharing mechanisms
Simplified build mechanism
Many modern IDE features available (Autocomplete, syntax highlighting, etc...)
Requires a modern browser
Drawbacks:
Code is only available where an internet connection is available
Requires a modern browser (this might be an issue in some corporate settings)
Simplified build mechanism
At the mercy of the latency gods
No native debugger
No choice of revision-control
No clear backup solution
No clear way to fully remove source code from the provider's servers
No support available
No choice over maintenance schedule of servers
No control over IDE or environment features and tools
Must trust provider's security and privacy controls
As you can see, many of its benefits are also potential drawbacks. So I think the use of a browser-based IDE is very project dependent.
However, IMHO, I don't think browser-based IDEs have enough features or provide enough necessary services to replace desktop IDEs in most modern enterprises.
Just being devils advocate here and listing the disadvantages:
Disconnection!
The fact that you don't really own any software - if you stop paying the monthly bills you can't access it any more but you can keep using offline installed products after the initial payment.
Big / valuable projects may be uncomfortable not having their source code tucked away inside a network they control - one hacked account and their main IP is out on the net.
Limited extension ecosystem - with online services there is generally a control over it like facebook for example, but nobody tells resharper what features they can include
Forced upgrade - big corporations are still running .net 2.0 (.net 4 just came out). They can be slow to move and being forced to use the latest and greatest version of the app could be a too fast a pace for them.
Exposed to bugs - some people have wierd personal rules like they dont touch v1 software. If you always have the latest version you are exposing yourself to being hit by productivity consuming errors (security updates are a different category to feature updates but still if you are running desktop software you can isolate your security exposure and decide your own reasons to upgrade)
Interoperability - perhaps your app works with another app - they might not be able to keep up with the release pace of the main app and the interoperability functionality might lag while the other developers play catch up.
Centralised point of failure - no control over backups, redundancy, etc - its in the hands of the developers of the service.
Personally I find cloud based services very convenient and as time goes on now that I have a laptop and a desktop and a work computer and my friends have computers it becomes a chore to sync data between the lot. At the current stage we are still dealing with toy apps on the web but hopefully in a few years Silverlight will put a big dent in that.
The web is inheritly less featureful than a native application. Also, how do you compile and test out your code? No sane web host will let strangers compile, run, and test their code on their servers.
Besides "ubiquitous" availability (note the quotes), you get the "benefit" of editing code on the server. So, you get to skip many of the deployment steps that are necessary for many server side apps today. There's a simplicity of editing code like you'd edit a blog, but it can also be a curse as well. You still need a way to separate development from production.
But that said, if you use the Blog or many CMS applications, millions of folks use "Web based IDES" every day, so there's obviously applicability for specific application areas. I can tell you there are times I wish fixing a quick bug on a deployed app were as simply as clicking an "edit" button.

Web Hosting for OS Commerce [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
I am trying to get started with some SQL software. I would like to know the best webhosting provider to go with. The software is called "OS Commerce" its quite terrible but I am used to working with it from work. It needs C-Panel and so on. Any recomendations?
Pretty much any webhost which runs *AMP (Apache, Mysql and PHP) will be able to run osCommerce.
When choosing a webhost I'd reccomend you steer clear of any host that offers any kind of "unlimited" bandwidth / diskspace. If you read the small print you'll see that it's not actually unlimited, so chances are they're overselling their resources (Cramming as many people on to one server as possible).
When I'm looking for a host I always check to see if they have a public forum, and if they do have a look around to see the attitude of the community & how quickly (if at all) staff respond to support requests. As Stephane said, Webhostingtalk.com is also a good resource for finding out a host's reputation.
Another good technique is to google "COMPANY_NAME sucks" or "COMPANY_NAME downtime". The results can be very interesting.
I've personally had good experiences with Unitedhosting.co.uk & webfaction.com
Stay away from 1&1, Godaddy etc. 1&1 are notorious for their poor support and it's very hard to cancel a contract with them.
EDIT: osCommerce won't require cpanel - pretty much every host will provide you with some sort of interface for managing databases etc.
EDIT2: Also, from what I've heard the original osCommerce project is no longer maintained properly, you might be best going with the new osCommerce project
WebHostingTalk.com. It's the best discussion forum I've seen where people review and talk about the various web hosts
The requirements for OSCommerce are here http://www.oscommerce.info/kb/osCommerce/Installation_and_Upgrades/46 all that is needed is php and access to a mysql database.
right now im using http://www.justhost.com/, things seem to work fine.
osCommerce should run on any LAMP stack so pick whichever host you feel comfortable with.
You could run it on your own computer for private development (XAMPP is popular). If you still want to find a host, look for one local to you and keep regular backups!
I've used ASmallOrange in the past, give them a try if you want. Everything worked great when I used them.

Best Practices for Software Organization [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 9 years ago.
Background: I'm a windows developer at MegaCorp(tm) and I am getting new hardware soon.
Question: Are there best practices around setting up my developer software installs?
Details: I've got my main IDE (Visual Studio/SQL Management Studio), but there are also tools that I'm testing out, additional tools I can't live without, and future accomodations.
All my code is stored on a remote server in SourceSafe so I don't need to really accommodate for that, but I'll regularly jump into perl/python/php for separate/side tasks.
The only advice I can give you is set up your machine in a way you need it and you can work with and then save an image so that you can return to that state easily.
Also, don't forget to go and get all your SysInternals goodies. Oh, also remember to export your rss feeds before you upgrade.
You should also install the Windows SDK (which usually doesn't come with VS), as there are many useful tools there that can help during development.
If you plan to use .NET, look into Reflector and LINQPad.
If you plan to use ASP.NET or do any web development at all, look into Fiddler and Firebug
Use a VM image, then the project has a VM image that is version controlled.
Tools and OS are recoverable years later.
Your name will shine on asa voice of sanity and configuration management.
Get rid of SourceSafe
Seriously, don't store anything in SourceSafe. There are many other, better Version Management Systems out there. What's wrong with SourceSafe? I strongly urge you to consider reading the following posts:
http://www.codinghorror.com/blog/archives/000660.html
http://www.highprogrammer.com/alan/windev/sourcesafe.html
http://www.developsense.com/testing/VSSDefects.html
Especially the last one - it goes into lots of detail about the problems with VisualSourceSafe. What should you use instead? Wikipedia has a great comparison of many different Version Management Systems for you to compare. You can look here to find out which ones integrate nicely with Visual Studio.
vim - VI Improved
Beyond Compare - best diff tool.
If you use multiple machines (like
one for dev one for test)
Synergy is invaluable.
If you occasionally need to edit
icons Paint.NET is pretty good.
As everyone else says kill source safe.
I have to agree regarding SourceSafe, whether or not you have the ability to opt-out of using it or not will obviously affect your ability to addopt a new SCM tool but if you can I highly recommenf the free VisualSVN Server for managing subversion and / or hosting repositories.
If you are prepared to pay for the licence you can also buy the VisualSVN plugin for visual studio, as a student I can't afford that but I have used AnkhSVN which integrates with VS through the source control provider APIs providing a nice native looking interface in VS 08
Other tools I can't live without:
TestDriven.NET
DocProject for easy generation of MSDN-style code documentation. I believe it uses sandcastle to do the real work but sandcastle itself is difficult to use and this is the most sane UI over it I've seen and managed to get working without massive amounts of work.
Paint.NET for graphics work
TortoiseSVN is another really good SVN client that I use for doing things like merging to trunk because I am more familiar with the interface and I think it's nicer than AnkhSVN in some areas

Is there any free tool for monitoring BizTalk applications remotely? [closed]

As it currently stands, this question is not a good fit for our Q&A format. We expect answers to be supported by facts, references, or expertise, but this question will likely solicit debate, arguments, polling, or extended discussion. If you feel that this question can be improved and possibly reopened, visit the help center for guidance.
Closed 10 years ago.
whether command line or GUI, I'd be interested in testing every of them.
Your question is very generic and all the answers above assumed various things. When it comes to BizTalk monitoring its means different things to different people. Your BizTalk administrator might monitor the overall health of the BizTalk environment by opening the BizTalk Administration console. BizTalk Admin console allows adminstrators to deploy and mange BizTalk applications, in addition it also allows to monitor the health of the running systems. He/She can query for things like running instances (Orchestration, Messaging), suspended instances (resumable/non-resumable), Failed routing messages, failed subscription messages etc etc. BizTalk admin console can also be accessed remotely from a different machine if you have installed BizTalk Admin bits while installation via a MMC snap in.
Apart from this you also have HAT (Health and Activity Tracking in 2006, not in 2009 onwards), which allows you to do certain monitoring. But to access HAT you need to be on any one of the BizTalk machines.
Next comes BAM, which will require some custome configuration or in some cases some custom coding based on your requirements to capture some runtime monitoring data.
Next you got various performance counters, which will give you lot of statitical information like number of orchestrations running inside the host instance, spool size, number of messages received/send, etc etc.
I didn't find any necessity to go for a third party software for any of my monitoring requirements.
HTP
Saravana Kumar
BizTalk Server MVP.
If you want to monitor what a BizTalk application is doing, you should use Business Activity Monitor (BAM). BAM allows you to track fields from messages or context, and track milestone shapes in orchestrations. There's a BAM training kit here: http://msdn.microsoft.com/en-us/library/cc963995.aspx
you can always use the smtp adapter to send failed messages to yourself.
also performence counter is a great way to monitor biztalk - there is a lot of very useful data there.
BizMon
There is an new BizTalk monitoring tool called BizMon. You can check that out here. I think it does what you like.
We use this for our three mid-sized BizTalk environments (~50 BizTalk application in each) and it works good for us. But you can try it for yourself. The tool is free up to 5 applications (if you're however monitoring more applications than that you'll need a license).
FRENDS Helium
Another tool that might be worth a test is FRENDS Helium. I haven't tried this myself but they have a beta one can request and try out. Don't know anything about pricing or things like that though.
Do you mean monitor the status of each app? The only monitoring tools I know of are the ones from Microsoft here
If you want to monitor what the Biztalk app is doing, you'll need to put logging code into the app itself and then monitor the log (database table, event viewer, etc).
If you want to monitor the number of orchestrations being executed per second bu an application, or the number of messages going through a port, you can use Performance Monitor (perfmon). When you install BizTalk Server, a large number of new performance counters are installed.
If you want to be notified when a BizTalk application starts and stops, you can use WMI. Check into the sample WMI scripts included in the documentation for more info.
For performance monitoring, you can use PAL (http://www.codeplex.com/PAL). You can also use the Message Box Viewer to analyse the health of your system. And one other tool that I found recently and seem quite coold is the BizTalk Documenter (http://www.codeplex.com/BizTalkDocumenter). It is a must have in the tool box of any BizTalk developer.
Minotaur has gained a lot of ground in the past year as an effective BizTalk monitoring tool. It is easy to install and setup and inexpensive. Visit Raging Bull Tech's web site to investigate Minotaur as a fresh alternative to some of the product in the market today.
Minotaur V2.0 is set for release end of January 2011 and if feedback from the BETA testing is anything to go by, it is set to take the market by storm.
If you wish to put an end to your monitoring problems, go with the best in BizTalk monitoring out there, Minotaur.
You can take a look at http://sourceforge.com/projects/biztalkmonitord <- opensource FREE biztalk monitor! Including SMS warnings, and live feed monitor, works great for us!
I've its not the easiest to setup (but when its down nothing can compare!)
The best is that its multi -environment firendly
Monitor includes:
Specific fileshares
Suspended and active message in an environment
Suspended and active messages in an application
Receive Ports, Send Ports and Hosts + built in powershell commands to restart them!
Free space on fileshares!
cheers, and good luck!

Resources