zoukankan      html  css  js  c++  java
  • FastDFS迁移步骤

    特别说明:一切的前提是参考  https://www.cnblogs.com/eos666/p/9830630.html 先把环境搭建起来再说。

    1.相同服务器本地数据迁移

     1.1     本地服务器数据迁移

       server5 192.168.1.245  数据目录:/fastdfs/fdfs_storage

       server5 192.168.1.245  数据目录:/data

    需求:

    FastDFS 系统下存储的数据迁移至本ip下的另外一个盘,不是不同ip间的数据迁移。

    以下例子是将/fastdfs/fdfs_storage上的数据迁移至/data下。

     注:

    a)       迁移完后,原来的/fastdfs/fdfs_storage目录就做废了。

    b)       fdht去重数据和fdfs_trackerd都是存储到这个点的数据。

     

    1.2     停止服务

    killall nginx

    killall fdfs_trackerd

    killall fdfs_storaged

    killall fdhtd

     

    1.3     拷贝文件,迁移数据

    cp -r /fastdfs/fdfs_storage  /data

     

    1.4     修改配置文件路径

    vim /etc/fdfs/storage.conf 

    store_path0=/data/fdfs_storage/fdfs_storage_0
    
    base_path=/data/fdfs_storage

    vim /etc/fdfs/mod_fastdfs.conf 

    store_path0=/data/fdfs_storage/fdfs_storage_0 
    
    base_path=/data/fdfs_storage

    vim /etc/fdfs/client.conf

    base_path=/data/fdfs_client

    1.5     修改Nginx配置文件

    vim  /usr/local/nginx/conf/nginx.conf

    location /group1/M00/ {
    
        root /data/fdfs_storage/fdfs_storage_0;  #指向新的目录
    
        ngx_fastdfs_module;
    
       }

    1.6     重启服务

    #启动服务

    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

    /usr/local/bin/fdhtd   /etc/fdht/fdhtd.conf   restart

    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

    /usr/local/nginx/sbin/nginx

     

    至此,本次数据迁移完毕。

     

    2.不同服务器数据迁移

    2.1     本地服务器数据迁移

       server5 192.168.1.245  数据目录:/fastdfs/fdfs_storage

       server4 192.168.1.244  数据目录:/fastdfs/fdfs_storage

    需求:

    server5服务器下存储的数据迁移至server4服务器,不同ip间的数据迁移。

    其实,就是扩容1个storage节点。

    2.2     在新的机器server4上安装FastDFS

    安装步骤,具体可参照《01-FastDFS+FastDHT 单节点安装》。

     

    2.3     将新的storage接到老的tracker机器上,用来同步数据

    vim /etc/fdfs/storage.conf   # 其实直接从server5把配置文件拷贝过来就行

    tracker_server=192.168.1.245:22122  # 此IP一定是要指向server5

    2.4     拷贝FastDHT配置文件过来

    scp -r /etc/fdht root@192.168.1.244:/etc/

    cat /etc/fdfs/storage.conf   # 其实直接从server5把配置文件拷贝过来就行

    #此处特别需要注意配置,## 开头才是注释
    
    #include /etc/fdht/fdht_servers.conf

    2.5     启动storage服务

    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

     

    2.6     数据同步

    数据量不大的话,很快就同步过来了。

    /usr/bin/fdfs_monitor /etc/fdfs/storage.conf |grep sync  #查看同步结果

    # server5 数据目录/fastdfs/fdfs_storage 的数据就同步到 server4 上面了。

    ls /fastdfs/fdfs_storage #在servrer4服务器上面查看

     

    3.迁移后的数据需要独立运行

    server4 同步完server5 的storage 数据后,想在server4 上面重新搭建一套FastDFS+FastDHT服务使用。

     

    3.1     在新的机器server4上安装FastDFS+FastDHT

    参照《01-FastDFS+FastDHT 单节点安装》,进行安装;

    注!!!:

    所有启动服务项都先跳过,等配置修改完后再顺序启动各服务。

    [ nginx、fdfs_trackerd、fdfs_storaged、fdhtd ] 均不启动。

     

    3.2     拷贝FastDHT的去重数据

    从server5上面把/usr/local/db-18.1.25目录拷贝到server4上面。

    scp -r /usr/local/db-18.1.25 root@192.168.1.244:/usr/local/

     

    3.3     修改各服务的配置文件

    (1)配置/etc/fdfs/storage.conf文件

    vim storage.conf

    group_name=group1
    
    base_path=/fastdfs/fdfs_storage 
    
    store_path_count=1  
    
    store_path0=/fastdfs/fdfs_storage/fdfs_storage_0
    
    tracker_server=192.168.1.244:22122   # 一定要配置自己的IP地址
    
    port=23000
    
    http.server_port=8888
    
    check_file_duplicate=1
    
    key_namespace=FastDFS
    
    keep_alive=1
    
    #include /etc/fdht/fdht_servers.conf

    (2)配置/etc/fdfs/tracker.conf文件

    vim tracker.conf

    base_path=/fastdfs/fdfs_tracker/
    
    port=22122  #侦听端口
    
    http.server_port=80  #配置http端口

    (3)      配置fdhtd服务相关文件

    a)       配置/etc/fdht/fdht_client.conf文件

    vim /etc/fdht/fdht_client.conf

    base_path=/fastdfs/fastdht 
    
    keep_alive=1
    
    #include /etc/fdht/fdht_servers.conf

    b)       配置/etc/fdht/fdht_servers.conf 文件

    vim /etc/fdht/fdht_servers.conf

    group_count = 1
    
    group0 = 192.168.1.244:11411  # 一定要配置自己的IP地址

    c)        配置/etc/fdht/fdhtd.conf文件

    vim /etc/fdht/fdhtd.conf

    port=11411
    
    bash_path= /fastdfs/fastdht
    
    #include /etc/fdht/fdht_servers.conf

    (4)      配置Nginx服务相关文件

     a)       配置/etc/fdfs/mod_fastdfs.conf文件

     vim /etc/fdfs/mod_fastdfs.conf

    base_path=/fastdfs/fdfs_nginx
    
    tracker_server=192.168.1.244:22122  # 一定要配置自己的IP地址
    
    url_have_group_name=true      
    
    store_path_count=1
    
    store_path0=/fastdfs/fdfs_storage/fdfs_storage_0

    b)       配置/usr/local/nginx/conf/nginx.conf

     vim /usr/local/nginx/conf/nginx.conf

    ##-----------------------------------------
    
    user  nobody;
    
    worker_processes  2;
    
     
    
    pid  /var/run/nginx/nginx.pid;
    
     
    
    worker_rlimit_nofile 65535;
    
     
    
    events {
    
        worker_connections  65535;
    
    }
    
    http {
    
        include       mime.types;
    
        default_type  application/octet-stream;
    
        log_format main  '$remote_addr - $remote_user [$time_local] "$request" '
    
                   '$status $body_bytes_sent "$http_referer" '
    
                   '"$http_user_agent" $http_x_forwarded_for';
    
     
    
        access_log  /var/log/nginx/access.log  main;
    
        error_log  /var/log/nginx/error.log  error;
    
     
    
        server_names_hash_bucket_size 128;
    
        client_header_buffer_size 32k;
    
        large_client_header_buffers 4 32k;
    
        client_max_body_size 8m;
    
     
    
        sendfile        on;
    
        tcp_nopush      on;
    
        tcp_nodelay     on;
    
        keepalive_timeout  65;
    
     
    
        fastcgi_connect_timeout 300;
    
        fastcgi_send_timeout 300;
    
        fastcgi_read_timeout 300;
    
        fastcgi_buffer_size 64k;
    
        fastcgi_buffers 4 64k;
    
        fastcgi_busy_buffers_size 128k;
    
        fastcgi_temp_file_write_size 128k;
    
     
    
        gzip on;
    
        gzip_min_length 1k;
    
        gzip_buffers 4 16k;
    
        gzip_http_version 1.0;
    
        gzip_comp_level 2;
    
        gzip_types text/plain application/x-javascript text/css application/xml;
    
        gzip_vary on;
    
     
    
        server {
    
            listen       80;
    
            server_name  192.168.1.244;  # 一定要配置自己的IP地址
    
            location / {
    
                root   html;
    
                index  index.html index.htm;
    
            }
    
     
    
            location /group1/M00/ {
    
                root /fastdfs/fdfs_storage/fdfs_storage_0;
    
                ngx_fastdfs_module;
    
            }
    
     
    
            error_page   500 502 503 504  /50x.html;
    
            location = /50x.html {
    
                root   html;
    
            }
    
        }
    
    }
    
     
    
     
    
    ##-----------------------------------------

    3.4     删除部分索引相关数据,使其重新生成

    rm -rf /fastdfs/fdfs_storage/data/sync/192.168.1.245_23000.mark

    rm -rf /fastdfs/fdfs_storage/data/.data_init_flag

     

    3.5     启动各服务

    #start fastdfs

    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

    /usr/local/bin/fdhtd   /etc/fdht/fdhtd.conf   restart

    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

    /usr/local/nginx/sbin/nginx

    # 查看状态

    fdfs_monitor /etc/fdfs/client.conf

     至此,server4服务器也是一台提供FastDFS+FastDHT服务的单节点服务器了。

     

    3.6     server5删除server4这个storage节点

    因为server4之前是扩展节点,已经加入进来了,但现在server4独立运行了,需要把server4剔除掉。

     注:在server5上面操作

     删除STORAGE SERVER

    fdfs_monitor /etc/fdfs/client.conf delete group1 192.168.1.244  #删除server4

    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf stop

    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf stop

    删除或修改以下文件:

    rm -rf /fastdfs/fdfs_tracker/data/storage_changelog.dat

    vim /fastdfs/fdfs_tracker/data/storage_servers_new.dat

    #删除server4相关的记录,并把storage_count=2 修改为:

    storage_count=1

    > /fastdfs/fdfs_tracker/data/storage_sync_timestamp.dat

    #清除该文件所有记录

    重启服务:

    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

    fdfs_monitor /etc/fdfs/client.conf |more

     

    # 检查STORAGE SERVER,又恢复到一个storage节点了。

    fdfs_monitor /etc/fdfs/client.conf

     

  • 相关阅读:
    IDEA常用快捷指令整理
    Python dict 字典
    内联函数
    【MFC】编辑框 CEdit Ctrl控件自动换行设置
    mysql 多sql文件恢复方案
    Linux: 用64位的系统,能编译32位的程序吗?
    C++ 遍历数组
    工业现场传感器传感器为什么采用电流形式输出?
    【转】电磁阀、电磁铁的工作原理说明
    PCB板强弱电隔离距离不够导致损坏和问题检查记录
  • 原文地址:https://www.cnblogs.com/eos666/p/9830706.html
Copyright © 2011-2022 走看看