Swift AKA OpenStack Object Storage je systém pro ukládání objektů s více nájemci, který poskytuje distribuované úložiště objektů s škálovatelnou funkcí napříč storage nody, které jsou v clusteru. Tato příručka vám pomůže nakonfigurovat swift na Ubuntu 14.04.2.
Swift má dvě hlavní součásti:
Swift proxy:
Přijímá API a nezpracované požadavky http na nahrávání souborů, úpravu metadat a vytváření kontejnerů. Protože jsou požadavky prováděny prostřednictvím REST API, používá HTTP slovesa s jednoduchými příkazy, jako jsou PUT a GET. Když uživatel odešle data, která mají být zapsána, požadavek bude odeslán na proxy server a ten vybere perfektní storage node pro uložení dat. Pro výkon a redundanci můžete mít více proxy serverů. V našem případě použijeme uzel řadiče jako rychlý proxy server.
Uzel úložiště:
Zde se ukládají uživatelská data, ve svém prostředí můžete mít více uzlů úložiště. Swift je replikovaný systém, všechna data v něm uložená budou uložena vícekrát (repliky), aby byla zajištěna vysoká dostupnost dat.
Předpoklady:
Níže je uvedena síťová konfigurace uzlu Proxy a Storage. Uzel úložiště bude mít jedno síťové rozhraní v síti pro správu.
Role | NW karta 1 |
---|---|
Proxy server (uzel řadiče) | 192.168.12.21 / 24, GW=192.168.12.2 (síť pro správu) |
Uzel úložiště objektů 1 | 192.168.12.25 / 24, GW=192.168.12.2 (síť pro správu) |
Uzel úložiště objektů 1 | 192.168.12.26 / 24, GW=192.168.12.2 (síť správy) |
Uzel úložiště objektů 1 | 192.168.12.27 / 24, GW=192.168.12.2 (síť správy) |
Nainstalujte a nakonfigurujte swift proxy v uzlu řadiče:
Načtěte své pověření správce ze skriptu prostředí.
# zdroj admin-openrc.sh
Vytvořte uživatele swift pro vytváření přihlašovacích údajů služby.
# openstack user create --password-prompt swiftUser Password:Opakujte uživatelské heslo:+----------+------------------- ----------------+| Pole | Hodnota |+----------+----------------------------------+| email | Žádné || povoleno | Pravda || id | 023c019a62f3476d986627e8615b034f || jméno | swift || uživatelské jméno | swift |+----------+-----------------------------------+Přidejte roli správce k uživateli swift.
# přidání role openstack --projektová služba --uživatel swift admin+-------+-------------------------- --------+| Pole | Hodnota |+-------+----------------------------------+| id | 33af4f957aa34cc79451c23bf014af6f || jméno | správce |+-------+-----------------------------------+Vytvořte entitu služby swift.
# vytvoření služby openstack --name swift --popis "OpenStack Object Storage" object-store+-------------+-------------- ---------------------+| Pole | Hodnota |+-------------+---------------------------------- -+| popis | OpenStack Object Storage || povoleno | Pravda || id | b835a5fbfe3d4a9592f6dbd69ddb148d || jméno | swift || typ | object-store |+-------------+-------------------------------- ---+Vytvořte koncový bod rozhraní API služby Object Storage.
# vytvoření koncového bodu openstack --publicurl 'http://controller:8080/v1/AUTH_%(tenant_id)s' --internalurl 'http://controller:8080/v1/AUTH_%(tenant_id)s' - -adminurl http://controller:8080 --region RegionOne object-store+--------------+------------------- ---------------------------+| Pole | Hodnota |+---------------+-------------------------------- ---------------+| adminurl | http://controller:8080 || id | d250217af148491abc611e2b72a227b8 || interníurl | http://controller:8080/v1/AUTH_%(tenant_id)s || publicurl | http://controller:8080/v1/AUTH_%(tenant_id)s || region | RegionOne || service_id | b835a5fbfe3d4a9592f6dbd69ddb148d || service_name | swift || service_type | object-store |+--------------+------------------------------- ----------------+Nainstalujte balíčky na uzel Controller.
# apt-get install swift swift-proxy python-swiftclient python-keystoneclient python-keystonemiddleware memcachedVytvořte adresář /etc/swift.
# mkdir /etc/swiftZískejte konfigurační soubor proxy ze zdrojového úložiště.
# curl -o /etc/swift/proxy-server.conf https://git.openstack.org/cgit/openstack/swift/plain/etc/proxy-server.conf-sample?h=stable/kiloUpravte soubor /etc/swift/proxy-server.conf.
# nano /etc/swift/proxy-server.confUpravte níže uvedená nastavení a nezapomeňte umístit položky do správných sekcí. Někdy možná budete muset přidat sekce, pokud soubor neexistuje, a také budete potřebovat přidat některé položky, které v souboru chybí, ne všechny.
[VÝCHOZÍ]...bind_port =8080user =swiftswift_dir =/etc/swift[pipeline:main]pipeline =catch_errors gatekeeper healthcheck proxy-logging cache container_sync bulk ratelimit authtoken keystoneauth kontejner-kvóty účet-kvóty slo dlo proxy-logging -server[app:proxy-server]...account_autocreate =true[filtr: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:35357auth_plugin =passwordproject_domain_id =defaultuser_domain_id =defaultproject_name =serviceusername =swiftpassword =heslo## Nahraďte "heslo" heslem, které jste zvolili pro swift služba identity delay_auth_decision =true## Zakomentujte nebo odeberte jakékoli další možnosti v sekci [filter:authtoken] [filter:cache]...memcache_servers =127.0.0.1:11211To je vše!!!, v našem dalším tutoriálu nakonfigurujeme uzly úložiště.
Nainstalujte Pydio (cloudové úložiště) na Ubuntu 14.10 / 14.04 OpenStack Kilo na Ubuntu 14.04.2 – Nakonfigurujte Cinder #2Ubuntu