DEV Community

Cover image for NAS storage integration with Alfresco Community 7.2 and learn how to resolve Access Permission issues
Taashee Linux Services
Taashee Linux Services

Posted on

NAS storage integration with Alfresco Community 7.2 and learn how to resolve Access Permission issues

If you are a tech enthusiast or an organization looking for a content management solution with the ability to self-support, you have in all probabilities, heard about Alfresco’s Content Services (ACS) community edition. The Community Edition is an open-source software which is widely adopted throughout the industry for community-driven development and contributions as well as for researching new features. The highlights include stable releases distributed by Alfresco engineering, nightly builds with the latest functionality and source code publicly available and distributed under the LGPLv3 license. The latest stable release, Alfresco Community 7.2, is already making waves in the content management circuit, not just because it is freely available, but also because it offers powerful capabilities for all non-critical business processes or content requirements.

A lot of users prefer to pair their Alfresco content suite with powerful storage support for content backup and most of them choose NAS. Network-attached storage (NAS) is a dedicated file storage that enables multiple users and heterogeneous client devices to retrieve data from a centralized disk capacity. Users on a local area network (LAN) can access the shared storage via standard Ethernet connections. Besides their ease of access, high capacity and low cost, NAS devices consolidate storage in one place while supporting a cloud tier and tasks such as archiving and backup for DR activities.

The ability to cross-mount the storage between Alfresco servers is the main requirement for any shared storage. Faster storage always has positive implications on the performance of the system, especially when Alfresco itself recommends a throughput of at least 200 MB/sec.

NAS allows us to mount the content store via NFS or CIFS on any and all Alfresco servers. They are also able to read/write the same file system simultaneously. The only real requirement here is that the OS on which Alfresco is installed supports NFS. NFS tends to be cheaper and easier, going with the spirit of Alfresco Community Edition and is also sufficiently fast enough to pull off a successful integration.

One of the major challenges our readers are facing during the course of this integration is the Access Denied error. Read on below to know how to resolve this issue.

Step 1. Update the NFS permissions for Hostname or IP to “ * ” and squash the parameter to “ No Mapping ” in the NAS admin portal.

Image description

Step 2. Mount the NAS shared filesystem NAS_DS920:/volume1/DMS1/contentstore to the Alfresco root contentstore path.

# mount -t nfs NAS_DS920:/volume1/DMS1/contentstore /usr/local/alfresco-community62ga/alf_data/contentstore

Step 3. Mount the NAS shared filesystem NAS_DS920:/volume1/DMS1/contentstore.deleted to the Alfresco root contentstore path.

# mount -t nfs NAS_DS920:/volume1/DMS1/contentstore.deleted /usr/local/alfresco-community62ga/alf_data/contentstore.deleted

Step 4. Change the ownership of the Alfresco content directory as shown below.

Image description

#cd /usr/local/alfresco-community62ga/alf_data
#chown -R alfresco:Alfresco contentstore
#chown -R alfresco:Alfresco contentstore.deleted

Step 5. Mount the NAS shared filesystem permanently by editing /etc/fstab

Image description

Step 6: Update the NAS filesystem entries in the /etc/fstab.

# vi /etc/fstab
NAS_DS920:/volume1/DMS1/contentstore /usr/local/alfrescocommunity62ga/alf_data/contentstore nfs intr 0 0
NAS_DS920:/volume1/DMS1/contentstore.deleted /usr/local/alfresco-community62ga/alf_data/contentstore.deleted nfs intr 0 0

Step 7: Restart the service after making the changes above.

#systemctl restart solr
#systemctl restart activemq
#systemctl restart tomcat

Once the service restarts you should not be facing the Access Denied issue any longer. You can replace mount points and names in the above code snippets with your own environment-specific information.

This article was originally published on our company blog.

Top comments (0)