时间:2021-07-15 | 标签: | 作者:Q8 | 来源:吴金福网络
小提示:您能找到这篇{AWS:手把手教你如何部署企业级云存储网盘}绝对不是偶然,我们能帮您找到潜在客户,解决您的困扰。如果您对本页介绍的AWS:手把手教你如何部署企业级云存储网盘内容感兴趣,有相关需求意向欢迎拨打我们的服务热线,或留言咨询,我们将第一时间联系您! |
< ">Nextcloud是一个开源的、功能强大的云存储网盘项目。它提供了一个安全和灵活的解决方案,允许用户共享一个或多个文件和目录,并与Nextcloud服务器同步。 部署演示 < ">我们会使用快速入门的“Ubuntu Server 18.04 LTS”系统镜像部署并运行Nextcloud,接着我们会配置NextCloud的LDAP应用程序以允许活动目录(Active Directory)的用户登陆并使用Nextcloud,并将用户的工作目录设置到Amazon EFS文件系统,同时挂载S3存储桶作为共享盘。本次部署需要准备的前提条件包括: < ">-Amazon EC2实例 < ">-Ubuntu Server 18.04 LTS < ">-Nextcloud < ">-AWS Directory Service < ">-Amazon EFS文件系统 < ">-S3存储桶 安装Nextcloud < ">在AWS EC2控制台上点击启动实例,然后从快速入门中选择“Ubuntu Server 18.04 LTS”系统镜像,选择c5.large或更高配置的实例类型启动实例。实例启动后使用密钥登陆Ubuntu系统。 < ">步骤一:安装LAMP sudo apt update sudo apt-get install apache2 mariadb-server libapache2-mod-php7.2 php7.2-gd php7.2-json php7.2-mysql php7.2-curl php7.2-mbstring php7.2-intl php-imagick php7.2-xml php7.2-ldap php7.2-zip < ">安装完成后,检查服务是否已经启动和启用了自动启动。 systemctl status apache2 systemctl status mariadb systemctl is-enabled apache2 systemctl is-enabled mariadb < ">注意:如果没有启动或者没有启用自动启动,使用下面的命令启动并启用自动启动。 sudo systemctl start apache2 sudo systemctl start mariadb sudo systemctl enable apache2 sudo systemctl enable mariadb 步骤二:安装MariaDB sudo mysql_secure_installation < ">回答提示问题: < ">为root输入当前密码(默认是没有,回车即可) < ">Enter current password for root(enter for none): < ">是否设置root密码(建议设置一个复杂的安全密码) < ">Set root 橱柜宣传海报password?[Y/n]y < ">是否删除匿名用户 < ">Remove anonymous users?[Y/n]y < ">是否禁止远程登陆 < ">Disallow root login remotely?[Y/n]y < ">是否删除自带的test测试数据库 < ">Remove test database and access to it?[Y/n]y < ">是否重新加载权限表 < ">Reload privilege tables now?[Y/n]y < ">步骤三:配置Nextcloud数据库 < ">确保数据库完成安装之后,登陆数据库: sudo mysql-u root-p < ">运行以下sql命令,请注意使用您的密码替换以下命令中的“PASSWORD”。 MariaDB [(none)]> CREATE DATABASE nextcloud; MariaDB [(none)]> CRE滴滴危机公关评价ATE USER ncadmin@localhost IDENTIFIED BY 'PASSWORD'; MariaDB [(none)]> GRANT ALL PRIVILEGES ON nextcloud.* TO ncadmin@localhost IDENTIFIED BY 'PASSWORD'; MariaDB [(none)]> FLUSH PRIVILEGES; MariaDB [(none)]> EXIT; 步骤四:配置Nextcloud < ">从Nextcloud官方网站下载最新版本的Nextcloud: sudo wget-c https://download.nextcloud.com/server/releases/nextcloud-20.0.1.zip < ">解压并复制到web服务器的根目录下,并设置所有权: sudo unzip nextcloud-18.0.0.zip sudo cp-r nextcloud/var/www/html/ sudo chown-R www-data:www-data/var/www/html/nextcloud < ">为Nextcloud创建一个Apache配置文件: sudo cat <<EOF > /etc/apache2/sites-available/nextcloud.conf Alias /nextcloud "/var/www/html/nextcloud/" <Directory /var/www/html/nextcloud/> Require all granted Options FollowSymlinks MultiViews AllowOverride All <IfModule mod_dav.c> Dav off </IfModule> SetEnv HOME /var/www//html/nextcloud SetEnv HTTP_HOME /var/www/html/nextcloud </Directory> EOF < ">启用新的配置和模块: sudo a2ensite nextcloud.conf sudo a2enmod rewrite sudo a2enmod headers sudo a2enmod env sudo a2enmod dir sudo a2enmod mime < ">重新启动Apache2服务,使更改生效: sudo systemctl restart apache2 < ">步骤五:通过图形向导完成Nextcloud的安装 < ">在开始配置之前,我们还需要将TCP端口80的入站规则添加到安全组,并将该安全组与实例相关联。如果使用HTTPS,还需要将TCP端口443的入站规则添加到安全组。 < ">打开浏览器,指向以下地址:http://IP/nextcloud/ < ">安装向导加载后,创建一个Nextcloud管理员帐户。输入用户名和密码,并配置数据库。 < ">安装完成后,您将看到以下窗口。单击将出现在蓝色窗口右侧的向前箭头继续并按照提示进行操作。 < ">然后在下一个窗口中,单击Start Using Nextcloud开始使用。 < ">步骤六:配置S3存储桶为外部存储 < ">Amazon S3提供99.999999999%的持久性,提供了一个高度扩展、高持久性和高可用的分布式数据存储服务。Nextcloud完全兼容S3的API接口,可以很容易地将S3存储桶挂载为外部存储。在开始配置之前,我们需要创建一个S3存储桶和一个可以编程方式访问该存储桶的IAM用户。如果使用已经存在的S3存储桶和IAM用户,可以跳到Nextcloud配置外部存储。 < ">登陆S3控制台,创建一个存储桶。 < ">登陆IAM控制台,从访问管理菜单中单击策略,创建策略。 < ">JSON内容如下,请将nextcloud更改为您的存储桶名字。 { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": "s3:*", "Resource": [ "arn:aws-cn:s3:::nextcloud", "arn:aws-cn:s3:::nextcloud/*" ] } ] } < ">从访问管理菜单中单击用户,添加用户。 < ">附加刚刚创建的策略 < ">下载密钥文件 < ">点击右上角的Admin用户图标,选择Apps < ">点击搜索框图标,搜索“External storage support“,在单击External storage support的Enable按钮启用 < ">启用后,点击Admin用户图标,选择Settings < ">单击左边Administration菜单下的External storages < ">下图是配置宁夏区域S3存储桶的示例。如果是配置海外区域的S3存储桶。 < ">宁夏区域S3的主机名是s3.cn-northwest-1.amazonaws.com.cn < ">北京区域S3的主机名是s3.cn-north-1.amazonaws.com.cn < ">配置完成后,单击左上方的文件夹图标,选择“All files”,可以看到我们刚刚配置的S3存储桶。 < ">步骤七:配置LDAP < ">在配置LDAP之前,我们需要创建一个活动目录。如果使用已经存在的活动目录,可以跳到Nextcloud配置LDAP。 < ">创建活动目录,如下图: < ">回到Nextcloud控制台,和上面的步骤一样,点击右上角的Admin用户图标,选择Apps,搜索LDAP并启用。 < ">启用LDAP后,点击Admin用户图标,选择Settings,单击左边Administration菜单下的“LDAP/AD integration”。 < ">具体配置详见Nextcloud的LDAP配置文档。我们根据活动目录的信息填写配置,单击“Test Base DN”测试配置是否正确。 < ">注意:Server地址为活动目录的DNS地址,端口为389。 < ">选择允许登陆Nextcloud的用户组。在AWS托管的活动目录里,新创建的用户默认会分配到组“Domain Users”。可单击下方的“Verify settings and count users”查找该用户组的成员数。 < ">配置登陆方式。如果希望使用AD用户的邮箱地址登陆,则可以勾选“LDAP/AD Email Address”如下图。可在下方的“Test Loginname”输入AD用户名验证。 < ">最后,默认情况下,在Nextcloud上不会有LDAP组。我们选择活动目录的默认用户组“Domain Users”在Nextcloud可用。 < ">用户工作目录的命名规则默认是根据LDAP的用户属性创建,如果是迁移或者升级后设置失效,可以运行以下命令强制启用命名规则: sudo-u www-data php/var/www/html/nextcloud/occ config:app:set user_ldap enforce_home_folder_naming_rule–value=”true” < ">我们还可以运行以下命令设置LDAP的同步间隔,间隔以秒为单位,例如设置为一天,即86400秒。 sudo-u www-data php/var/www/html/nextcloud/occ config:app:set user_ldap updateAttributesInterval--value=86400 < ">注意,除了LDAP APP外,Nextcloud还有非常丰富的APP,例如draw.io流程图绘制应用、WebMail插件RainLoop、开源办公onlyoffice应用等等。 < ">步骤八:配置域名 < ">Nextcloud安装后,默认信任的域名只有IP地址,如果希望通过域名连接Nextcloud,需要添加信任域名,运行如下命令: sudo-u www-data php/var/www/html/nextcloud/occ config:system:set trust软文推广应用说明ed_domains 1--value=nextcloud.example.com < ">或者修改配置文件/var/www/html/nextcloud/config/config.php中的array变量 < ">步骤九:配置EFS < ">从上面步骤的截图我们看到'datadirectory'=>'/var/www/html/nextcloud/data',这是Nextcloud的默认配置,用户的工作目录均放在路径/var/www/html/nextcloud/data,为了更好的持久性和可扩展性,建议将所有用户的工作目录放在可扩展的、弹性原生云NFS文件系统Amazon Elastic File System。这样一来,我们可以实现多台主备服务器同时挂载EFS,提高可用性。 < ">创建EFS文件系统。 < ">通过SSH登陆Nextcloud服务器,挂载EFS,然后运行以下命令修改datadirectory的路径: < ">进入维护模式: sudo-u www-data php/var/www/html/nextcloud/occ maintenance:mode--on < ">拷贝现有文件到EFS,假设EFS挂载在/efs: cp-a/var/www/html/nextcloud/data/./efs chown-R www-data:www-data/efs < ">修改datadirectory参数: sudo-u www-data php/var/www/html/nextcloud/occ config:system:set datadirectory--value="/efs"--update-only < ">退出维护模式: sudo-u www-data php/var/www/html/nextcloud/occ maintenance:mode–off < ">注意,您也可以直接进入维护模式之后,将EFS挂载到/var/www/html/nextcloud/data,这样就不需要更改目录路径。 < ">步骤十:登陆Nextcloud客户端 < ">Nextcloud支持Windows、Mac、Android、iOS、Linux等各种平台的客户端。下载安装后,打开客户端,选择login。 < ">输入nextcloud的IP地址或者域名,http://Server_IP/nextcloud/ < ">注意,演示使用的是HTTP。 < ">单击Next,将跳转到浏览器,单击Log in,登陆并授权。 < ">设置同步。 < ">打开软件,选择Settings并设置同步S3存储桶。 < ">打开Nextcloud云盘,即可看到用户自己的工作目录(存放在EFS,仅自己可见),还有作为共享盘的S3存储桶(所有成员可见)。 < ">总结 < ">在本次演示中,考虑到仅在VPC内使用,所以没有配置SSL,若是在生产环境中使用,建议配置SSL证书,使用HTTPS连接。Nextcloud是一款开源免费的云存储网盘项目。除了上述的安装方式,还支持Docker快速安装,配合AWS S3和EFS服务,我们可以快速地构建企业级的云存储网盘,从而实现跨平台跨设备的文件同步、共享、版本控制和团队协作等功能。 |
上一篇:破51项纪录的背后:华为云擎天架构调度求解引擎
下一篇:如何提升你的店铺流量?给跨境卖家的Shopify SE
基于对传统行业渠道的理解,对互联网行业的渠道我们可以下这样一个定义:一切...
小米应用商店的后台操作和苹果是比较相似的,因为都能填写100字符关键词,允许...
小米的规则目前是在变更中的,但是根据经验小米的搜索排名评分的高低是个很重...
为了恰饭,有时候是要接入一些广告的,所以FB也专门有一个广告的SDK,这就是A...
在 2018 年于旧金山举行的游戏开发者大会上,Amazon Web Services (AWS) 曾宣布,目前世...
关于Facebook Audience Network如何收款的问题,其实官方已经给了详细的步骤。本文主要...
本文介绍了Audience Network对广告载体的质量检查,以及它重点广告形式需要注意的问...
随着iOS开发,作为开发者或公司需要针对iOS App开发涉及的方方面面作出对应的信息...
Facebook和谷歌对出海企业广告渠道都很熟悉,但事实上,在国外还有一些渠道也很...
卖家从做号的第1分钟开始,就一定要想好变现路径是什么?一定要以变现为目的去...
小提示:您应该对本页介绍的“AWS:手把手教你如何部署企业级云存储网盘”相关内容感兴趣,若您有相关需求欢迎拨打我们的服务热线或留言咨询,我们尽快与您联系沟通AWS:手把手教你如何部署企业级云存储网盘的相关事宜。
关键词:AWS:手把手教你如何部署