openstack swift節點安裝手冊1-節點配置

來源:互聯網
上載者:User

標籤:file   fstab   ip地址   user   container   mount   下載   intern   https   

本文參照官方教程:http://docs.openstack.org/project-install-guide/object-storage/draft/environment-networking.html

我們要設定的swift節點名稱為object1,主控節點和proxy節點都是controller。

在controller節點的/etc/hosts檔案裡寫上節點名稱和ip地址,必須是能ping通的地址,同理,swift節點的/etc/hosts檔案要寫上各種地址。

在controller節點上進行以下操作:

source /root/admin-openrc.sh #必須找到該設定檔

建立swift使用者:

openstack user create --domain default --password-prompt swift

給swift使用者賦予admin角色許可權

openstack role add --project service --user swift admin

建立swift服務:

openstack service create --name swift --description "OpenStack Object Storage" object-store

建立endpoints:

openstack endpoint create --region RegionOne object-store public http://controller:8080/v1/AUTH_%\(tenant_id\)s
openstack endpoint create --region RegionOne object-store internal http://controller:8080/v1/AUTH_%\(tenant_id\)s
openstack endpoint create --region RegionOne object-store admin http://controller:8080/v1

安裝需要的組件:

yum install openstack-swift-proxy python-swiftclient python-keystoneclient python-keystonemiddleware memcached

下載設定檔:

curl -o /etc/swift/proxy-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample?h=stable/newton

修改設定檔/etc/swift/proxy-server.conf:

[DEFAULT]bind_port = 8080user = swiftswift_dir = /etc/swift
[pipeline:main]pipeline = catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk ratelimit authtoken keystoneauth container-quotas account-quotas slo dlo versioned_writes proxy-logging proxy-server
[app:proxy-server]use = egg:swift#proxy...account_autocreate = True
[filter:keystoneauth]use = egg:swift#keystoneauth...operator_roles = admin,user
[filter:authtoken]paste.filter_factory = keystonemiddleware.auth_token:filter_factory...auth_uri = http://controller:5000auth_url = http://controller:35357memcached_servers = controller:11211  #這裡有時候需要改成127.0.0.1:11211auth_type = passwordproject_domain_name = defaultuser_domain_name = defaultproject_name = serviceusername = swiftpassword = 要設定的swift使用者的密碼delay_auth_decision = True
[filter:cache]use = egg:swift#memcache...memcache_servers = controller:11211   #這裡有時候需要改成127.0.0.1:11211

接下來在storage節點上操作,也就是swift節點,若節點機器有多個,需要在每台節點機器上都執行
安裝相依元件:

yum install xfsprogs rsync

預先串連幾塊未格式化的硬碟,不要掛載和格式化,然後執行以下命令,一般為兩塊到三塊

mkfs.xfs /dev/sdbmkfs.xfs /dev/sdc
mkfs.xfs /dev/sdd

建立對應的掛載節點目錄:

mkdir -p /srv/node/sdbmkdir -p /srv/node/sdc
mkdir -p /srv/node/sdd

修改以下檔案/etc/fstab:

/dev/sdb /srv/node/sdb xfs noatime,nodiratime,nobarrier,logbufs=8 0 2/dev/sdc /srv/node/sdc xfs noatime,nodiratime,nobarrier,logbufs=8 0 2
/dev/sdd /srv/node/sdd xfs noatime,nodiratime,nobarrier,logbufs=8 0 2

掛載盤:

mount /srv/node/sdbmount /srv/node/sdc
mount /srv/node/sdd

修改/etc/rsyncd.conf檔案:

uid = swiftgid = swiftlog file = /var/log/rsyncd.logpid file = /var/run/rsyncd.pidaddress = storage節點用來與外部存取的地址[account]max connections = 2path = /srv/node/read only = Falselock file = /var/lock/account.lock[container]max connections = 2path = /srv/node/read only = Falselock file = /var/lock/container.lock[object]max connections = 2path = /srv/node/read only = Falselock file = /var/lock/object.lock

建立並重啟服務:

systemctl enable rsyncd.servicesystemctl start rsyncd.service

以上是針對proxy串連組件的安裝配置,接下來是account組件的配置,先安裝組件包:

yum install openstack-swift-account openstack-swift-container openstack-swift-object

修改/etc/swift/account-server.conf檔案:

[DEFAULT]...bind_ip = storage(swift)節點用於外部存取的串連地址bind_port = 6002user = swiftswift_dir = /etc/swiftdevices = /srv/nodemount_check = True
[pipeline:main]pipeline = healthcheck recon account-server
[filter:recon]use = egg:swift#recon...recon_cache_path = /var/cache/swift

修改container的設定檔/etc/swift/container-server.conf:

[DEFAULT]...bind_ip =storage(swift)節點用於外部存取的串連地址
bind_port = 6001
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True
[pipeline:main]pipeline = healthcheck recon container-server
[filter:recon]use = egg:swift#recon...recon_cache_path = /var/cache/swift

修改object設定檔/etc/swift/object-server.conf:

[DEFAULT]...bind_ip =storage(swift)節點用於外部存取的串連地址
bind_port = 6000
user = swift
swift_dir = /etc/swift
devices = /srv/node
mount_check = True
[pipeline:main]pipeline = healthcheck recon object-server
[filter:recon]use = egg:swift#recon...recon_cache_path = /var/cache/swiftrecon_lock_path = /var/lock

給節點賦予許可權

chown -R swift:swift /srv/node
mkdir -p /var/cache/swift
chown -R root:swift /var/cache/swift
chmod -R 775 /var/cache/swift
 
 
 
 
 
 



 

 

openstack swift節點安裝手冊1-節點配置

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.