Important announcement regarding FreeNAS Corral

Status
Not open for further replies.

JoshDW19

Community Hall of Fame
Joined
May 16, 2016
Messages
1,077
My question was based off of that knowledge that you linked, so let me rephrase the question.

What was it about FreeNAS 10/Corral that made it much more difficult to stabilize:


I assumed it was due to the way the development team approached specific features and again, I assumed that the solution was to cut those features out to reach stability. That's the only way you guys can push out a 9.10.3 next month.

So, what were those features that aren't being implemented or what makes 9.10.2 more suited to be the starting point. Is it iSCSI? Backwards compatibility? Resource usage? There must have been a smoking gun to have scrapped nearly 2 years worth of work.

Understand I'm not privy to everything the big wigs discuss, but being active here on the forums, my guess would be the Montage framework was one big part. Even the Corral team seemed to know that it wasn't working and were planning to replace it with Angular. That was already being planned even before release afaik. There was so much development time poured into that UI... There were simple tasks that weren't functioning like disk replacement to name a big one. Docker support seemed to be struggling pretty bad too from discussions here on the forum. I'm not going to mention every issue that came up as it's easy to generally browse through and see. It wasn't as simple as just writing a fix for some of these things. Again, that's just my take on things but hey..."Jim, I'm a forum admin not a software designer." </mccoy voice>
 

raidflex

Guru
Joined
Mar 14, 2012
Messages
531
As someone who has been using FreeNAS since version 8.0, its really sad to see politics basically waste 2-3 years of development. From the looks of the new UI and I hope I am wrong it just looks like an updated 9 UI and not actually redesigned to improve workflow/usability like 10 did. There really needs to be more transparency if this is going to be an open source project. While I did not personally move over Corral I feel for the people that spent many hours migrating. While I would not have migrated a system in an enterprise environment this was still a RELEASE version and therefore support is expected.
 
Last edited by a moderator:

Py7h0n

Cadet
Joined
Nov 20, 2016
Messages
8
UFF .... my first impression was WTF ...
really WTF just happened?
It's late April joke or WHAT?

But needs balls to have this decision ... And I now understand why ...

I upgrade to Corral because of Docker; I really hate old JAIL and a few plugins for them.
I spend more that 70 hours setup and migrate all my staff ...

So now when is Corral most likely dead ...

really PLESE All developers from FREENAS team,
make the upgrade(downgrade) to new majority version easy as possible, for us who spend days setting up our Corral ...

One click to "update" and after restart, only new GUI will be great :)

As above - I am in the same boat - But worse because of my discovered 10TB disk issue. I cannot use version 9 if it is not FreeBSD 11+ based.
So much effort put in to migrate and make it all work on Corral - Please make the shift with containers and vm's just work shifting back! Starting over again is NOT something I want to do again!
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
For instance, did you know the DHCP protocol was rewritten in a python library and is leading to several compatibility issues?
WWWWWWHHHHHHHHYYYYYYYYYYYYY???????????????????? I thought it was a wrapper for dhcpd!
 

JoshDW19

Community Hall of Fame
Joined
May 16, 2016
Messages
1,077
Thanks for the feedback @raidflex and @Py7h0n. We sincerely appreciate it. I can definitely understand the frustration. I think it's important to keep in mind this wasn't about politics. It was about a product that wasn't ready for prime time. We can't blame anyone but ourselves as a company for that. We should have done better and I apologize on our behalf.
 
  • Like
Reactions: FFK

raidflex

Guru
Joined
Mar 14, 2012
Messages
531
First I would like to make it clear this is my personal opinion. Do not take it in anyway as official reasons.

It was not about anything the user can see, its all about what is under the hood.
The following image illustrates it pretty well:

View attachment 17798

In my vision thats exactly what happened.
Corral was very beautiful looking, from outside. The UI is quite beautiful, the CLI did what it was supposed to do, it has shiny dockers.

There are several things that did lead to this.

First point is the UI. Apparently writing full blown Rich Internet Applications is hard. As you did read in this first post the core of the UI was MontageJS, it does not matter anymore why it was chosen, but even the developers who helped write this framework did not like it. It was already expected to be replaced to something different but were stopped by someone so the product could actually be released. The whole UI was built without a single automation test and there are probably about 5 people in the world who really understand this framework. So how were we supposed to keep supporting this virtually dead javascript framework (to us at least) or completely swap it with something else and without automatic testing in place? its like getting a Muscle car, put the engine of a Ferrari _while_ its still running and expect everything to keep working perfectly. So yeah, not happening...
Even after this long period of development there were basic things that simply did not work in the GUI. One can't even replace a disk from GUI. It only works well in Chrome. It does not provide historical reporting stats. There is no documentation. Translation is not supported, it was not built with that in mind.

The backend architecture is over engineered. There was no such thing as "do not reinvent the wheel". For instance, did you know the DHCP protocol was rewritten in a python library and is leading to several compatibility issues? The well known, stable and worldwide used system logging (syslog-ng) was rewritten to a python log daemon (from scratch), making diagnosing debugging from a support perspective much harder? The core of the middleware was about to be rewritten from scratch using another language? Cython modules created without thread-safety in mind (e.g. smbconf) which can cause service corruption?

Several changes were made to FreeBSD which could not be upstreamed, making it very difficult to maintain. ZFS was modified to have a special aclmode making it incompatible with every other ZFS implementation (breaking replication for instance).

The whole middleware does not have a single functional test. Thats right, whole middleware was built without a testing harness. (Fix one thing, break another).

The system is bloated. Have you actually tried running a "top" in a stock system and check how many "auxiliary" services there are? Close to a dozen python services, eating up a lot of RAM.

There is no documentation for the new REST API. There is no compatibility whatsoever with the old REST API rendering multiple applications useless (specially for the enterprise side, e.g. Zabbix, vCenter, etc).

Several design decisions were made in the course of development that simply made a seamless migration from old codebase to Corral extremely hard and painful.

The list goes on, but I will stop here. I am probably getting too technical.
All of that (and more) made us realize it was going to be a lot more work to bring it to sanity then incorporate the features on the 9.10 codebase.
Also to give you an idea, the new experimental UI (which you can find in 9.10 nightlies) was written in about a week, works on every major browser (even mobile) and supports translation out of the box. That has shown us it does not need to be complicated.

While I understand why you are abandoning Corral I am still amazed at how it even got to this point. If all of this was true why did this not happen months, if not years ago. As I stated above this just feels like purely politics getting in the way of communication and development.
 

Stanri010

Explorer
Joined
Apr 15, 2014
Messages
81
First I would like to make it clear this is my personal opinion. Do not take it in anyway as official reasons.

It was not about anything the user can see, its all about what is under the hood.
The following image illustrates it pretty well:

View attachment 17798

In my vision thats exactly what happened.
Corral was very beautiful looking, from outside. The UI is quite beautiful, the CLI did what it was supposed to do, it has shiny dockers.

There are several things that did lead to this.

First point is the UI. Apparently writing full blown Rich Internet Applications is hard. As you did read in this first post the core of the UI was MontageJS, it does not matter anymore why it was chosen, but even the developers who helped write this framework did not like it. It was already expected to be replaced to something different but were stopped by someone so the product could actually be released. The whole UI was built without a single automation test and there are probably about 5 people in the world who really understand this framework. So how were we supposed to keep supporting this virtually dead javascript framework (to us at least) or completely swap it with something else and without automatic testing in place? its like getting a Muscle car, put the engine of a Ferrari _while_ its still running and expect everything to keep working perfectly. So yeah, not happening...
Even after this long period of development there were basic things that simply did not work in the GUI. One can't even replace a disk from GUI. It only works well in Chrome. It does not provide historical reporting stats. There is no documentation. Translation is not supported, it was not built with that in mind.

The backend architecture is over engineered. There was no such thing as "do not reinvent the wheel". For instance, did you know the DHCP protocol was rewritten in a python library and is leading to several compatibility issues? The well known, stable and worldwide used system logging (syslog-ng) was rewritten to a python log daemon (from scratch), making diagnosing debugging from a support perspective much harder? The core of the middleware was about to be rewritten from scratch using another language? Cython modules created without thread-safety in mind (e.g. smbconf) which can cause service corruption?

Several changes were made to FreeBSD which could not be upstreamed, making it very difficult to maintain. ZFS was modified to have a special aclmode making it incompatible with every other ZFS implementation (breaking replication for instance).

The whole middleware does not have a single functional test. Thats right, whole middleware was built without a testing harness. (Fix one thing, break another).

The system is bloated. Have you actually tried running a "top" in a stock system and check how many "auxiliary" services there are? Close to a dozen python services, eating up a lot of RAM.

There is no documentation for the new REST API. There is no compatibility whatsoever with the old REST API rendering multiple applications useless (specially for the enterprise side, e.g. Zabbix, vCenter, etc).

Several design decisions were made in the course of development that simply made a seamless migration from old codebase to Corral extremely hard and painful.

The list goes on, but I will stop here. I am probably getting too technical.
All of that (and more) made us realize it was going to be a lot more work to bring it to sanity then incorporate the features on the 9.10 codebase.
Also to give you an idea, the new experimental UI (which you can find in 9.10 nightlies) was written in about a week, works on every major browser (even mobile) and supports translation out of the box. That has shown us it does not need to be complicated.

This little excerpt was the insight I was looking for in the justification to roll back to 9.10. I'm sure there were a lot of reasons but thus far there weren't that many specifics to substantiate the argument that it would be easier to just go back to 9.10 than fix 10.0 issues.
 
S

sef

Guest
WWWWWWHHHHHHHHYYYYYYYYYYYYY???????????????????? I thought it was a wrapper for dhcpd!
Because being a simple wrapper for dhclient does not allow notifications to be generated. Since everything in Corral was asynchronous, the notifications were a very big deal. (You can add various hooks and scripts, but this starts to complicate it.)

That ended up being the reason for a lot of the work that was done. That, and Corral was intended to be a tightly-integrated appliance.

shrug I disagreed with many of the decisions made; I disagree with many of the decisions make for 9.x. I end up disagreeing with many of the decisions I made myself. But knowing the context for any decision is important when trying to judge it.
 
Last edited by a moderator:

boatymcboatface

Dabbler
Joined
Jul 11, 2016
Messages
34
I'm just going to wipe Corral one of these days, get whatever the latest is on the 9 branch, and stop using dockers. I set them up to check out the concept, but I much prefer just running a VM with those apps. I mean, I can see the merit for some setups and an all-in-1 box on bare metal solving everything, but for me that left a gap for PFSense anyway (which I don't want to bridge with a docker or whatever).
So, VMWare ESXi, Freenas 9.whatever in a VM, PFSense in a VM plus however many additional ones I decide to create for what is now in a Docker container.
As such, to answer @Ericloewe earlier question - I don't really care about the migration path.

If I had to make a statement about any sort of priority - apart from the "broken" pieces I thought the UI was very intuitive on Corral. I never cared much for the old UI (sorry) and that was actually one of the main perks for me. I actually took screenshots of it to impress people with the neat black graphs ;)

Slightly off topic - what puzzles me somewhat is how upset people are about dockers not being immediately available. I mean - if you're a company, you don't roll out FreeNAS to begin with, and even if you do, you wait for a while to pick a new version as your go-to production tool, right? And why would you use Dockers at the enterprise level? Perhaps I'm not seeing the use case, apologies if I miss that. I guess what I'm trying to say is that most people impacted by this will be (power)home users like myself who "Wasted" their time getting everything running the way they want. Sure, sucks, but no permanent damage done right?
Or perhaps I just don't have a life and don't value my free time enough :)
 

northernsky

Explorer
Joined
Nov 3, 2016
Messages
76
Hello,

Sorry if this had been repeated 9000 times, but I am ont of the newer folks who found you after Freenas 10 was out in beta. I don't use VM's at the moment and I am strictly using FreeNas Corral as a NAS. If I want to ditch it and go install Freenas 9 will the set up be similar? I currently boot from a voyager usb flash drive. my system is an i5 with 8 gigs ram and 6tb of hdd. I am currently using the raidz1.

thanks! I was just thinking to myself yesterday how much I love Freenas than I find out Corral has been shelved.

Scott
 

Jailer

Not strong, but bad
Joined
Sep 12, 2014
Messages
4,977
what puzzles me somewhat is how upset people are about dockers not being immediately available
It's not a software/feature issue it's a psychological issue. See it all the time in prison. It's because it was "given" to the users and then "taken away". That what gets people's feathers all ruffled.
 

Jailer

Not strong, but bad
Joined
Sep 12, 2014
Messages
4,977
Hello,

Sorry if this had been repeated 9000 times, but I am ont of the newer folks who found you after Freenas 10 was out in beta. I don't use VM's at the moment and I am strictly using FreeNas Corral as a NAS. If I want to ditch it and go install Freenas 9 will the set up be similar? I currently boot from a voyager usb flash drive. my system is an i5 with 8 gigs ram and 6tb of hdd. I am currently using the raidz1.

thanks! I was just thinking to myself yesterday how much I love Freenas than I find out Corral has been shelved.

Scott
If all you've done is set up your pool and created some shares it should be relatively painless to switch. Install 9.10 and import your pool and re create your shares/settings and you should be GTG.
 

Ericloewe

Server Wrangler
Moderator
Joined
Feb 15, 2014
Messages
20,194
Hello,

Sorry if this had been repeated 9000 times, but I am ont of the newer folks who found you after Freenas 10 was out in beta. I don't use VM's at the moment and I am strictly using FreeNas Corral as a NAS. If I want to ditch it and go install Freenas 9 will the set up be similar? I currently boot from a voyager usb flash drive. my system is an i5 with 8 gigs ram and 6tb of hdd. I am currently using the raidz1.

thanks! I was just thinking to myself yesterday how much I love Freenas than I find out Corral has been shelved.

Scott
https://forums.freenas.org/index.php?resources/migrating-from-freenas-corral-to-freenas-9-10.33/

As for the actual configuration, there's a manual to help you: http://doc.freenas.org/9.10/
It's also available in the UI.
 

ECCfrenaslover

Explorer
Joined
Dec 27, 2013
Messages
89
Damn! I was starting to love the Corral's GUI. Hope I'll see some time in the future. No wonder I could not find the link to download Corral and load it to my new server to try out. Oh well...$%^&*( happens!
 

northernsky

Explorer
Joined
Nov 3, 2016
Messages
76
If all you've done is set up your pool and created some shares it should be relatively painless to switch. Install 9.10 and import your pool and re create your shares/settings and you should be GTG.

Can this be done in the initial 9.10 setup or do I have to do this elseware?
 

donsev

Explorer
Joined
Jan 15, 2017
Messages
79
Can this be done in the initial 9.10 setup or do I have to do this elseware?

I think you can do it during the initial setup (if by that you mean the wizard that pops up on first login). If not, all you gotta do is:

  1. Storage tab --> Import volume
  2. Sharing tab --> Smb -> Give it a name, point it to the directory your shares are at.
That's about it. One caveat: 9.10 didn't recognize my pool for whatever reason at first, after I uploaded a backup config file I had it was able to import it just fine though.
 

northernsky

Explorer
Joined
Nov 3, 2016
Messages
76
I think you can do it during the initial setup (if by that you mean the wizard that pops up on first login). If not, all you gotta do is:

  1. Storage tab --> Import volume
  2. Sharing tab --> Smb -> Give it a name, point it to the directory your shares are at.
That's about it. One caveat: 9.10 didn't recognize my pool for whatever reason at first, after I uploaded a backup config file I had it was able to import it just fine though.
Well good thing is if something borks and I lose my data I'll just have to redo all my backups. I am just using freenas as a backup source for now. I was just about to move to it full time before all this drama happened.
 

donsev

Explorer
Joined
Jan 15, 2017
Messages
79
Nah, since (I assume) your FreeNAS is installed separately from the storage drives you shouldn't lose your data. At worst I would have just posted on the forums and done some debugging.
 
Last edited by a moderator:
Status
Not open for further replies.
Top