03-29-2017 12:46 AM
Hi guys,
I've been testing Alfresco in a VM and I love it.
I'm using FreeNAS 9.10 for storing my data.
I'm trying to find discussions about it in a FreeNAS environment and I've found none.
More specifically, I'm looking for a "best practices" guide, so I don't need to experiment too much and start over 100 times.
I will be running Alfresco in a VM, installed on Ubuntu 16.04 LTS.
Then let it access a dedicated share on FreeNAS.
First question : I was thinking about giving a NFS share to Alfresco.
Would a CIFS share be better ?
And how do I deal with the ACL and such?
Also, for backup, I use ZFS replication, which is absolutely awesome.
However, I'm wondering if it will be a good match for Alfresco.
I understand that the files are stored like normal files so that part won't be a problem.
But I also understand that there are databases involved.
So I'm wondering if I should make up a script to stop MySQL, make a dump, and start it again.
Or maybe such feature already exist?
Finally, I'm wondering how to import all my files at once.
I've taking a look at the bulk import feature, which looks nice.
But it appears that the file have to be local.
Is it a good practice to mount a CIFS share on the Alfresco server and proceed with a bulk import from there?
Any comment or recommendation would be greatly appreciated!
THANKS!
03-29-2017 01:04 PM
Hi Ugo,
I use NFS or CIFS shares for the alfresco contentstore only. Contentstore is the directory in which the documents are stored and for this a NFS Share or CIFS share is a fair choice and, yes, you could use ZFS replication (and snapshots, in case you delete something accidentally on the filesystem) for online backup your content. I would prefer to also have a kind of offline backup for security reasons - and for a good sleep at night.
Database and content have to be backed consistenly. If the solr Index is "older" than the db entries and contentstore, alfresco recognizes this on startup and tries to catch up. Index can be rebuilt from scratch, but this could take a long time with a big number of documents.
ACLs on the shares are not a big deal, because alfresco uses his technical user to access the file store. The real user acls are handled by alfresco internally. Also the file structure in alfresco is virtual. You can see all files on filesystem (in a date-time dependent tree) but their names are just uuids and you won't be able to identify a file on the first look. This also means you really need your db to know the store-path of your file.
For the solr Index you will need a high disk-IO rate - that's why I prefer to run the Index on local SSD or HDD storage. Also your database will be more performant with local disks (or even an extra DB-Server).
Dependent on how many documents you want to store, number of users in the system and so on, you will need much RAM for alfresco, solr4 and the virtual memory, buffers...
Mounting a CIFS share for the bulk-importer is ok - I used it on linux. Only had to chmod 777 all directories and files recursive before the import.
03-29-2017 09:23 PM
Hey Martin,
Thank you so much for your responses!
This is exactly what I was looking for!
I have a few follow-up questions.
1) Should I use NFS or CIFS for sharing the data directory to Alfresco?
I prefer NFS, or rather I dislike CIFS, but I will use whatever is best.
Also, which is the best way to configure Alfresco to use that?
2) Concerning the databases, is there a built-in way to back them up?
Otherwise, would you recommend a script that stops the system daily, stops the database processes, backup the database and then restart the system?
I'm just a little concerned about replicating databases that are in use... restoring them might result in corruption.
3) In order to import my current data, which are several files and several folders and subfolders, what is the best way to proceed.
Is bulk-import the best way to go?
Whats the best practice?
I was going to - as I said before - mount a CIFS share and import from there.
However, I read in the forum that you can also use a zip file of all your stuff and import it like that.
4) Are there some content types that should not be handled by Alfresco?
At first I was going to import just everything.
But we also have some applications that we run straight from the network.
For that I would still use CIFS shares.
We also have very large files (Photoshop files, AI files, etc.)
Is Afresco suitable to handle that?
Anything else I should know?
5) Is there a good tutorial for n00bs (like me) that I could read?
I've been checking out : Alfresco Documentation | Alfresco Documentation
But the tutorials are for extremely basic stuff.
I would like to find a tutorial that would take me step by step for everything I need to configure and set up before I can put it into production, amongst with tips for most common configurations or case scenarios.
Is there such a thing out there?
03-30-2017 10:25 AM
Hi,
to 1) under Linux I would use NFS
After a standard installation there is a directory (under ...Alfresco/alf_data) called contentstore, where all your documents reside and a directory called contentstore.deleted, which includes all documents that have been deleted finally ( deleted from the trashcan and no more referenced by alfrescos DB).
So I create a nfs export with the directories contentstore and contentstore.deleted, copy all content from the alfresco system to these directories and mount the shares under ...alf_data/contentstore and ...alf_data/contentstore.deleted.
Then you don't have to configure anything in Alfresco.
2) Alfresco Community is now installed with postgres by default. I use pg_dump for backing up the db, after stopping the Alfresco tomcat. Using this method it's guaranteed that everything is in sync/consistent - just because I'm too chicken...
just replicating the db files is not advisable.
3) depends on how big your data is. I prefer mounting the source and import it via the bulk-importer (which is included in Alfresco). Uploading a big zip file (upload limit of your http-client...) can be a pain.
4) import only things that benefit from being stored in a DMS (fulltext search, versioning, previews, custom metadata, workflows).
Don't put executables or large data containers there (but you could)
In general Alfresco is able to handle big files, but most actions will be done via http... try.
good luck
03-31-2017 04:19 AM
for 5) I think that Cesar Capillas had an interesting link list for that - can't remember the thread. Maybe he recognizes that we mentioned him here...
Backup: also checkout/have a look at BART GitHub - toniblyx/alfresco-backup-and-recovery-tool: Alfresco BART is a tool written in shell script...
03-31-2017 04:31 AM
Maybe you refer to this:
Most helpful resources for beginners - Useful Alfresco Resources - zylk
Regards.
--C.
P.S: Although many things are not only for beginners, strictly speaking.
03-31-2017 04:36 AM
...yes, that was exactly what I meant - love your page ...and added to favorites, so I won't loose it anymore...
Explore our Alfresco products with the links below. Use labels to filter content by product module.