首页 > 其他分享 >goofys 鲲鹏上面编译挂载与性能测试

goofys 鲲鹏上面编译挂载与性能测试

时间:2023-07-23 18:00:28浏览次数:32  
标签:MB -- value default goofys go 挂载 鲲鹏

goofys 鲲鹏上面编译挂载与性能测试


介质

使用go进行编译.
官网上面有 amd64的介质,但是没有aarch64的介质 
需要自行编译
前几天一直编译失败. 周天在家自己测试了一把,根据github上面issue上面的描述编译成功了

发现的确比s3fs的性能要好, 计划下周进行一下与研发的联合测试工作. 

境内代理

export GOPROXY=https://goproxy.io

编译安装

go install  github.com/kahing/goofys@latest

mkdir -p go/src/github.com/kahing

cd go/src/github.com/kahing/
git clone https://github.com/kahing/goofys.git

也可以手工将zip包挪过来.

export GOPATH=/root/go
export GOOFYS_HOME=/root/go/src/github.com/kahing/goofys/

go install /root/go/src/github.com/kahing/goofys/

PATH=$PATH:/root/go/bin; export PATH
goofys --version
Hope this helps.

挂载

mkdir -p $HOME/.aws
cat >> $HOME/.aws/credentials << EOF
[default]
aws_access_key_id = minioadmin
aws_secret_access_key = minioadmin
EOF

mkdir /minio_goofys
goofys --debug_fuse --debug_s3  --endpoint http://192.168.255.45:9000  miniovoucher /minio_goofys


简单测试结果

写入性能

不带缓存
1G
1048576000字节(1.0 GB,1000 MiB)已复制,2.09474 s,501 MB/s
100M
104857600字节(105 MB,100 MiB)已复制,0.239955 s,437 MB/s
20M
20971520字节(21 MB,20 MiB)已复制,0.0931701 s,225 MB/s
带缓存
1G
1048576000字节(1.0 GB,1000 MiB)已复制,2.09269 s,501 MB/s
100M
104857600字节(105 MB,100 MiB)已复制,0.250175 s,419 MB/s
20M
20971520字节(21 MB,20 MiB)已复制,0.0845809 s,248 MB/s
本地文件系统
629145600字节(629 MB,600 MiB)已复制,0.167972 s,3.7 GB/s

读取性能

不带缓存
103875056字节(104 MB,99 MiB)已复制,0.162691 s,638 MB/s
带缓存
103875056字节(104 MB,99 MiB)已复制,0.0227822 s,4.6 GB/s

帮助效果

NAME:
   goofys - Mount an S3 bucket locally

USAGE:
   goofys [global options] bucket[:prefix] mountpoint

VERSION:
   0.24.0-use `make build' to fill version hash correctly

GLOBAL OPTIONS:
   -o value            Additional system-specific mount options. Be careful!
   --cache value       Directory to use for data cache. Requires catfs and `-o allow_other'. Can also pass in other catfs options (ex: --cache "--free:10%:$HOME/cache") (default: off)
   --dir-mode value    Permission bits for directories. (default: 0755) (default: 493)
   --file-mode value   Permission bits for files. (default: 0644) (default: 420)
   --uid value         UID owner of all inodes. (default: 0)
   --gid value         GID owner of all inodes. (default: 0)
   --endpoint value    The non-AWS endpoint to connect to. Possible values: http://127.0.0.1:8081/
   --profile value     Use a named profile from $HOME/.aws/credentials instead of "default"
   --use-content-type  Set Content-Type according to file extension and /etc/mime.types (default: off)
   --subdomain         Enable subdomain mode of S3

TUNING OPTIONS:
   --cheap                 Reduce S3 operation costs at the expense of some performance (default: off)
   --no-implicit-dir       Assume all directory objects ("dir/") exist (default: off)
   --stat-cache-ttl value  How long to cache StatObject results and inode attributes. (default: 1m0s)
   --type-cache-ttl value  How long to cache name -> file/dir mappings in directory inodes. (default: 1m0s)
   --http-timeout value    Set the timeout on HTTP requests to S3 (default: 30s)

AWS S3 OPTIONS:
   --region value         The region to connect to. Usually this is auto-detected. Possible values: us-east-1, us-west-1, us-west-2, eu-west-1, eu-central-1, ap-southeast-1, ap-southeast-2, ap-northeast-1, sa-east-1, cn-north-1 (default: "us-east-1")
   --requester-pays       Whether to allow access to requester-pays buckets (default: off)
   --storage-class value  The type of storage to use when writing objects. Possible values: REDUCED_REDUNDANCY, STANDARD, STANDARD_IA. (default: "STANDARD")
   --sse                  Enable basic server-side encryption at rest (SSE-S3) in S3 for all writes (default: off)
   --sse-kms key-id       Enable KMS encryption (SSE-KMS) for all writes using this particular KMS key-id. Leave blank to Use the account's CMK - customer master key (default: off)
   --sse-c value          Enable server-side encryption using this base64-encoded key (default: off)
   --acl value            The canned ACL to apply to the object. Possible values: private, public-read, public-read-write, authenticated-read, aws-exec-read, bucket-owner-read, bucket-owner-full-control (default: off)

MISC OPTIONS:
   --help, -h     Print this help text and exit successfully.
   --debug_fuse   Enable fuse-related debugging output.
   --debug_s3     Enable S3-related debugging output.
   -f             Run goofys in foreground.
   --version, -v  print the version

标签:MB,--,value,default,goofys,go,挂载,鲲鹏
From: https://www.cnblogs.com/jinanxiaolaohu/p/17575338.html

相关文章

  • linux-centos硬盘挂载
    先在vm中设置硬盘关机状态下添加硬盘选择硬盘类型scsi(s)创建新硬盘填写硬盘大小选择存放硬盘文件的位置在物理机上的地址完成添加......
  • rk3288不改内核情况下采用中断方式挂载按键驱动(各种错误提示)
    内核不是开源的,只能选择.ko文件加载驱动主板:么么厂家的rk3288,非瑞芯微官方板子瑞芯微官网下载SDK,编译后的内核写进板子,板子无法启动,显然厂家在瑞芯微的基础上改硬件了把GPIO_KEY驱动修改成模块,然后加载,提示log:versionmagic'4.4.192mod_unloadARMv5'shouldbe'4.4.154......
  • 群晖nas docker 挂载tomcat目录
    前情使用场景描述:docker安装了tomcat,想要通过tomcat部署war包,但是无法上次war包到容器,于是使用了挂载;docker容器目录挂载:我们可以在创建容器的时候,将宿主机的目录与容器内的目录进行映射,这样我们就可以实现宿主机和容器目录的双向数据自动同步; tomcat安装和挂载目录1.......
  • 鲲鹏920ARM架构的Linux系统运行的docker-compose
    实现鲲鹏920ARM架构的Linux系统运行的docker-compose作为一名经验丰富的开发者,我很乐意指导你如何实现鲲鹏920ARM架构的Linux系统运行的docker-compose。下面是整个过程的步骤:步骤说明步骤一安装Docker步骤二配置鲲鹏920的ARM架构环境步骤三安装docker-compo......
  • docker把本地文件夹挂载到容器中
    如何将本地文件夹挂载到Docker容器中1.概述在使用Docker进行应用程序开发时,经常需要将本地文件夹挂载到Docker容器中,以便在容器中进行代码的调试和测试。本文将详细介绍如何完成这个过程,并提供每一步的示例代码和解释。2.操作步骤步骤操作1创建一个本地文件夹,用于......
  • K8S-Pod挂载数据卷权限问题
    场景:需要将同一个服务的多个Pod副本的日志持久化到本地,为方便根据Pod的名称快速查看日志,在Pod挂载数据卷时,可以通过subPathExpr和env变量配合使用为每个Pod副本自动创建以Pod名称命名的文件夹故障:自动创建的文件夹属主属组为root,业务进程使用appuser启动,导致程序无法进行写操作......
  • k8s中,secret中有多条数据,如何将某条数据挂载为一个单独的文件?
    secrete中,包含以下两条数据db-password,原内容是123456db-username,原内容是:admin 这里都是base64编码的结果。 在pod中,volumemounts中,subPath指定某个数据项的key值mountPath:为具体的某个文件的名字这样挂载之后,就是具体的文件了,文件的内容,就是key对应的值。......
  • WLS2安装及挂载linux硬盘
    WSL2安装管理员权限运行powershell/cmdwsl--install#安装默认版本ubuntu拉取的时候建议挂个科技不然会失败wsl--list--online#以查看可用发行版列表wsl--install-d<DistroName>#以安装发行版WSL2卸载发行版wsl--unregister<DistributionName>WSL挂载linu......
  • Linux基础27 NFS原理, 搭建, NFS挂载卸载, NFS参数
    一、什么是NFS共享存储,文件服务器1.NFS基本概述NFS是NetworkFileSystem的缩写及网络文件系统。NFS主要功能是通过局域网让不同的主机系统之间可以共享文件或目录NFS系统和windows网络共享、网络驱动器类似,只不过windows用于局域网,NFS用于企业集群架构中如果是大型网页,会用到......
  • 解决Docker -v 挂载单文件问题
    问题描述下面命令挂载文件看着没有什么问题吧? dockerrun--namexxxx-p8001:80-v/docker/appsettings.json:/app/appsettings.json-dxxxx:v1.1.0但当我们执行完就会发现文件并没有挂载过来而是给我们创建了一个文件夹 解决方案 官方的建议是挂载文件夹,而不是......