Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

Swift-Veeam Cloud Backup : Request Timeout

Hello everyone,

In first, sorry for my english ! :)

I called you because I have a problem with a backup plan on Veeam Backup Cloud with Object Storage (Swift) OpenStack.

Indeed, the launch of the plan Veeam Backup Cloud Backup with a 25 GB file, it tells me "Disk Space insufisant". Then, with a 120MB file for example, it performs the backup plan and one, the following message appears: "Request Timeout: The server has Waited too long for the request to be send by the client."

So I set some variables regarding to 40GB, namely:

vim /etc/swift/swift.conf

max_file_size = 42949672960

vim /etc/swift/proxy-server.conf

[app:proxy-server]
object_chunk_size = 42949672960
client_chunk_size = 42949672960

I think he has a problem with many variables but which side OpenStack Swift? I join my installation and configuration files side Swift and Swift Proxy.

Can you clarify me on this problem, please? Thank you in advance.

Matthew



7 - Proxy Swift Installation (192.168.220.71)


apt-get install swift openssh-server rsync memcached python-netifaces python-xattr python-memcache

mkdir -p /etc/swift
chown -R swift:swift /etc/swift/

Copy of swift.conf file of storage server
scp test@192.168.220.62:/etc/swift/swift.conf /etc/swift/

apt-get install swift-proxy memcached python-keystoneclient python-swiftclient python-webob

vim /etc/memcached.conf

-l 192.168.220.71

service memcached restart

vim /etc/swift/proxy-server.conf

[DEFAULT]
bind_port = 8080
user = swift

[pipeline:main]
pipeline = healthcheck cache authtoken keystoneauth proxy-server

[app:proxy-server]
use = egg:swift#proxy
allow_account_management = true
account_autocreate = true
object_chunk_size = 42949672960
client_chunk_size = 42949672960

[filter:keystoneauth]
use = egg:swift#keystoneauth
operator_roles = Member,admin,swiftoperator

[filter:authtoken]
paste.filter_factory = keystoneclient.middleware.auth_token:filter_factory

# Delaying the auth decision is required to support token-less
# usage for anonymous referrers ('.r:*').
delay_auth_decision = true

# cache directory for signing certificate
signing_dir = /home/swift/keystone-signing

# auth_* settings refer to the Keystone server
auth_protocol = http
auth_host = 192.168.220.70
auth_port = 35357

# the same admin_token as provided in keystone.conf
admin_token = test2013

# the service tenant and swift userid and password created in Keystone
admin_tenant_name = service
admin_user = swift
admin_password = test2013

[filter:cache]
use = egg:swift#memcache

[filter:catch_errors]
use = egg:swift#catch_errors

[filter:healthcheck]
use = egg:swift#healthcheck


mkdir -p /home/swift/keystone-signing
chown -R swift:swift /home/swift/keystone-signing

cd /etc/swift
swift-ring-builder account.builder create 18 3 1
swift-ring-builder container.builder create 18 3 1
swift-ring-builder object.builder create 18 3 1

vim exportring

# set the zone number for that storage device
export ZONE=1
# relative weight (higher for bigger/faster disks)
export WEIGHT=100
# Device stockage
export DEVICE=sdb1

source exportring

swift-ring-builder account.builder add z$ZONE-$STORAGE_LOCAL_NET_IP:6002/$DEVICE $WEIGHT
swift-ring-builder container.builder add z$ZONE-$STORAGE_LOCAL_NET_IP:6001/$DEVICE $WEIGHT
swift-ring-builder object.builder add z$ZONE-$STORAGE_LOCAL_NET_IP:6000/$DEVICE $WEIGHT

swift-ring-builder account.builder
swift-ring-builder container.builder
swift-ring-builder object.builder

swift-ring-builder account.builder rebalance
swift-ring-builder container.builder rebalance
swift-ring-builder object.builder rebalance

Copy the rings on the storage server

chown -R swift:swift /etc/swift

swift-init proxy start


6 - Swift Installation (192.168.220.62)


apt-get install swift openssh-server rsync memcached python-netifaces python-xattr python-memcache

mkdir -p /etc/swift
chown -R swift:swift /etc/swift/

cat >/etc/swift/swift.conf <<eof< p="">

[swift-hash]
# random unique strings that can never change (DO NOT LOSE)
swift_hash_path_prefix = `od -t x8 -N 8 -A n </dev/random`
swift_hash_path_suffix = `od -t x8 -N 8 -A n </dev/random`

[swift-constraints]
max_file_size = 42949672960

EOF

Copy the file swift.conf on the proxy server

apt-get install swift-account swift-container swift-object xfsprogs

fdisk /dev/sdb

n
p
1
ENTRER
ENTRER
p
w

mkfs.xfs -i size=1024 /dev/sdb1
echo "/dev/sdb1 /srv/node/sdb1 xfs noatime,nodiratime,nobarrier,logbufs=8 0 0" >> /etc/fstab
mkdir -p /srv/node/sdb1
mount /srv/node/sdb1
chown -R swift:swift /srv/node

vim /etc/rsyncd.conf

uid = swift
gid = swift
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
address = 192.168.220.62

[account]
max connections = 25
path = /srv/node/
read only = false
lock file = /var/lock/account.lock

[container]
max connections = 25
path = /srv/node/
read only = false
lock file = /var/lock/container.lock

[object]
max connections = 25
path = /srv/node/
read only = false
lock file = /var/lock/object.lock

vim /etc/default/rsync

RSYNC_ENABLE = true

service rsync start

Copying rings proxy server

scp test@192.168.220.71:/etc/swift/account.ring.gz /etc/swift
scp test@192.168.220.71:/etc/swift/container.ring.gz /etc/swift
scp test@192.168.220.71:/etc/swift/object.ring.gz /etc/swift

mkdir -p /var/swift/recon
chown -R swift:swift /var/swift/recon

swift-init all start