从 OKR 部署中获得的 7 项关键经验(从前慢)
1458
2022-05-25
1 目的与场景
1.1 目的
本文目的是指导用户如何在华为云上搭建网盘服务器通过对接华为云OBS存储可以部署一个超大容量的且可以分享的网盘供企业内部或者外部客户使用。本文使用开源软件Nextcloud实现网盘功能。
1.2 使用场景
企业客户内部多人使用华为云workspace云桌面的场景使用nextcloud部署网盘对内部文档进行管理和共享通过扩展OBS存储进一步降低使用成本。
2 部署
2.1 准备ECS
创建ECS用于部署Nextcloud以ubuntu 16.4为例注意要同时创建一个EIP。
这边规格用的是C3|2U|8G,4G应该也够用的。系统盘不用太高云盘存储用的是OBS。
记录公网EIP地址以及私网地址
配置华为云ubuntu镜像源[参考链接]可选
mv /etc/apt/sources.list /etc/apt/sources.list.bak wget -O /etc/apt/sources.list http://mirrors.myhuaweicloud.com/repo/sources.list.xenial apt-get update
2.2 安装部署
1 安装依赖包括apacheMySQL还有一堆PHP组件。
apt-get install -y apache2 mariadb-server libapache2-mod-php7.0 apt-get install -y php7.0-gd php7.0-json php7.0-mysql php7.0-curl php7.0-mbstring apt-get install -y php7.0-intl php7.0-mcrypt php-imagick php7.0-xml php7.0-zip apt-get install -y php-db php-xml php-zip php-mbstring php-curl php-gd php-mysql
2 配置mysql
修改配置文件
vim /etc/mysql/my.cnf
内容如下
[client-server] !includedir /etc/mysql/conf.d/ !includedir /etc/mysql/mariadb.conf.d/ [client] default-character-set = utf8mb4 [mysqld] character-set-server = utf8mb4 collation-server = utf8mb4_general_ci transaction_isolation = READ-COMMITTED binlog_format = ROW innodb_large_prefix=on innodb_file_format=barracuda innodb_file_per_table=1
重启mysql:
/etc/init.d/mysql restart
创建默认数据库username和password需要自己配置
mysql -u root CREATE USER 'username'@'localhost' IDENTIFIED BY 'password'; CREATE DATABASE IF NOT EXISTS nextcloud CHARACTER SET utf8mb4 COLLATE utf8mb4_general_ci; GRANT ALL PRIVILEGES on nextcloud.* to 'username'@'localhost'; FLUSH privileges; quit
设置root密码
mysql -u root use mysql; update user set authentication_string=PASSWORD("这里输入你要改的密码") where User='root'; #更改密码 update user set plugin="mysql_native_password"; flush privileges; #更新所有操作权限 quit;
3 安装redis官网说可以用我没用
apt-get install redis-server /etc/inid.t/redis-server start
4 下载安装nextcloud以14.0.4版本为例
cd /tmp wget https://download.nextcloud.com/server/releases/nextcloud-14.0.4.zip unzip nextcloud-14.0.4.zip cp -R nextcloud /var/www/ chown -R www-data:www-data /var/www/nextcloud
5 配置apache
创建nextcloud配置文件
vim /etc/apache2/sites-available/nextcloud.conf
内容如下
Alias /nextcloud "/var/www/nextcloud/"
创建软连接
ln -s /etc/apache2/sites-available/nextcloud.conf /etc/apache2/sites-enabled/nextcloud.conf
修改DocumentRoot文件位置
vim /etc/apache2/sites-enabled/000-default.conf
在最后加上内容DocumentRoot /var/www/nextcloud
配置SSL文件位置
vim /etc/apache2/sites-enabled/default-ssl.conf
加上内容
DocumentRoot /var/www/nextcloud
SSLCertificateFile /etc/ssl/certs/key.pem
SSLCertificateKeyFile /etc/ssl/private/certificate.key
SSL证书需要向颁发机构申请测试环境也可以openssl命令自己生成
openssl req -newkey rsa:2048 -nodes -keyout server.key -x509 -days 365 -out server.pem cp server.pem /etc/ssl/certs/ cp server.key /etc/ssl/private/
激活SSL配置
ln -s /etc/apache2/sites-available/default-ssl.conf /etc/apache2/sites-enab led/default-ssl.conf ln -s /etc/apache2/mods-available/ssl.* /etc/apache2/mods-enabled/
注意ssl.conf可能会报错类似SSLSessionCache: 'shmcb' session cache not supported可以先将报错那行注释掉。
重启apache
/etc/init.d/apache2 restart
6 Nextcloud初始配置通过私网IP或者EIP访问
输入管理员用户名与密码数据保存目录以及数据库信息点“finish config”开始配置预计2分钟左右即可配置完成配置完成后会自动登录设置的管理员用户。
注意不要自己手工创建config.php文件初始配置会自动生成此文件
7 设置语言可选
点右上角用户图标然后左边“personal info”->”Language”选择语言即可
8 配置OBS存储
右上角用户图标->“+应用”左边选“已禁用的应用”然后启用“External storage support”
再点用户图标->“设置”然后左边选“外部存储”
然后配置AKSK如果没有AKSK需要在华为云控制台用户名下“账号信息”->“管理我的凭证”->“管理访问秘钥”里面添加注意只能下载一次请妥善保存如果没有创建OBS桶请参考官方文档创建注意创建时选择与nextcloud部署的ECS所在的同一个区域。OBS区域域名参考链接
注意如果使用加密443端口请勾选“启用SSL”如果不加密使用端口80
9 配置可访问地址
修改配置文件添加可访问此nextcloud的源端IP或域名
修改配置/var/www/nextcloud/config/config.php“trusted_domains”添加nextcloud ECS的EIP即可从公网访问
到这一步软件就部署完啦可以通过EIP使用网页版的NextCloud了~~
3 配置与共享
3.1 Windows客户端
登录云桌面【workspace云桌面介绍】然后通过私网IP或域名登录nextcloud服务器点右上角用户图标选设置然后在左边选“移动&桌面”可以找到下载链接下载客户端然后按照默认配置安装即可注意安装后默认进入配置页面一次性配置好否则可能很难再找到配置入口。
点击“Log in”
输入服务器地址如果只输入IP默认是https协议如果没有启用SSL请输入http://$nextcloud-ip。
服务器配置成功后点击“登录”输入用户名和密码点“授权访问”即可完成授权。
然后配置同步到本地的文件夹配置完成点“连接”连接成功后会自动同步服务器端的数据但默认不包括OBS外部存储数据需要自己点“同步全部”。
同步完成可以在本地相应目录看到服务器上的数据同时本地做的删除和新建文件等操作会自动同步到服务器上
NextCloud提供“常规”和“网络”配置如下可以限制上下行带宽避免影响业务网络
3.2 Android客户端
nextcloud-3.3.2-android.apk-
http://imcloud.rnd.huawei.com/nextcloud/index.php/s/3QksQtFYD2WkezW
访问密码next1234
3.3 配置电子邮件服务器
配置电子邮件服务器可用来给新用户发送欢迎邮件默认情况下华为云并未开放25端口需要填工单申请开通登录华为云console右上角点“工单”然后“创建工单”->弹性云服务器->“25端口解封”在工单里填写ECS的ID已经绑定的弹性公网IP或者NAT网关IP提交即可。
在“设置”->“基本设置”下配置电子邮件服务器以新浪邮箱为例
3.4 添加用户
点右上角用户图标然后选择“用户”在左上角点“+新建用户”填入相应信息即可。
3.5 共享
登录服务器上选择要共享的目录或文件点击共享图标
如下可以指定本服务器内的用户进行共享。
如果需要共享给所有人勾选“共享链接”后面那个“启动”图标可以配置访问密码、过期时间等然后复制链接发布即可。
https://imcloud.rnd.huawei.com/nextcloud/index.php/s/Nk7HPt9SPDiFs4Y
上面链接是本文搭建的nextcloud上发布NextCloud14安装包访问密码next1234
4 参考
4.1 参考链接
https://docs.nextcloud.com/server/14/admin_manual/installation/source_installation.htm
https://nextcloud.com/install/#instructions-server
https://support.huaweicloud.com/devg-obs/zh-cn_topic_0100850089.html
https://support.huaweicloud.com/usermanual-workspace/zh-cn_topic_0035246232.html
对象存储服务 OBS 弹性云服务器 ECS
版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。