We have always used Trac as our issue tracker. Its ease of use makes it easily accessible to out clients, the integrated wiki permits us to write project documentation while we develop, and being completely open sourced makes it possible for us to personalize it whenever we fell the need to.
The only thing missing from Trac was, up to version 0.10, a good project planning system. Since version 0.10, probably due to Genshi integration and other code refactorings, plugins developers started creating a massive amount of tools for project planning, and for Scrum especially, including burndown chart generation systems.
However, up to now, our Trac was installed on an "old skool" internal server, on which also our SVN and continuous build server were running. When we tried to update Python to latest version, an impressive number of dependencies and conflicting updates were reported.
So we decided to migrate everything on cloud based virtual machines. The main advantage in this case would not be scalability, cause Trac is not designed for massive scaling, nor on demand provisioning, cause we never turn off our Trac and SVN, but simply having many smaller servers, each one independently configured without conflicts between library versions.
We are working on selecting and personalizing Trac plugins to offer a better service to out clients, and we already have moments of joy looking at burndown charts appearing on wiki pages of our projects.