Maven私服的搭建
1. 下载,通过root用户进去Ubuntu server
12
$cd /opt$wget http://download.sonatype.com/nexus/oss/nexus-2.10.0-02-bundle.tar.gz
2. 启动
环境准备,启动nexus,必须先完成JDK环境的配置。
在启动文件nexus中增加nexus的启动用户,否则没权限启动,将报错如下:
WARNING - NOT RECOMMENDED TO RUN AS ROOT
If you insist running as root, then set the environment variable RUN_AS_USER=root before running this script
所以要解决此问题,需要在启动文件nexus,加上RUN_AS_USER=root
保存退出之后,即可启动nexus,命令如下:
表示启动成功,访问地址:http://ip:8081/nexus
3. 配置nexus
登录nexus,右上角Log In,默认登录用户名密码:admin/admin123
但是需要将其他几个代理的库配置映射到Public中,分别将Apache Snapshots、Central、Codehaus Sanpshots下Download Remote Indexes选项选择【true】,保存即可,默认是false,如下图
然后分别将Apache Snapshots、Central、Codehaus Sanpshots更新Index,在每一个库上面右键操作Repair Index
4.开启开机启动
Mysql搭建
1.安装mysql
|
|
2.新建用户开启远程链接
|
|
这时候需要设置环境变量或者创建软链接
12export LD_LIBRARY_PATH=/usr/lib64/ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so解压执行
1234tar xzf FastDFS.tar.gzcd FastDFS/./make.sh/make.sh install
确认make没有错误后,执行安装,默认会安装到/usr/bin中,并在/etc/fdfs中添加三个配置文件。
- 修改配置文件
首先将三个文件的名字去掉sample,暂时只修改以下几点,先让fastdfs跑起来,其余参数调优的时候再考虑。
4.1 tracker.conf 中修改:
base_path=/home/fastdfs #用于存放日志。
http.server_port=8090 ////TODO 这个http.server_port=8888 指的是在tracker服务器上启动http服务进程,如:apache或者nginx 启动时所监听的端口
4.2 storage.conf中修改:
disabled=false #启用配置文件
group_name=group1 #组名,根据实际情况修改
port=23000 #设置 storage 的端口号
base_path=/home/fastdfs #设置 storage 的日志目录(需预先创建)
store_path_count=1 #存储路径个数,需要和 store_path 个数匹配
store_path0=/home/fastdfs/storage #存储路径
tracker_server=120.77.41.162:22122 #tracker 服务器的 IP 地址和端口号
http.server_port=8888 #设置storage上启动的http服务的端口号,如安装的nginx的端口号
[备注]:store_path_count如果有多个,那么需要设置多个存储路径,如:
store_path_count=2
store_path0=/home/fastdfs/storage
store_path1=/home/fastdfs/storage1
4.3 client.conf 中修改:
base_path=/home/fastdfs #用于存放日志。 tracker_server=120.77.41.162:22122 #指定tracker服务器地址。
http.tracker_server_port=8888
#include http.conf
其它保持默认,注意上面那个是1个#,默认是2个#,去掉1个就行
付:
1) tracker.conf说明 http://www.tuicool.com/articles/RjQf22f
2) storage.conf说明 http://www.tuicool.com/articles/fuMJjyf
拷贝配置文件
1234cp -rv /home/yjy/fastdfs/conf/httpd.conf /etc/fdfs/ (如果要用httpserver 或者使用nginx作为文件获取服务器必须要这个文件)cp -rv /home/yjy/fastdfs/conf/mime.types /etc/fdfs/cp FastDFS(源码解压目录)/conf/anti-steal.jpg /etc/fdfs/cp fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/开启防火墙:
1234firewall-cmd --zone=public --add-port=23000/tcp --permanentfirewall-cmd --permanent --zone=public --add-service=httpfirewall-cmd --zone=public --add-port=22122/tcp --permanentfirewall-cmd --reload启动tracker和storage
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
netstat –lnp –tcp 参看端口是否起来,默认如果显示22122和8090,23000,80说明服务正常起来
- 上传删除测试
root@ubuntu:~# fdfs_test /etc/fdfs/client.conf upload /home/steven/01.jpg
nginx搭建
- zlib 安装
wget http://zlib.net/zlib-1.2.8.tar.gz
tar xzf zlib-1.2.8.tar.gz
cd zlib-1.2.8
./configure –prefix=/usr/local/zlib-1.2.8 && make &&make install - pcre 安装
wget http://exim.mirror.fr/pcre/pcre-8.38.tar.gz
tar xzf pcre-8.38.tar.gz
cd pcre-8.38
./configure –prefix=/usr/local/pcre-8.33 –libdir=/usr/local/lib/pcre –includedir=/usr/local/include/pcre && make && make install openssl
wget http://www.openssl.org/source/openssl-1.0.1e.tar.gz
tar xzf openssl-1.0.1e.tar.gz
cd openssl-1.0.1e
./config –prefix=/usr/local/openssl-1.0.1e && make && make install添加软连接
ln -sv /usr/include/fastcommon /usr/local/include/fastcommon
ln -sv /usr/include/fastdfs /usr/local/include/fastdfs
ln -sv /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
为了nginx自启动还需要
ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so下载安装fastdfs-nginx-module
wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz
tar xzf fastdfs-nginx-module_v1.16.tar.gz下载安装nginx
wget http://nginx.org/download/nginx-1.9.15.tar.gz
tar xzf nginx-1.9.15.tar.gz
cd nginx-1.9.15
./configure –prefix=/usr/local/nginx –with-pcre=/home/yjy/pcre-8.38 –with-zlib=/home/yjy/zlib-1.2.8 –add-module=/home/yjy/fastdfs-nginx-module/src –with-http_ssl_module –with-openssl=/home/yjy/openssl-1.0.1e –sbin-path=/usr/local/nginx/sbin/nginx && make && make install修改nginx扩展模块的配置文件,注意修改的是复制后的文件
cd ../fastdfs-nginx-module/src
cp mod_fastdfs.conf /etc/fdfs/
vi /etc/fdfs/mod_fastdfs.conf
base_path=/data/fastdfs/storage #保存日志目录
tracker_server=120.77.41.162:22122 #tracker 服务器的 IP 地址以及端口号
storage_server_port=23000 #storage服务器的端口号
group_name=group1 #当前服务器的group名
url_have_group_name = true #文件url中是否有group 名
store_path_count=1 #存储路径个数,需要和store_path 个数匹配
store_path0=/home/fastdfs/storage #存储路径
group_count = 1 #设置组的个数
#然后在末尾添加分组信息,目前只有一个分组,就只写一个
[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/home/fastdfs/storage做M00的链接
ln -s /home/fastdfs/storage/data /home/fastdfs/storage/data/M00修改nginx的配置文件
备注:如果nginx有其他服务器在用,在nginx.conf原有的基础上追加一个下面server的配置即可
vi /usr/local/nginx/conf/nginx.conf
server {
listen 8888;/注意端口和trackerServer一样
location / {
root /home/fastdfs/storage/data;
index index.html index.htm;
}
location /group1/M00 {
root /home/fastdfs/storage/data;
ngx_fastdfs_module;
}
}- 重启相关服务,验证整合是否成功
先重启storage服务:
/etc/init.d/fdfs_storaged start
然后再启动nginx,
注意顺序,否则会报端口占用的错误
./usr/local/nginx/sbin/nginx
- 重启相关服务,验证整合是否成功
查看端口使用情况:
netstat -lnp –tcp
如何让server进程退出运行?
直接kill即可让server进程正常退出,可以使用killall命令,例如:
killall fdfs_trackerd
killall fdfs_storaged
也可以使用如下命令:
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf stop
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf stop
千万不要使用-9参数强杀,否则可能会导致binlog数据丢失的问题。
如何重启server进程?
直接使用:
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
- nginx 服务器重启命令,关闭
nginx -s reload :修改配置后重新加载生效
nginx -s reopen :重新打开日志文件
nginx -t -c /path/to/nginx.conf 测试nginx配置文件是否正确
关闭nginx:
nginx -s stop :快速停止nginx
quit :完整有序的停止nginx
其他的停止nginx 方式:
ps -ef | grep nginx
kill -QUIT 主进程号 :从容停止Nginx
kill -TERM 主进程号 :快速停止Nginx
pkill -9 nginx :强制停止Nginx
启动nginx:
nginx -c /path/to/nginx.conf
平滑重启nginx:
kill -HUP 主进程号
proxy_set_header Host $http_host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 16k;
proxy_buffers 4 64k;
proxy_busy_buffers_size 128k;
proxy_temp_file_write_size 128k;