leofs 安装部署_林杰&的博客-CSDN博客


本站和网页 https://blog.csdn.net/u012473280/article/details/73614206 的作者无关,不对其内容负责。快照谨为网络故障时之索引,不代表被搜索网站的即时页面。

leofs 安装部署_林杰&的博客-CSDN博客
leofs 安装部署
林杰&
于 2017-06-23 10:39:46 发布
2150
收藏
分类专栏:
对象存储
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://blog.csdn.net/u012473280/article/details/73614206
版权
对象存储
专栏收录该内容
4 篇文章
0 订阅
订阅专栏
centos leofs 配置
1. leofs cluster 基本规划
Manager
IP: 10.39.1.23, 10.39.1.24
Name: manager_0@10.39.1.23, manager_1@10.39.1.24
Gateway
IP: 10.39.1.28
Name: gateway_0@10.39.1.28
Storage
IP: 10.39.1.25 .. 10.39.1.26 ... 10.39.1.27
Name: storage_01@10.39.1.25 .. storage_02@10.39.1.26...storage_02@10.39.1.27
(需要将iptables selinux 防火墙关闭)
2 leofs 介绍
LeoFS是一个非结构化的Web对象存储和高可用的,分布式的,最终一致的存储系统
10.39.1.23 c6qPkWB9sCk8
3 安装部署
10.39.1.23 上配置
1.机器列表
修改主机名以及hosts
10.39.1.23 leofs_01
10.39.1.24 leofs_02
10.39.1.25 storage_01
10.39.1.26 storage_02
10.39.1.27 storage_03
10.39.1.28 gw_01
2.安装ansible
yum install epel-release -y
yum install ansible -y
3.配置ansible
vim /etc/ansible/hosts
4.编辑所有服务器配置主机名
vim /etc/hostname
vim /etc/hosts
5.生成key
ssh-keygen
ansible 推送key 到其他服务器
ansible all -m authorized_key -a "user=root key='{{ lookup('file','~/.ssh/id_rsa.pub')}}'"
6.安装依赖的软件包
ansible leofs -m shell -a "yum install gcc gcc-c++ glibc-devel make ncurses-devel openssl-devel autoconf libuuid-devel cmake check check-devel wget curl git gcc* vim nc -y "
7.验证
ansible leofs -m shell -a "hostname"
ansible leofs -m shell -a "cat /etc/hosts"
8.下载leofs 包
http://leo-project.net/leofs/download.html
下载centos 7 1.3.2.1 最新rpm包
将rpm copy 到其他服务器
ansible all -m copy -a 'src=~/leofs-1.3.2.1-1.erl-18.3.el7.x86_64.rpm dest=/opt'
ansible all -m shell -a 'ls -l /opt'
ansible all -m shell -a 'cd /opt/; yum install leofs-1.3.2.1-1.erl-18.3.el7.x86_64.rpm -y'
3.1 存储节点安装
ansible leofs_storage -m shell -a "yum --enablerepo=centosplus install kmod-xfs xfsprogs xfsprogs-devel -y"
1. 查看安装目录是否全部安装
ansible all -m shell -a 'ls -l /usr/local/leofs'
4 配置leofs
10.39.1.23 配置manger0
manager0 中会配置一致性的级别和集群的id 以及名称
1. leofs 一致性级别配置参考
相关资料参考 http://leo-project.net/leofs/docs/configuration/configuration_1.html#system-configuration-label
A reference consistency level
Level Configuration
Low n = 3, r = 1, w = 1, d = 1
Middle n = 3, [r = 1 | r = 2], w = 2, d = 2
High n = 3, [r = 2 | r = 3], w = 3, d = 3
2. 编辑文件
cp /usr/local/leofs/1.3.2.1/leo_manager_0/etc/leo_manager.conf /usr/local/leofs/1.3.2.1/leo_manager_0/etc/leo_manager.conf.bak
vim /usr/local/leofs/1.3.2.1/leo_manager_0/etc/leo_manager.conf
manager.partner = manager_1@10.39.1.24
system.dc_id = dc_1
system.cluster_id = leofs_cluster # 集群名字
consistency.num_of_replicas = 3 # 集群的副本集
consistency.write = 1
consistency.read = 1
consistency.delete = 1
consistency.rack_aware_replicas = 0
nodename = manager_0@10.39.1.23
10.39.1.24 manger1 配置
1. 编辑文件
cp /usr/local/leofs/1.3.2.1/leo_manager_1/etc/leo_manager.conf /usr/local/leofs/1.3.2.1/leo_manager_1/etc/leo_manager.conf.bak
vim /usr/local/leofs/1.3.2.1/leo_manager_1/etc/leo_manager.conf
manager.partner = manager_0@10.39.1.23
nodename = manager_1@10.39.1.24
10.39.1.25 storage_01配置
返回到10.39.1.23 上使用ansible 对配置文件进行备份
ansible leofs_storage -m shell -a "cp /usr/local/leofs/1.3.2.1/leo_storage/etc/leo_storage.conf /usr/local/leofs/1.3.2.1/leo_storage/etc/leo_storage.conf.bak "
1. leofs 建议使用xfs,因为xfs I/O对大文件支持比较好
添加一块硬盘并且格式化为xfs 文件系统
fdisl /dev/vdc
mkfs.xfs /dev/vdc1
添加到fstab
vim /etc/fstab
/dev/sda3 /mnt/xfs xfs noatime,nodiratime,osyncisdsync 0 0
vim /usr/local/leofs/1.3.2.1/leo_storage/etc/leo_storage.conf
managers = [manager_0@10.39.1.23, manager_1@10.39.1.24]
obj_containers.path = [/data/leofs]
obj_containers.num_of_containers = [8]
读写参数的一些设置
磁盘的一些设置
## Watchdog.DISK
## Is disk-watchdog enabled - default:false
watchdog.disk.is_enabled = false
## disk - raised error times
watchdog.disk.raised_error_times = 5
## disk - watch interval - default:1sec
watchdog.disk.interval = 10
## Threshold use(%) of a target disk's capacity - defalut:85%
watchdog.disk.threshold_disk_use = 85
## Threshold disk utilization(%) - defalut:90%
watchdog.disk.threshold_disk_util = 90
## Threshold disk read kb/sec - defalut:98304(KB) = 96MB
#watchdog.disk.threshold_disk_rkb = 98304
#131072kb=128MB
watchdog.disk.threshold_disk_rkb = 131072
## Threshold disk write kb/sec - defalut:98304(KB) = 96MB
#watchdog.disk.threshold_disk_wkb = 98304
#131072(kb)=128MB
watchdog.disk.threshold_disk_wkb = 131072
nodename = storage_01@10.39.1.25
配置也可以参考
leofs 存储默认可以设置多个
## e.g. Case of plural pathes
## obj_containers.path = [/var/leofs/avs/1, /var/leofs/avs/2]
## obj_containers.num_of_containers = [32, 64]
10.39.1.26 storage02 配置
mkfs.xfs /dev/vdc1
vim /usr/local/leofs/1.3.2.1/leo_storage/etc/leo_storage.conf
managers = [manager_0@10.39.1.23, manager_1@10.39.1.24]
obj_containers.path = [/data/leofs]
obj_containers.num_of_containers = [8]
nodename = storage_02@10.39.1.26
10.39.1.27 storage03 配置
mkfs.xfs /dev/vdc1
vim /usr/local/leofs/1.3.2.1/leo_storage/etc/leo_storage.conf
managers = [manager_0@10.39.1.23, manager_1@10.39.1.24]
obj_containers.path = [/data/leofs]
obj_containers.num_of_containers = [8]
nodename = storage_03@10.39.1.27
10.39.1.23
返回到10.39.1.23 上使用ansible 批量执行
ansible leofs_storage -m shell -a "mkdir /data/leofs -p "
ansible leofs_storage -m shell -a "ls /data/"
ansible leofs_storage -m shell -a "mount /dev/vdc1 /data/leofs"
ansible leofs_storage -m shell -a "df -h"
echo "/dev/vdc1 /data/leofs xfs noatime,nodiratime,osyncisdsync 0 0" >> /etc/fstab
ansible leofs_storage -m shell -a 'echo "/dev/vdc1 /data/leofs xfs noatime,nodiratime,osyncisdsync 0 0" >> /etc/fstab'
将storage01 02 03 重启
查看存储是否挂载成功
ansible leofs_storage -m shell -a "df -h"
gw_01 10.39.1.28 配置
网关配置协议 端口 网关的缓存大小
vim /usr/local/leofs/1.3.2.1/leo_gateway/etc/leo_gateway.conf
managers = [manager_0@10.39.1.23, manager_1@10.39.1.24]
protocol = s3
http.port = 8080
cache.cache_ram_capacity = 268435456
cache.cache_disc_capacity = 0
cache.cache_expire = 300
cache.cache_max_content_len = 1048576
nodename = gateway_01@10.39.1.28
# 网关配置线程池
## Large Object Handler - put worker pool size
large_object.put_worker_pool_size = 64
## Large Object Handler - put worker buffer size
large_object.put_worker_buffer_size = 32
## Memory cache capacity in bytes
cache.cache_ram_capacity = 0
## Disk cache capacity in bytes
cache.cache_disc_capacity = 0
## When the length of the object exceeds this value, store the object on disk
cache.cache_disc_threshold_len = 1048576
## Directory for the disk cache data
cache.cache_disc_dir_data = ./cache/data
## Directory for the disk cache journal
cache.cache_disc_dir_journal = ./cache/journal
启动顺序
Order of server launch
Manager-master
Manager-slave
Storage nodes
Gateway(s)
10.39.1.23 manager0
/usr/local/leofs/1.3.2.1/leo_manager_0/bin/leo_manager start
/usr/local/leofs/1.3.2.1/leo_manager_0/bin/leo_manager ping
pong
10.39.1.24 manager1
/usr/local/leofs/1.3.2.1/leo_manager_1/bin/leo_manager start
/usr/local/leofs/1.3.2.1/leo_manager_1/bin/leo_manager ping
pong
10.39.1.25 storage01
/usr/local/leofs/1.3.2.1/leo_storage/bin/leo_storage start
/usr/local/leofs/1.3.2.1/leo_storage/bin/leo_storage ping
pong
10.39.1.26 storage02
/usr/local/leofs/1.3.2.1/leo_storage/bin/leo_storage start
/usr/local/leofs/1.3.2.1/leo_storage/bin/leo_storage ping
pong
10.39.1.27 storage03
/usr/local/leofs/1.3.2.1/leo_storage/bin/leo_storage start
/usr/local/leofs/1.3.2.1/leo_storage/bin/leo_storage ping
pong
启动状态验证
查看存储的启动信息
ansible leofs_storage -m shell -a "ls -l /data/leofs"
10.39.1.26 | SUCCESS | rc=0 >>
总用量 12
drwxr-xr-x 2 root root 4096 3月 30 16:00 log
drwxr-xr-x 10 root root 4096 3月 30 15:24 metadata
drwxr-xr-x 2 root root 310 3月 30 15:18 object
drwxr-xr-x 2 root root 4096 3月 30 15:24 state
10.39.1.25 | SUCCESS | rc=0 >>
总用量 12
drwxr-xr-x 2 root root 4096 3月 30 16:00 log
drwxr-xr-x 10 root root 4096 3月 30 15:23 metadata
drwxr-xr-x 2 root root 310 3月 30 15:04 object
drwxr-xr-x 2 root root 4096 3月 30 15:23 state
10.39.1.27 | SUCCESS | rc=0 >>
总用量 4
drwxr-xr-x 2 root root 4096 3月 30 16:00 log
drwxr-xr-x 10 root root 246 3月 30 15:19 metadata
drwxr-xr-x 2 root root 310 3月 30 15:19 object
在10.39.1.23 上执行查看集群的状态
集群的状态查询是经过nmap 通信查询的, 需要在各个节点下安装nc
ansible leofs -m shell -a "yum install nc -y "
/usr/local/leofs/1.3.2.1/leofs-adm status
/usr/local/leofs/1.3.2.1/leofs-adm status
[System Confiuration]
-----------------------------------+----------
Item | Value
-----------------------------------+----------
Basic/Consistency level
-----------------------------------+----------
system version | 1.3.2
cluster Id | leofs_cluster
DC Id | dc_1
Total replicas | 3
number of successes of R | 1
number of successes of W | 1
number of successes of D | 1
number of rack-awareness replicas | 0
ring size | 2^128
-----------------------------------+----------
Multi DC replication settings
-----------------------------------+----------
max number of joinable DCs | 2
number of replicas a DC | 1
-----------------------------------+----------
Manager RING hash
-----------------------------------+----------
current ring-hash |
previous ring-hash |
-----------------------------------+----------
[State of Node(s)]
-------+----------------------------+--------------+---------------- +----------------+----------------------------
type | node | state | current ring | prev ring | updated at
-------+----------------------------+--------------+----------------+----------------+----------------------------
S | storage_01@10.39.1.25 | attached | | | 2017-03-30 15:24:56 +0800
S | storage_02@10.39.1.26 | attached | | | 2017-03-30 15:24:43 +0800
S | storage_03@10.39.1.27 | attached | | | 2017-03-30 15:19:22 +0800
-------+----------------------------+--------------+----------------
启动网关
10.39.1.28
/usr/local/leofs/1.3.2.1/leo_gateway/bin/leo_gateway start
/usr/local/leofs/1.3.2.1/leo_gateway/bin/leo_gateway ping
pong
存储驱动启动
10.39.1.23 leofs
/usr/local/leofs/1.3.2.1/leofs-adm start
Generating RING...
Generated RING
OK 33% - storage_01@10.39.1.25
OK 67% - storage_03@10.39.1.27
OK 100% - storage_02@10.39.1.26
OK
/usr/local/leofs/1.3.2.1/leofs-adm status
[System Confiuration]
-----------------------------------+----------
Item | Value
-----------------------------------+----------
Basic/Consistency level
-----------------------------------+----------
system version | 1.3.2
cluster Id | leofs_cluster
DC Id | dc_1
Total replicas | 3
number of successes of R | 1
number of successes of W | 1
number of successes of D | 1
number of rack-awareness replicas | 0
ring size | 2^128
-----------------------------------+----------
Multi DC replication settings
-----------------------------------+----------
max number of joinable DCs | 2
number of replicas a DC | 1
-----------------------------------+----------
Manager RING hash
-----------------------------------+----------
current ring-hash |
previous ring-hash |
-----------------------------------+----------
[State of Node(s)]
-------+----------------------------+--------------+---------------- +----------------+----------------------------
type | node | state | current ring | prev ring | updated at
-------+----------------------------+--------------+----------------
S | storage_01@10.39.1.25 | running | 79e0dbc4 | 79e0dbc4 | 2017-03-30 15:29:17 +0800
S | storage_02@10.39.1.26 | running | 79e0dbc4 | 79e0dbc4 | 2017-03-30 15:29:17 +0800
S | storage_03@10.39.1.27 | running | 79e0dbc4 | 79e0dbc4 | 2017-03-30 15:29:17 +0800
G | gateway_01@10.39.1.28 | running | 79e0dbc4 | 79e0dbc4 | 2017-03-30 15:29:18 +0800
-------+----------------------------+--------------+----------------
leofs 对象存储的配置和查询
s3-api 命令使用
http://leo-project.net/leofs/docs/admin_guide/admin_guide_8.html
用户查询
get-users
/usr/local/leofs/1.3.2.1/leofs-adm get-users
user_id | role_id | access_key_id | created_at
------------+---------+------------------------+---------------------------
_test_leofs | 9 | 05236 | 2017-03-30 15:03:54 +0800
删除默认的用户
delete-user <user-id>
/usr/local/leofs/1.3.2.1/leofs-adm delete-user _test_leofs
OK
创建用户
create-user <user-id> <password>
/usr/local/leofs/1.3.2.1/leofs-adm create-user test test
access-key-id: 919ca38e3fb34085b94a
secret-access-key: 387d7f32546982131e41355e1adbcae1a9b08bec
/usr/local/leofs/1.3.2.1/leofs-adm get-users
user_id | role_id | access_key_id | created_at
--------+---------+------------------------+---------------------------
test | 1 | 919ca38e3fb34085b94a | 2017-03-30 15:45:41 +0800
endpoint
/usr/local/leofs/1.3.2.1/leofs-adm add-endpoint 10.39.1.28
OK
/usr/local/leofs/1.3.2.1/leofs-adm get-endpoints
endpoint | created at
-----------------+---------------------------
10.39.1.28 | 2017-03-30 15:49:14 +0800
localhost | 2017-03-30 15:03:54 +0800
s3.amazonaws.com | 2017-03-30 15:03:54 +0800
add-bucket <bcuket> <access-key-id>
/usr/local/leofs/1.3.2.1/leofs-adm add-bucket abc 919ca38e3fb34085b94a
OK
/usr/local/leofs/1.3.2.1/leofs-adm get-buckets
cluster id | bucket | owner | permissions | redundancy method | created at
--------------+----------+--------+------------------+------------------------------+---------------------------
leofs_cluster | abc | test | Me(full_control) | copy, {n:3, w:1, r:1, d:1} | 2017-03-30 15:51:43 +0800
get-bucket <access-key-id>
权限
/usr/local/leofs/1.3.2.1/leofs-adm update-acl abc 919ca38e3fb34085b94a public-read-write
OK
查看存储节点的磁盘信息
/usr/local/leofs/1.3.2.1/leofs-adm du detail storage_01@10.39.1.25
/usr/local/leofs/1.3.2.1/leofs-adm status storage_01@10.39.1.25
性能压测
leofs 性能测试工具 basho_bench
https://github.com/basho/basho_bench
10.39.1.23 安装
安装性能测试工具
git clone https://github.com/leo-project/basho_bench.git
cd basho_bench/
make all
# make all 的时候使用的git 有时候拉取依赖会报错,使用https 就好
批量替换git deps 目录下的所有的rebar.confg 配置文件git 修改为https
find deps -name rebar.config -type f -exec sed -i 's/git:\/\//https:\/\//g' {} +
make all
性能压测测试文件
16kb 文件压测
vim 16file.conf
{mode, max}.
{duration, 10}.
{concurrent, 50}.
{driver, basho_bench_driver_leofs}.
{code_paths, ["deps/ibrowse"]}.
{http_raw_ips, ["10.39.1.28"]}. %% able to set plural nodes
{http_raw_port, 8080}. %% default: 8080
{http_raw_path, "/abc"}.
%% {http_raw_path, "/${BUCKET}"}.
{key_generator, {partitioned_sequential_int, 660000}}. %% 请求的次数
{value_generator, {fixed_bin, 16384}}. %% 16KB
{operations, [{put,1}]}. %% PUT:100%
%%{operations, [{put,1}, {get, 4}]}. %% PUT:20%, GET:80%
{check_integrity, false}.
660000x16kb=10GB
安装nmon 收集信息
ansible leofs -m shell -a "yum install wget https://raw.githubusercontent.com/hambuergaer/nmon-packages/master/nmon-rhel7-1.0-1.x86_64.rpm -y "
ansible leofs -m shell -a "mkdir /nmon "
10 分钟
nmon 使用参数
-s 表示秒级采集一次数据
-c 表示采集收的次数
-m 表示生成数据文件的路径
-f 表示生成数据文件名中有时间
nmon -f -s 1 -c 360 -m /nmon
一秒采集一次,总共采集6分钟,1x360/3600=6分钟
先检查一下磁盘的大小
[root@leofs_01 basho_bench]# ansible leofs_storage -m shell -a "du -sh /data/leofs "
10.39.1.26 | SUCCESS | rc=0 >>
332K /data/leofs
10.39.1.25 | SUCCESS | rc=0 >>
332K /data/leofs
10.39.1.27 | SUCCESS | rc=0 >>
132K /data/leofs
同时写入9.7GB 16KB大小的文件 ,用时5分钟
用时5分钟
ansible leofs_storage -m shell -a "du -sh /data/leofs "
10.39.1.26 | SUCCESS | rc=0 >>
9.7G /data/leofs
10.39.1.25 | SUCCESS | rc=0 >>
9.7G /data/leofs
10.39.1.27 | SUCCESS | rc=0 >>
9.7G /data/leofs
性能指标 CPU/IO 性能指标
磁盘指标
网卡读写
这里只列出了storage1 的性能指标,其他storgae2 和storge3 指标未在这里列出来
把网关的线程池打开设置为64
# 网关配置线程池
## Large Object Handler - put worker pool size
large_object.put_worker_pool_size = 16
## Large Object Handler - put worker buffer size
large_object.put_worker_buffer_size = 32
## Memory cache capacity in bytes
cache.cache_ram_capacity = 0
## Disk cache capacity in bytes
cache.cache_disc_capacity = 0
## When the length of the object exceeds this value, store the object on disk
cache.cache_disc_threshold_len = 1048576
## Directory for the disk cache data
cache.cache_disc_dir_data = ./cache/data
## Directory for the disk cache journal
cache.cache_disc_dir_journal = ./cache/journal
10万 文件用时一分钟 使用比例如下
4096.. 8192: 15%
8192.. 16384: 25%
16384.. 32768: 23%
32768.. 65536: 22%
65536.. 131072: 15%
{mode, max}.
{duration, 1000}.
{concurrent, 64}.
{driver, basho_bench_driver_leofs}.
{code_paths, ["deps/ibrowse"]}.
{http_raw_ips, ["10.39.1.28"]}.
{http_raw_port, 8080}.
{http_raw_path, "/abc"}.
{retry_on_overload, true}.
{key_generator, {partitioned_sequential_int, 1000000}}.
{value_generator, {fixed_bin, 262144}}.
{operations, [{put,1}]}.
{value_generator_source_size, 1048576}.
{http_raw_request_timeout, 30000}. % 30seconds
{value_size_groups, [{15, 4096, 8192},{25, 8192, 16384}, {23, 16384, 32768}, {22, 32768, 65536}, {15, 65536, 131072}]}.
安装web 界面
10.39.1.23 安装LeoCenter
git clone https://github.com/leo-project/leo_center.git
yum install ruby-devel -y
cd leo_center/
gem install bundler
bundle install
修改配置
config.yml
:managers:
- "localhost:10020" # master
- "localhost:10021" # slave
:credential:
:access_key_id: "YOUR_ACCESS_KEY_ID"
:secret_access_key: "YOUR_SECRET_ACCESS_KEY"
启动服务
thin start -a ${HOST} -p ${PORT} > /dev/null 2>&1 &
创建管理员
You need to create an administrator user from LeoFS-Manager’s console.
$ leofs-adm create-user leo_admin password
access-key-id: ab96d56258e0e9d3621a
secret-access-key: 5c3d9c188d3e4c4372e414dbd325da86ecaa8068
$ leofs-adm update-user-role leo_admin 9
OK
leofs-adm create-user leo_admin password
access-key-id: 8d9de6fdfb35f837e9ed
secret-access-key: 7dcc2631493865c7fb7ec7f96dda627f1cbb21eb
leofs-adm update-user-role leo_admin 9
OK
[root@leofs_01 leo_center]# leofs-adm get-users
user_id | role_id | access_key_id | created_at
----------+---------+------------------------+---------------------------
leo_admin | 9 | 8d9de6fdfb35f837e9ed | 2017-03-31 11:40:14 +0800
test | 1 | 919ca38e3fb34085b94a | 2017-03-30 15:45:41 +0800
经过测试。
删除用户buckets 是存在的,只有当buckets 删除之后数据才能真正删除
林杰&
关注
关注
点赞
收藏
打赏
评论
leofs 安装部署
centos leofs 配置1. leofs cluster 基本规划 Manager IP: 10.39.1.23, 10.39.1.24 Name: manager_0@10.39.1.23, manager_1@10.39.1.24 Gateway IP: 10.39.1.28 Name: gateway_0@10.39.1.28 Storage IP: 10.39.1.
复制链接
扫一扫
专栏目录
leofs:LeoFS存储系统
03-06
用于和Web的存储系统
概述
LeoFS是企业开源存储,它是一个高可用性,分布式的,最终一致的对象/ blob存储。 如果您正在寻找一个可以存储大量和各种文件(例如照片,电影,日志数据等)的存储系统,那么LeoFS就是适合的选择。
LeoFS支持以下功能:
多协议
S3-API支持
LeoFS是与Amazon S3兼容的存储系统。
切换到LeoFS可以通过更昂贵的公共云解决方案降低成本。
REST-API支持使用轻松访问LeoFS
NFS支持LeoFS v1.1提供了NFS支持,其当前状态为beta。
大对象支持LeoFS涵盖处理大型对象。
多数据中心复制
LeoFS是一个高度可扩展的,容错的分布式文件系统,没有SPOF。
LeoFS的群集可以看作是巨大的容量存储。 它由一组松散连接的节点组成。
我们可以通过简单的操作构建一个全球规模的存储系统
建筑学
LeoFS由三个
leofs, LeoFS存储系统.zip
09-18
leofs, LeoFS存储系统 :一个用于数据湖的存储系统和 Web 概述LeoFS是一个英镑的企业开放源码存储,它是一个高度可用。分布式。最终一致的对象/。 如果要寻找存储大量和各种文件如照片。电影。日志数据等的存储系统,那么LeoFS就适合于这种
评论 1
您还未登录,请先
登录
后发表或查看评论
jenkins安装和部署
最新发布
weixin_45031570的博客
11-21
238
jenkins安装和部署
内存分配步骤
dongyu_GG的博客
03-25
467
旅客列车票额自动分配系统的设计和实现
09-03
旅客列车票额自动分配系统的设计和实现旅客列车票额自动分配系统的设计和实现
路由重分配的4个常规步骤
gole的博客
03-31
51
1、找出需要配置重分配的边界路由器。选择单个路由器作重分配可以使由反馈信息所产生的路有环路的可能性最小化。
2、决定核心或骨干路由协议。典型的,一般为OSPF、ISIS或EIGRP。
3、决定边缘或短期路有协议,决定是否所有来自边缘路由协议的路由都必须重定向到核心路由中。考虑减少路由条目的方法。
4、选择一种把边缘路...
分配权限过程
xiaoxiao1777的博客
05-19
233
每一个节点都有唯一的id值,选中某个节点,就可以获取到该节点的id值,el-tree提供了一个默认勾选节点的数组属性,这个值对象得自己提供
选中某些节点后,拿到它们的id放入数组中
在点击分配按钮的同时,即弹出树形结构对话框之前,把已有末级节点的id值全部拿到,放到数组中,通过:default-checked-keys="defkeys"属性绑定,把这个数组交给该属性
如何拿到呢?
定义一个递归函数,把当前选中的角色传到函数中,通过递归的方式把末级节点id值都放到数组中
分配权限:
点击确定分配
MM-科目自动分配
abbilglf665483的博客
04-16
94
SAP系统篇
MM自动记账解析之基本概念(01)
https://blog.csdn.net/qq_33641781/article/details/78027802
MM自动记账解析之功能实现(02)
https://blog.csdn.net/qq_33641781/article/details/78029041
MM自动记账解析之功能实现(03)
https://bl...
独占设备的分配程序
dongyanxia1000的专栏
07-09
6013
1、基本的设备分配程序
---- 当某进程提出I/O请求后,系统的设备分配程序可按下述步骤进行设备分配:
1)分配设备
-- 首先根据I/O请求中的物理设备名,查找系统设备表(SDT),从中找出该设备的DCT(设备分配表),再根据DCT中的设备状态字段,可知
该设备是否正忙。若忙,便将请求I/O进程的PCB挂在设备队列上;否则,便按照一定的算法来计算本次设备分配的安全性。如果不会导致系统
ArcGIS教程:欧氏分配——空间分析
07-11
1372
摘要
  基于欧氏距离计算每个像元的最近源。
  插图
  用法
输入源数据可以是要素类或栅格。当输入源数据是栅格时,源像元集包括具有有效值的源栅格中的所有像元。具有 NoData 值的像元不包括在源集内。值 0 将被视为合法的源。使用提取工具可轻松地创建源栅格。当输入源数据是要素类时,源位置在执行分析之前从内部转换为栅格。栅格的分辨率可以由输出像元大小参数或像元大小环境来控制
分配线性地址区间
云(存储),松(耦合)
05-31
2523
<br />前面讲了那么多线性区底层分配的细节,现在让我们讨论怎样分配一个新的线性地址区间。为了做到这点,do_mmap()函数为当前进程创建并初始化一个新的线性区。不过,分配成功之后,可以把这个新的线性区与进程已有的其他线性区进行合并。<br /><br />static inline unsigned long do_mmap(struct file *file, unsigned long addr,<br /> unsigned long len, unsigned long prot,<br />
r语言写内曼最优分配_C语言零基础入门—函数03
weixin_35681965的博客
12-28
178
C语言零基础入门—函数-03本节课的任务是:函数的声明。全局变量与局部变量。01 - 函数的声明前面我们说过,自定义的函数,必须放在 main 函数前面,这是为什么呢?答:因为C程序在执行之前,会先被编译器(比如:VC6.0)将每一个函数划分为一块一块的函数块,并且由上向下的顺序分配函数块的地址,于是进行函数调用的时候 主函数(假设是函数 a) 根据 被调用函数(假设是函数 b) 的地址...
对象进入堆内存时,堆内存具体的分配和回收步骤
LZHHuo的博客
02-01
541
堆内存具体的分配和回收步骤:
(1)进入Eden区, 区内存不够的时候就会触发MinorGC,对新生代区进行一次垃圾回收。
(2)MinorGC会清除Eden区的游离对象(没有被GC Roots标记的对象),非垃圾对象(被GC Roots标记的对象)会被复制到SurvivorFrom区,这些对象的分代年龄为1(经历了1次GC)。
(3)Eden内存不够又触发了MinorGC,MinorGC又会和...
“相关推荐”对你有帮助么?
非常没帮助
没帮助
一般
有帮助
非常有帮助
提交
©️2022 CSDN
皮肤主题:大白
设计师:CSDN官方博客
返回首页
林杰&
CSDN认证博客专家
CSDN认证企业博客
码龄9年
暂无认证
26
原创
20万+
周排名
186万+
总排名
7万+
访问
等级
738
积分
12
粉丝
14
获赞
评论
52
收藏
私信
关注
热门文章
记一次centos7.2 文件系统修复
32128
NoSQL 中一匹黑马 Clickhouse
8473
harbor 高可用部署
8117
leofs 对象存储介绍(一)
3223
mac使用iterm2 使用powerlevel9k主题
3172
分类专栏
devops
5篇
jenkins
1篇
对象存储
4篇
nosql
1篇
linux
4篇
自动化运维
4篇
容器
7篇
golang
4篇
最新评论
harbor 高可用部署
zfk1989:
这个redis是单点的 万一挂了怎么办呢 大佬知道harbor怎么去配置redis集群不呢
leofs 安装部署
林杰&:
leofs qq 群号 群号:610390335
您愿意向朋友推荐“博客详情页”吗?
强烈不推荐
不推荐
一般般
推荐
强烈推荐
提交
最新文章
vscode 乱码解决之根本
gitlab-备份脚本
go学习笔记-数组
2022年1篇
2021年5篇
2020年1篇
2018年10篇
2017年9篇
目录
目录
分类专栏
devops
5篇
jenkins
1篇
对象存储
4篇
nosql
1篇
linux
4篇
自动化运维
4篇
容器
7篇
golang
4篇
目录
评论 1
被折叠的 条评论
为什么被折叠?
到【灌水乐园】发言
查看更多评论
打赏作者
林杰&
谢谢,尊重原创
¥2
¥4
¥6
¥10
¥20
输入1-500的整数
余额支付
(余额:-- )
扫码支付
扫码支付:¥2
获取中
扫码支付
您的余额不足,请更换扫码支付或充值
打赏作者
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额
抵扣说明:
1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。 2.余额无法直接购买下载,可以购买VIP、C币套餐、付费专栏及课程。
余额充值