Can rancher server use a Microsoft SQL Server? I’d have to manage a mysql cluster, backups, etc myself. If I could point rancher at a MSSQL database that is fully managed for me, my life would be easier.
iirc from the last meetup, I believe that MySQL is the only supported database. I did a quick search through the rancher/rancher repo and couldn’t find any mention of MSSQL.
hi, you don’t need to manage the mysql cluster…the mysql is inside the rancher server container and it is quite minimal. You just need to backit up now and than. I have used a very simple and elegant docker image deitch/mysql-backup that does the job well.
Below an example of the use of the mysql-backup in a docker-compose I created at my work to deploy rancher:
All the queries are theoretically database-agnostic, but MySQL & variants are the only supported database (and H2 for integration testing). We have no immediate plans, but if we were to add another it would probably be Postrgres.
It’s a shame MSSQL is not supported. For us Azure folks this is the only managed DB available.
It shouldn’t be that hard to add MSSQL into the mix. There is a MSSQL package available for Go that should be able to slip in in-place of MySQL’s client bindings easily with only a few changes to the code. Just a quick search turned up https://github.com/denisenkom/go-mssqldb.
Pre-packaging it, however, requires a little bit more work. But I don’t see it being more than just some light hacking to make it work on Azure!
This would be a great option for those of in corporate environments that already have HA Microsoft SQL Server setups. It makes it a much easier “sell” to management.
The practicality of this is it’s effectively a “PRs accepted” kind of feature. If someone wants to write it we’ll take a PR for it. For example, experimental Postgres support was added by a community member and merged into 1.2. But it is not practical for us (as a company) to be spending a bunch of time building support for a DB that is of no use to us personally, without a customer that wants to pay for development and ongoing testing of officially supporting it.