For an enterprise I would suggest working with a nextcloud partner. Unless they have a sizeable internal IT team of course.
Selfhosted
A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.
Rules:
-
Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.
-
No spam posting.
-
Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.
-
Don't duplicate the full text of your blog or github here. Just post the link for folks to click.
-
Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).
-
No trolling.
Resources:
- selfh.st Newsletter and index of selfhosted software and apps
- awesome-selfhosted software
- awesome-sysadmin resources
- Self-Hosted Podcast from Jupiter Broadcasting
Any issues on the community? Report it using the report flag.
Questions? DM the mods!
I'm managing one for about 250 users. It's been pretty reliable, but do prepare for some amount of trouble once in a while, including work on the database if things go really south. Nothing too difficult though if you understand SQL and web backends well enough.
It's best to keep the installation clean and not install too many apps for the sake of performance.
So overall I'd say it's worth it, yes.
Do not expect you can offer this service for a competive price against cloud prices. Caring for a company IT system is a big challenge and requires more work the more users there are.
For a company this size: make a clear contract. Consider how much time you need for setup/installation, monthly hours for maintenance, monitoring and at least daily(!) backups. Let them choose if they want it with a failover and charge for the required hours and material. Also put in the contract when they can expect support from you, including a clause for a holiday substitute admin (if needed). Then put a pricetag on support hours for holding people's hands when they "can't find that file they uploaded a week ago and it is surely a server issue" and put a pricetag on engineering hours for any modifications they might want, like installing any plugins they deem useful for themselves. Hardware prices, traffic, rack space and power should be included as well. Have a good plan for updates, choose your distro wisely, do not rely on autoupdates.
Play all this through in your head, add up the hours, choose a fair rate and then you have your pricetag.
Cloud will always be cheaper, because they have their infrastructure already deployed. Building from the ground up is more expensive, but I think it is worth it. Will they?
Yeah, for enterprise you aren't going to roll it out yourself. They'd use a partner company to help you set it up and configure it for their needs to ensure that it can continue to scale and provide monitoring solutions. It's too much for one person to do that.
Where are you hosting it? Onsite? Megacorporation's clod solution? Your cable line? What's your data recovery plan? 200+ users can generate a lot of data. What's the security plan? You do know how to harden every aspect of each subsystem, right? What's the monitoring plan? Not just "is it down" but way more granular for each subsystem. How many tech and phone support people will be on call to help?
You could probably roll it out in a way that would work, but at that scale you should really be using a pro. Especially for a "friend". Don't want a tech problem to kill that friendship.
useful thing to remember about these systems: you fuck up and it’s a high likelihood literally nobody at the company can do any work because all their files are inaccessible
that’s like… $10000/hr in lost man hours alone, let alone reputation from not being able to respond to customers accurately, possibly missed SLAs or other contract obligations
unless your company is all about tech, it’s highly unlikely your IT team has the skills necessary to take on that level of responsibility
I once did an internship at a small (think 10 people) company that was selfhosting all their stuff. I was asked to fiddle with the services and (of course) caused a downtime of a few hours. Boy were they pissed. Now, when I think back, I can't believe they were selfhosting that shit.
I can't believe they gave an intern that much power, no disrespect.
Interns are there to learn and gradually be trusted. Not given the wheel and a "go get em sport" pat on the back.
My biggest issue with Nextcloud is there is no LTS version. Employees do NOT like things constantly changing, and Nextcloud has some pretty major changes every 4-6 months. As an admin you really have to keep up to date, or you run into trouble, not just with security, but with trying to upgrade later, as you can't upgrade across major versions.
In my opinion, a 2-3 year supported LTS version would make Nextcloud way more attractive to hosting in stable environments.
I think the key question is to ask what about Googles solution is driving them to look elsewhere. Once that’s known it’s possible to work out if NextCloud deployed in house or via a partner is the right way forward, or if another cloud offering might be more suitable.
Personally, I think yes, it is worth it, However your friends bookkeeper might shit a brick. Building up IT infrastructure from the ground up is not cheap. Although storage cost is coming down.
Seriously, running with Google and company will be cheaper in the short term. What you can potentially gain doing it yourself however is resilience from catastrophic 3rd party events. If your not dependent on a third party for your IT infra, it doesn't matter what they do, or don't do. For a recent example: https://www.msn.com/en-us/news/technology/influxdata-apologizes-for-deleting-cloud-regions-without-performing-scream-test/ar-AA1dIPX2
I wouldn’t recommend it, a company that size is going to need to guarantee uptime and performance and they are going to need a big cap-ex purchase on servers and storage networks to get it done and get enterprise support and hire staff to maintain it.
For a smaller company that already has the infrastructure to run it, it makes a bit more sense but I wouldn’t recommend it for a small company with nothing or a large company that’s already moved to cloud.
Just one man’s opinion though, I don’t know the situation.
Shouldn't me more convenient for bigger company where there already is a good and big IT department? Sure they need hardware and to allocate people dedicated to that, but cloud storage is costs too.
I got really long winded on this one sorry. TL;DR yes it would be easier for a big company’s IT department to handle rolling their own nextcloud but larger companies also have more obligations that make it a bit more complicated. A smaller company will need less compute and storage and manhours to manage a next cloud instance and so they can get away with it if they have a great IT person/staff
An on-premises deployment is going to take more manpower to support and maintain than a cloud deployment and an organization of 200 like OP is probably going to have 5-6 IT people who are already stretched thin.
And cloud storage is definitely a cost just like on-premises but it also comes with SLAs with guaranteed uptime and has factors of scale to be able to make delivering uptime, performance, security, and updates a lot more cost effective than rolling your own nextcloud. I’m sure it can be done in a way that is cheaper than $4000 a month or whatever 200 workspace licenses cost but not without taking a shortcut. I wouldn’t run it without a dev, prod, backup and DR server and the salary to maintain those would be just as high.
I’m making assumptions based on my experience and organization’s size and making an educated guess about his friends situation. It could be totally different and they could still have capable hardware and storage from before their cloud migration. I just know that if I was in the same position I would not want to be the one in charge of rolling the company nextcloud when down time is money lost.
We use nextcloud where I work, it is a smaller company (less than 100 people) but it works just fine.
It is worth it. How much you charge is up to you. A good start would be to use the pricing on Nextcloud's site as a gauge, seeing as you will be doing more than just the application. You will do the servers, VMs etc. as well. If your friend is at all worried about privacy, then get their company onto Nextcloud. That is my 2c. GL!
Unless the data you hold is so sensitive that it cannot be stored in the cloud, I think a cloud approach is the way to go. That way you get predictable costs and reliable uptime