【运维知识进阶篇】用阿里云部署kod可道云网盘(配置Redis+MySQL+NAS+OSS)

本文主要是介绍【运维知识进阶篇】用阿里云部署kod可道云网盘(配置Redis+MySQL+NAS+OSS),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

这篇文章继续以kod可道云网盘为例,带大家熟悉阿里云产品,本篇文章介绍Redis,MySQL,NAS,OSS,话不多说,直接开始。

目录

Redis

一、购买Reids主从版

二、配置kod免秘钥连接Redis内网接口 

三、申请公网访问连接

​四、创建用户名密码

MySQL

一、购买msyql主从版

二、配置用户名密码

三、通过ECS主机测试和mysql的连通性

四、kod业务由内置数据库修改为mysql

五、申请公网连接访问

​六、在虚拟机远程测试连接mysql公网地址

七、提升主从配置为读写分离版 获取proxy代理地址 通过ECS进行连接测试

NAS

一、购买NAS挂载到ESC的/mnt下

OSS

一、创建bucket

二、创建子账号

三、授权子账号管理bucket

四、oss后台存储增加oss存储 上传图片测试


Redis

一、购买Reids主从版

62c1e0895848431a96dac32416aeac8b.png

756c6d31c7b04643b3d4bc7169ee8c09.png

481183aff15e4ff8888d4acfb7c56228.png

二、配置kod免秘钥连接Redis内网接口 

eab12de697454ffe8bb662e068a5b852.png

 30edbbe393a8409084c5f5539f3bfcce.png

6cefd2d6958447f19063ebc7ca12edf7.png5e2837485b454fcc9999db3defef13da.png 

06b2a6b6440a4c36b88a1c0b9482da75.png

 利用我们负载均衡转发的5555端口连接web01

[root@web01 ~]# yum -y install redis
[root@web01 ~]# redis-cli -h r-xxxx.redis.rds.aliyuncs.com    成功连接
r-xxxx.redis.rds.aliyuncs.com:6379> keys *
(empty list or set)

 6c30d58e74344c53a8ca3a385fc14bcc.png

326c58aaed18401eacbcb9ebedc3b9bb.png

刷新该网页,因为负载均衡有俩web,所以这个操作需要执行两次,keys *查询,成功!

1cc992c0b9a040129f26a9781ea477de.png

三、申请公网访问连接

211b08a671334d91a4a718333ec0379e.png四、创建用户名密码

在虚拟机上远程连接公网Redis接口地址,使用keys *验证+

这里无法使用web连接公网IP了,因为我们的web无法连接网络,只能私网连接redis,所以我们在虚拟机上连接web

[root@Web01 ~]# redis-cli -h r-xxxx.redis.rds.aliyuncs.com
r-xxxx.redis.rds.aliyuncs.com:6379> keys *
(error) ERR illegal address: 123.112.17.24:9913#将本机IP加入白名单r-xxxx.redis.rds.aliyuncs.com:6379> keys *
(error) NOAUTH Authentication required.#使用密码连接[root@Web01 ~]# redis-cli -h r-xxx.redis.rds.aliyuncs.com -a 'username:password' #后面跟账号和密码
r-0jla7au49dwd2jnp2rpd.redis.rds.aliyuncs.com:6379> keys *#成功显示

MySQL

一、购买msyql主从版

这里买错了,需要直接买高可用版本

db9e9d835833445b82c11acbebe815be.png

fd49db33ec3547f1b879b8161006abbc.pngeb4d3f01cfac40e39a35d872eaf78467.png

d9a8759274064f3bba880d8275f61939.png

二、配置用户名密码

56a22fab689942d99105a92e1d942c0a.png

三、通过ECS主机测试和mysql的连通性

mysql主机列表,网络详情,复制专有网络,也就是我们局域网的域名

[root@web01 ~]# ping rm-xxxx.mysql.rds.aliyuncs.com[root@web01 ~]# yum -y install mariadb-server.x86_64[root@web01 ~]# mysql -h rm-xxxx.mysql.rds.aliyuncs.com -u'username' -p'password'
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 59
Server version: 5.7.40-log Source distributionCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MySQL [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| __recycle_bin__    |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
5 rows in set (0.00 sec)MySQL [(none)]> 

四、kod业务由内置数据库修改为mysql

因为我刚刚在阿里云删除了redis,直接访问会报错,我们需要先删除下kod数据库的配置文件的内容

60040da1ab1644cfa178137eb8c2e196.png

把有关redis信息删掉即可,注意web01和web02都需要删

[root@web02 ~]# cat /code/kod/config/setting_user.php
<?php 
$config['database'] = array ('DB_TYPE' => 'sqlite3','DB_NAME' => USER_SYSTEM.'kGdiwtmrh4ZW.php','DB_SQL_LOG' => true,'DB_FIELDS_CACHE' => true,'DB_SQL_BUILD_CACHE' => false,
);
$config['cache']['sessionType'] = 'file';
$config['cache']['cacheType'] = 'file';

在网站上配置,与redis同理,需要做两遍,但是第二遍的时候会提示无法执行,所以我们做完一遍后scp到另一台web,注意不要目标文件与源文件搞混了,不然还需要重新搞。

f934cb36b5ac4bc1b8f6bc47b3aa06cc.png

[root@web01 config]# cat /code/kod/config/setting_user.php
<?php 
$config['database'] = array ('DB_TYPE' => 'mysqli','DB_HOST' => 'rm-xxxx.mysql.rds.aliyuncs.com','DB_PORT' => 3306,'DB_USER' => 'username','DB_PWD' => 'password','DB_NAME' => 'kodbox','DB_SQL_LOG' => true,'DB_FIELDS_CACHE' => true,'DB_SQL_BUILD_CACHE' => false,
);$config['cache']['sessionType'] = 'file';
$config['cache']['cacheType'] = 'file';[root@web01 config]# scp setting_user.php 172.18.3.150:/code/kod/config/setting_user.php
root@172.18.3.150's password: 
setting_user.php                                                      100%  399     1.2MB/s   00:00 

五、申请公网连接访问

410d8b34da0a49c6aa11397db8bd00f1.png

这里取消勾选 

9023c16c69d8482fbd778765b2e5356e.png六、在虚拟机远程测试连接mysql公网地址

[root@Web01 ~]# mysql -uusername -pPassword -h rm-xxxx.mysql.rds.aliyuncs.com
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 3449
Server version: 5.7.40-log Source distributionCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MySQL [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| __recycle_bin__    |
| kodbox             |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0.01 sec)MySQL [(none)]>

七、提升主从配置为读写分离版 获取proxy代理地址 通过ECS进行连接测试

刚才买错了,咱们先变更配置到高可用版本 

53a12fe6a2a44cb88951e649a22bf2f7.png

3daa6e3481ce474e86329347ee7e2f2d.png

ccfcf304efbc4409a669b5d5c05a17ed.png

高可用配置,这里显示读写分离。8bc374ade4fd45f69a9846b91a1c5a97.png

7919499d700e477e82cff87431949c54.png 7f75693a89064a2b8ce903baaab65154.png

 购买只读实例ce9b24bb95ea4b61bd42899faceef9ae.png

 9c53ac462ea3443687e0900c5f01291f.png72de9ce3613a4f41a8a2fc2ec9acda3f.png

3e357ddfcab74bdab7119c50fe9a3c4d.png

3e7bdd1083a6400a8e7c2d218817ceb1.png

设置代理终端,点击直接确定即可。

ae3485a79d3c440fb294fc215582161d.png

55bb3ae777ff4cbf8b52d69f72b0d4c5.png

 复制连接地址

4df6ec51b65e4716acdf7364593066c6.png

也就是这个地址 

2192b8aca0fe4e42ab20012add453b2e.png

 尝试登录,没有问题,需要将项目中的配置文件的mysql地址修改成这个,才算使用上,这一点不再演示。

[root@web01 config]# mysql -umysql_db01 -pMysqldb01 -h jxjkffytkozbenzpd27c-rw4rm.rwlb.rds.aliyuncs.com
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MySQL connection id is 268436052
Server version: 5.7.40-log Source distributionCopyright (c) 2000, 2018, Oracle, MariaDB Corporation Ab and others.Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.MySQL [(none)]> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| __recycle_bin__    |
| kodbox             |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
6 rows in set (0.01 sec)MySQL [(none)]> 

NAS

一、购买NAS挂载到ESC的/mnt下

80809bd2d01d427594efaf951353f223.png

adfbaaa82f8b41d9b47ec2712fd5ade1.png

3a2437329bce44a2966fee8c1fbd1c0a.pngcfe14b26a0714aca9be1828a7a494508.png e47d77e4a684492a828543b0be9e9740.png

添加到ECS 

d7495fd2f2ca4678933629876ac268cf.png

web1与web2都挂载下 

f7dc91d59b5e48a9b808ccea95355946.png

[root@web01 config]# df -h
Filesystem                                         Size  Used Avail Use% Mounted on
devtmpfs                                           461M     0  461M   0% /dev
tmpfs                                              471M     0  471M   0% /dev/shm
tmpfs                                              471M  500K  471M   1% /run
tmpfs                                              471M     0  471M   0% /sys/fs/cgroup
/dev/vda1                                           20G  3.3G   16G  18% /
tmpfs                                               95M     0   95M   0% /run/user/0
29d8604a9d7-bwb8.cn-wulanchabu.nas.aliyuncs.com:/   10P     0   10P   0% /mnt[root@web02 ~]# df -h
Filesystem                                         Size  Used Avail Use% Mounted on
devtmpfs                                           461M     0  461M   0% /dev
tmpfs                                              471M     0  471M   0% /dev/shm
tmpfs                                              471M  492K  471M   1% /run
tmpfs                                              471M     0  471M   0% /sys/fs/cgroup
/dev/vda1                                           20G  3.4G   16G  19% /
tmpfs                                               95M     0   95M   0% /run/user/0
29d8604a9d7-bwb8.cn-wulanchabu.nas.aliyuncs.com:/   10P     0   10P   0% /mnt

在虚拟机中创建文件,成功显示在云盘上

[root@web01 mnt]# touch 1.txt

30bf0b378aa54a47b84879e7ba3d031c.png

OSS

一、创建bucket

77c9af725ab54560a80c1edbb03ff526.png

91df5c3331734d2b8b2bf7f8ee364914.pngca3e29bd8e484ba9bbb2b463c04d67b2.png

 8de244bed48545878bf90f0dba91b0c8.png

 d2482f875fbd417c84e9c913d4c9fc2c.png

二、创建子账号

进入bucket-->权限控制-->访问控制RAM--> 访问控制RAM-->前往RAM控制台--用户:创建用户

dbf9bbda669b48fda8ec0cf3fb2eca02.png

 97e530b4767d46198f0697ff27fbd608.png

e2ac40c3c9a141358f190538b3240ebd.png

三、授权子账号管理bucket

f98e619ba97249ee9a26ef7f205ee8dc.png

 2f9c5e258e8c4365bbbfa0adf9283b78.png

e94ac7ea81934a92b981ff68aeab9d87.png

 收集信息配置kod

bcb626a11d294a3db22f23ae3f1e4926.png

 

deb9714a8b5240e59fc14bbddd15eb86.png

f448f9058c6548dc996f7366eb7c2ba6.png

填写对应数据,填好后点保存,由于有两个web,这个操作也需要执行两步。

050fb9fbf4884d8590bd6cfbb6f5fb9a.png

四、oss后台存储增加oss存储 上传图片测试

0901873771b74cad8edb4d55f3dc34e0.png

浏览器上传,阿里云成功显示。 

a5d6f7d87e7e4aaaa03dfd5b46e5c904.png

bf3c5472524a4222b3a3be5f5a56685b.png

 还可以进行图片处理,上传图片上去后,可以加水印,类似于百度图片右下角的水印。

23e8288e5bd14b78b630fa5ae2baf179.png


我是koten,10年运维经验,持续分享运维干货,感谢大家的阅读和关注!

 

这篇关于【运维知识进阶篇】用阿里云部署kod可道云网盘(配置Redis+MySQL+NAS+OSS)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/314594

相关文章

Vue3 如何通过json配置生成查询表单

《Vue3如何通过json配置生成查询表单》本文给大家介绍Vue3如何通过json配置生成查询表单,本文结合实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友参考下吧... 目录功能实现背景项目代码案例功能实现背景通过vue3实现后台管理项目一定含有表格功能,通常离不开表单

通过Docker容器部署Python环境的全流程

《通过Docker容器部署Python环境的全流程》在现代化开发流程中,Docker因其轻量化、环境隔离和跨平台一致性的特性,已成为部署Python应用的标准工具,本文将详细演示如何通过Docker容... 目录引言一、docker与python的协同优势二、核心步骤详解三、进阶配置技巧四、生产环境最佳实践

Nginx部署HTTP/3的实现步骤

《Nginx部署HTTP/3的实现步骤》本文介绍了在Nginx中部署HTTP/3的详细步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学... 目录前提条件第一步:安装必要的依赖库第二步:获取并构建 BoringSSL第三步:获取 Nginx

MySQL的JDBC编程详解

《MySQL的JDBC编程详解》:本文主要介绍MySQL的JDBC编程,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录前言一、前置知识1. 引入依赖2. 认识 url二、JDBC 操作流程1. JDBC 的写操作2. JDBC 的读操作总结前言本文介绍了mysq

java.sql.SQLTransientConnectionException连接超时异常原因及解决方案

《java.sql.SQLTransientConnectionException连接超时异常原因及解决方案》:本文主要介绍java.sql.SQLTransientConnectionExcep... 目录一、引言二、异常信息分析三、可能的原因3.1 连接池配置不合理3.2 数据库负载过高3.3 连接泄漏

Redis 的 SUBSCRIBE命令详解

《Redis的SUBSCRIBE命令详解》Redis的SUBSCRIBE命令用于订阅一个或多个频道,以便接收发送到这些频道的消息,本文给大家介绍Redis的SUBSCRIBE命令,感兴趣的朋友跟随... 目录基本语法工作原理示例消息格式相关命令python 示例Redis 的 SUBSCRIBE 命令用于订

mybatis映射器配置小结

《mybatis映射器配置小结》本文详解MyBatis映射器配置,重点讲解字段映射的三种解决方案(别名、自动驼峰映射、resultMap),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定... 目录select中字段的映射问题使用SQL语句中的别名功能使用mapUnderscoreToCame

Linux下MySQL数据库定时备份脚本与Crontab配置教学

《Linux下MySQL数据库定时备份脚本与Crontab配置教学》在生产环境中,数据库是核心资产之一,定期备份数据库可以有效防止意外数据丢失,本文将分享一份MySQL定时备份脚本,并讲解如何通过cr... 目录备份脚本详解脚本功能说明授权与可执行权限使用 Crontab 定时执行编辑 Crontab添加定

Java使用jar命令配置服务器端口的完整指南

《Java使用jar命令配置服务器端口的完整指南》本文将详细介绍如何使用java-jar命令启动应用,并重点讲解如何配置服务器端口,同时提供一个实用的Web工具来简化这一过程,希望对大家有所帮助... 目录1. Java Jar文件简介1.1 什么是Jar文件1.2 创建可执行Jar文件2. 使用java

SpringBoot 多环境开发实战(从配置、管理与控制)

《SpringBoot多环境开发实战(从配置、管理与控制)》本文详解SpringBoot多环境配置,涵盖单文件YAML、多文件模式、MavenProfile分组及激活策略,通过优先级控制灵活切换环境... 目录一、多环境开发基础(单文件 YAML 版)(一)配置原理与优势(二)实操示例二、多环境开发多文件版