群晖NAS月余使用体验
差不多上月这个时候,在VMware下装了个黑群晖NAS,模拟的DS3615xs环境,到今天差不多用了一个月的时间,分享下使用体验。
由于每个人对NAS的需求不一样,所以这里只代表我个的观点。
可能一开始对NAS的期望过高,虽说一开始用的时候不管是出于新奇也好,确实好用也罢,后面越来越发现它有点鸡肋。
Home of Little Jelly
差不多上月这个时候,在VMware下装了个黑群晖NAS,模拟的DS3615xs环境,到今天差不多用了一个月的时间,分享下使用体验。
由于每个人对NAS的需求不一样,所以这里只代表我个的观点。
可能一开始对NAS的期望过高,虽说一开始用的时候不管是出于新奇也好,确实好用也罢,后面越来越发现它有点鸡肋。
继MySQL集群,Redis集群后,我们在Kubernetes上来部署ElasticSearch集群。
详细过程如下。
先创建几个配置文件。
在Kubernetes上部署Redis集群,需要用到PersistentVolume,持久卷类型我选用NFS,当然用local-storage也是可以的,不过在自动化上没有NFS方便。
整个过程步骤较多。
NFS配置
首先Kubernetes主节点来部署并充当NFS服务器。
最近在学习Kubernetes,用它部署了Ingress,并用Ingress负载nginx,nginx转发到php服务里的php-fpm,php程序连接MySQL主从。
折腾了好几天,遇到不少问题,好在最后都解决了,列一下做个笔记。
这篇是关于Kubernetes使用Ingress做代理引发的PHP session问题。
在Kubernetes上部署了一个PHP传统站点,使用session做会话保持,nginx和php-fpm副本数都是1,但是登录后一刷新页面登录状态就失效,快的时候一次,慢的时候也就两三次。
多番排查无果,包括修改`php.ini`中的session配置,以及在程序中使用Redis存储session,问题依旧。
Ubuntu 20.04搭建NFS服务,我们用两台服务器做测试,一台做服务端,一台做客户端。
先配置服务端的,在第一台服务器上执行。
ThinkPHP5的缓存和session默认使用文件存储。
即`application/config.php`中`cache`的`type`是`File`,而`session`的`type`是空。
可以改用Redis作为缓存和session的存储,效率更高。在分布式的环境中,使用Redis来存储,可以保证数据的一致性和会话的一致性。
Nginx服务器配置ThinkPHP5站点,包括像FastAdmin这种使用ThinkPHP5的框架。
在配置上主要有三点:
1. PHP文件转发
2. 重写规则
3. PATHINFO模式的处理
这篇是关于基于官方的Ubuntu 20.04 Docker镜像构建自己的nginx和php镜像。
首先为什么要构建自己的镜像而不是直接使用官方的nginx和php镜像?
虽然官方的包体积比较小且启动方便,但不是完全可控的,除非你对它的nginx和php配置非常熟悉,不然二次构建是比较麻烦的,比如装个扩展什么的。
所以我们要构建自己的镜像,想怎么用就怎么用,知根知底,改起来也方便。
最近在学习Kubenetes,把Nginx,PHP,MySQL都以集群的方式部署到了Kubenetes下。
部署完成之后,找了个FastAdmin的项目来测试下有没有什么问题。
其它问题就不说了,主要是中文乱码的问题。