juicefs 1.0.3 集成 oceanbase 4.0 测试

以前我写过oceanbase ce 3.x 版本的,当时处理需要自己hack,目前测试的版本是juicefs 1.0.3 ,oceanbase ce 4.0 容器版

环境说明

oceanbase ce 4.0 基于docker-compose部署,juicefs 部署在linux 以及mac 机器中

  • 环境准备

    注意默认运行的ob root 密码为空,测试可以,实际使用需要调整

version: '3'
services:
  ob:
     image: dockerimage.yonyou.com/library/oceanbase-ce:4.0.0.0
     environment:
     - MINI_MODE=0
     volumes:
       - ./ob:/root/ob
       - ./obd:/root/.obd
     ports:
       - 2881:2881
  s3:
    image: minio/minio
    environment:
      - "MINIO_ACCESS_KEY=minio"
      - "MINIO_SECRET_KEY=minio123"
    command: server /data --console-address ":9001"
    ports:
      - "9000:9000"
      - "9001:9001"

资源准备

  • 数据库创建

创建一个juicefsv2 的数据库

 

 

  • minio s3

 

 

格式化

 
./juicefs format --storage minio \
    --bucket http://127.0.0.1:9000/juicefs2 \
    --access-key minio \
    --secret-key minio123 \
    "mysql://root@(127.0.0.1:2881)/juicefsv2" \
    pics
 

 

 

 

 


 

 

挂载

注意需要fuse 的安装,mac 与linux 是不一样的

 
sudo ./juicefs mount  "mysql://root@(127.0.0.1:2881)/juicefs2" appv2

 

 

文件操作

就按照正常文件操作就行了,没有什么异常

 

 

fstab 挂载

对于linux 基于fstab 的挂载方法如下

 
// copy juicefs
sudo cp /usr/local/bin/juicefs /sbin/mount.juicefs
//  /etc/fstab
mysql://root@(<ip>:2881)/juicefs   /opt/juicefsapps      juicefs     _netdev,allow_other   0       0

说明

通过测试发现新那本ob 与juicefs 兼容是很不错的,直接就可以很流畅的配置,不像老版本需要自己hack 处理下, 对于需要一个可靠以及支持都租户数据隔离场景的juicefs
元数据存储方案来说,ob 是一个不错的选择(多租户隔离,强大的周边能力),比如我以前就写过一个基于juicefs+s3 开发一个简单git server ,利用s3 bucket 分离以及ob多租户能力,我们就可以开发一个比较灵活的简单 git server,玩法如如下图

 

 

参考资料

https://www.oceanbase.com/docs/community-observer-cn-10000000000900534
https://juicefs.com/docs/community/getting-started/for_distributed/
https://www.cnblogs.com/rongfengliang/p/15779969.html
https://github.com/juicedata/juicefs/releases/tag/v1.0.3
https://www.cnblogs.com/rongfengliang/p/15860306.html
https://www.cnblogs.com/rongfengliang/p/15860286.html

posted on 2023-02-16 19:42  荣锋亮  阅读(78)  评论(0编辑  收藏  举报

导航