it Blog

toto bude úplný návod k instalaci OpenStack(minimální konfigurace). Velmi rád bych vyzkoušel open-source cloud OS a OpenStack je jedním z vážných řešení, které používá mnoho institucí a podniků. Cern je jedním z uživatelů a Red Hat je silným zastáncem OpenStack.

Buďte si vědomi: I po tomto „vyžehlit“ tutorial, budete uvítáni s chybami po nastavení všechno nahoru, a budete potřebovat k výzkumu více, jak dostat své OpenStack pracovat ok. O některých problémech budu psát v několika dalších rychlých průvodcích.

OpenStack má také pověst komplikované instalace a údržby a není příliš stabilní. Hodně jsem četl na téma OpenStack, prošel jsem spoustou dokumentace a to je výsledek. To se bude týkat ruční instalace uvolnění vlaku a tato rozsáhlá řada pokryje každou součást minimální instalace OpenStack (nenechte se tímto minimálním oklamat, je toho hodně co dělat).

Existuje několik rozdílů mezi OpenStack oficiální dokumentace a nasazení samotné, tak tento kurz by měl také pomoci ušetřit bezpočet hodin hledají chyby a dešifrování chyby přes cestu.

postup je zdlouhavý, ale vřele bych ho doporučil, protože na jeho konci budete dobře rozumět základním principům OpenStack.

Více na toto téma příště, pojďme do práce.

existuje křivka učení a z toho, co jsem četl, věřím, že OpenStack je v tuto chvíli stabilním řešením pro vaše cloudové potřeby.

ale uvidíme po cestě, pojďme se ponořit.

předpoklady

budu používat CentOS 7 pro své instalace (v. 1908). Budu vytvářet svou laboratoř v VMware Fusion / Workstation. CentOS počáteční instalace je minimální bez GUI nebo jakýchkoli dodatků.

všechny mé VM budou mít jádra 4CPU a 8 GB RAM s minimálně 120 GB pevného disku.Minimální požadavky najdete zde – https://docs.openstack.org/install-guide/overview.html

Vezměte na vědomí další požadavky ze síťových a hnacích komponent a přidejte je do své laboratoře.

Moje LABORATOŘ má přístup k internetu.

budu následující OpenStack dokumentace na cestě – https://docs.openstack.org/install-guide/common/conventions.html

budu instalovat Vlak build, který je aktuální. Začnu s uzlem řadiče 1 a výpočetním uzlem 1.

Síť Poskytovatele bude následující (budete potřebovat přístup k internetu pro tuto konfiguraci):

10.0.0.1/24 – brána

10.0.0.11/24 – Řadič Uzlu 1

10.0.0.31/24 – Compute Node 1

10.0.0.41/24 – Blokové Storage Node 1.

10.0.0.51/24 – Object Storage Node 1.

10.0.0.52/24 – Object Storage Node 2

já se také později vytvořit síť v dosahu 203.0.113.0/24, která bude správu sítě.

jsou Zde také jména a IP adresy stroje (budete také potřebovat, je v hosts souboru):

10.0.0.11 controller

10.0.0.31 compute1

10.0.0.41 block1

10.0.0.51 object1

10.0.0.52 object2

Změna Stroj Hostname

Pro každý stroj v laboratoři změnit hostname. Změním svá jména hostitelů na jména, která jsem zadal těsně nad tímto.

příkaz je níže, řadič je název jednoho ze strojů, změňte jej na to, co uznáte za vhodné.

sudo hostnamectl set-hostname controller

Zde je, jak změnit vzhled po restartu.

já jsem pojmenoval svou stroje – regulátor, compute1, block1, object1, object2.

Nastavit Název Usnesení

Upravte síťová rozhraní nachází v /etc/sysconfig/network-scripts

V mém případě, mám rozhraní ifcfg-ens33

sudo vi /etc/sysconfig/network-scripts/ifcfg-ens33

jsem upravil následující řádky (controller stroj příklad):

BOOTPROTO=noneIPADDR=10.0.0.11PREFIX=24GATEWAY=10.0.0.1DNS1=10.0.0.1DNS2=8.8.8.8ONBOOT=yesIPV6INIT=no

Zde je, jak to vypadá

Restartujte přístroj po nastavení ip konfigurace. Opakujte tyto kroky pro všechny stroje v laboratoři (samozřejmě nastavit jinou IP adresu pro každý).

Aktualizujte instalaci CentOS

než půjdeme dál, aktualizujeme naše instalace CentOS. Tímto způsobem také potvrdíme naše připojení k internetu.

sudo yum update -y

upravit soubor Hosts

znovu to musíme udělat na každém počítači. Upravíme soubor hosts, aby se stroje mohly navzájem vidět podle jména.

sudo vi /etc/hosts/

Toto je to, co musíme napsat

10.0.0.11 controller10.0.0.31 compute110.0.0.41 block110.0.0.51 object110.0.0.52 object2

Zde je, jak můj soubor vypadá jako

Pokud jsme udělali vše v pořádku, měli bychom nyní být schopni ping od správce compute1 a naopak podle jména. (Ujistěte se, že váš ping je k dispozici prostřednictvím brány firewall)

Funguje.Zadejte tyto hodnoty do každého souboru hosts na každém počítači a ujistěte se, že můžete ping každý stroj, a testovat z každého počítače.

nastavení služby NTP

přesné měření času je důležité, proto nastavíme časový server a připojíme k němu klienty. Time server bude naším serverem řadiče a klientem všech ostatních strojů.

nastavení serveru NTP

uděláme to na našem serveru řadiče.

sudo yum install chrony -y

Povolit a spustit službu příkazem

sudo systemctl start chronydsudo systemctl enable chronyd

můžete také zkontrolovat stav služby spuštěním

systemctl status chronyd

Next, budeme upravit /etc/chrony.conf soubor

sudo vi /etc/chrony.conf

pro tento tutoriál nechám výchozí servery centos NTP. Jinak pokud chcete upravit NTP servery, můžete přidáním příkazu níže (Nahradit NTP_SERVER s NTP server název)

server NTP_SERVER iburst

Také budeme muset povolit přístup pro naše NTP klienti z lokální sítě do uncommenting a editaci následující řádek

allow 10.0.0.0/24

Tady je můj config. Zelená část je místo, kde zadáte své servery NTP, a červená část je povolen přístup z naší místní sítě pro synchronizaci času.

Restartujte server nebo chrony služby zadáním

sudo systemctl restart chronyd

zkontrolujeme, zda náš server synchronizuje čas zadáním

chronyc sources

Služba funguje pro mě.

Budeme také povolit prostřednictvím brány firewall

sudo firewall-cmd --permanent --add-service=ntpsudo firewall-cmd --reload

NTP klientům setup

Tyto kroky je třeba provést na zbytek stroje.

ještě jednou, potřebujeme nainstalovat chrony

sudo yum install chrony

Povolit a spustit NTP služby

sudo systemctl start chronydsudo systemctl enable chronyd

Poté, co jsme opět muset upravit /etc/chrony.conf

sudo vi /etc/chrony.conf

Budete muset odstranit všechny coment všechny NTP servery a zadejte následující

server controller iburst

Nechat vše, jak je, a zavřete soubor. Takhle vypadá moje.

Opět, restart NTP služby

sudo systemctl restart chronyd

A podívejme se, jestli to funguje,

chronyc sources

To funguje, klient je komunikace s NTP server.

A, na NTP server, když jsme se vstoupit příkaz

chronyc clients

Budeme se že compute1 je NTP klient

Opakujte krok na zbytek stroje.

OpenStack balíčky

tyto kroky musí být provedeny na všech uzlech. Pokud jste neaktualizovali instalaci CentOS, a také zakázat EPEL Repo.

!!!///JEN PRO RED HAT NAINSTALUJE, CENTOS PŘESKOČIT

subscription-manager repos --enable=rhel-7-server-optional-rpms \ --enable=rhel-7-server-extras-rpms --enable=rhel-7-server-rh-common-rpms

Spustit následující příkaz (instalujeme Vlak vydání)

sudo yum install centos-release-openstack-train

Další příkaz provedeme, je,

sudo yum upgrade

Restartujte počítač po, a zvolte nový kernel, aby jej aktivovat.

Další příkaz bude

sudo yum install python-openstackclient

A konečně, potřebujeme integrovat naše OpenStack nainstalovat do SELinux

sudo yum install openstack-selinux

SQL Databáze

Databáze bude nainstalována na správce node.Nainstalujeme MariaDB.

sudo yum install mariadb mariadb-server python2-PyMySQL

po dokončení instalace budeme muset upravit openstack.conf se nachází v /etc / my.čnf.d

sudo vi /etc/my.cnf.d/openstack.conf

vytvoříme mysqld oddíl s následujícím info (ujistěte se, že bind-address je adresa vašeho správce)

bind-address = 10.0.0.11default-storage-engine = innodbinnodb_file_per_table = onmax_connections = 4096collation-server = utf8_general_cicharacter-set-server = utf8

Zde je, jak to vypadá v mém případě

Povolit a spustit MariaDB

sudo systemctl enable mariadb.servicesudo systemctl start mariadb.service

Budeme také přidat výjimku brány firewall

sudo firewall-cmd --permanent --add-service=mysqlsudo firewall-cmd --reload

Konečně jsme zajistí naše instalaci a nastavit heslo pro root uživatele sql

sudo mysql_secure_installation

Message Queue

používá OpenStack fronty zpráv k koordinovat operace a stav mezi službami. Obvykle běží na řadiči, takže jej nainstalujeme na řadič. Budeme instalovat RabbitMQ

Instalace

sudo yum install rabbitmq-server

Spustit a povolit službu,

sudo systemctl enable rabbitmq-server.servicesudo systemctl start rabbitmq-server.service

Přidat openstack uživatele. Nahraďte RABBIT_PASS heslem.

sudo rabbitmqctl add_user openstack RABBIT_PASS

Nastavit oprávnění

rabbitmqctl set_permissions openstack ".*" ".*" ".*"

Tyto jsou nastavení brány firewall pro RabbitMQ

sudo firewall-cmd --zone=public --permanent --add-port=4369/tcp --add-port=25672/tcp --add-port=5671-5672/tcp --add-port=15672/tcp --add-port=61613-61614/tcp --add-port=1883/tcp --add-port=8883/tcpsudo firewall-cmd --reload

Volitelné Selinuxu příkaz

setsebool -P nis_enabled 1

Memcached

Identity service mechanismus ověřování pro služby využívá Memcached do mezipaměti tokenů. Služba memcached obvykle běží na uzlu řadiče, takže ji nainstaluji na uzel řadiče.

Installation

sudo yum install memcached python-memcached

Next, we will edit /etc/sysconfig/memcached

sudo vi /etc/sysconfig/memcached

controller should be added to OPTIONS line, like this

OPTIONS="-l 127.0.0.1,::1,controller"

At last, we will enable and start service

sudo systemctl enable memcached.servicesudo systemctl start memcached.service

Optional firewall settings for memcached

sudo firewall-cmd --new-zone=memcached --permanentsudo firewall-cmd --zone=memcached --add-port=11211/udp --permanentsudo firewall-cmd --zone=memcached --add-port=11211/tcp --permanentsudo firewall-cmd --zone=memcached --add-source=10.0.0.0/24 --permanentsudo firewall-cmd --reload

Etcd

Short explanation from docs.openstack.org-OpenStack services mohou používat etcd, distribuované spolehlivé úložiště klíčových hodnot pro distribuované zamykání klíčů, ukládání konfigurace, sledování živých služeb a dalších scénářů.

Etcd by měl být nainstalován na uzlu regulátoru.

Instalace

sudo yum install etcd

dále upravíme / etc / etcd / etcd.conf

měli byste upravit soubor, jako je tento, a změnit hodnoty níže, aby odpovídaly vaší IP nebo jméno řadiče.

#ETCD_DATA_DIR="/var/lib/etcd/default.etcd"ETCD_LISTEN_PEER_URLS="http://10.0.0.11:2380"ETCD_LISTEN_CLIENT_URLS="http://10.0.0.11:2379"ETCD_NAME="controller"#ETCD_INITIAL_ADVERTISE_PEER_URLS="http://10.0.0.11:2380"ETCD_ADVERTISE_CLIENT_URLS="http://10.0.0.11:2379"ETCD_INITIAL_CLUSTER="controller=http://10.0.0.11:2380"ETCD_INITIAL_CLUSTER_TOKEN="etcd-cluster-01"ETCD_INITIAL_CLUSTER_STATE="new"

To je, jak můj soubor vypadá jako

Povolit a spustit službu,

sudo systemctl enable etcdsudo systemctl start etcd

Další nastavení firewallu

sudo firewall-cmd --add-port={2379,2380}/tcp --permanentsudo firewall-cmd --reload

Tak jsme se více či méně „hotový“ se zpočátku součástí, budeme teď dělat Minimální nasazení na Vlak.

minimální nasazení pro vlak

Ok, takže jsme byli zatím úspěšní. Nyní budeme dělat minimální nasazení služby pro vlak. Více informací lze nalézt zde – https://docs.openstack.org/install-guide/openstack-services.html

Služby musí být nainstalován v určeném pořadí, jako je znázorněno níže.

Protože tento tutoriál je trochu dlouho, dokončím to tady, a pokrytí jednotlivých služeb výše v samostatném tutoriálu.

důležité je dělat všechny služby v přesném pořadí, jak jsou níže.

zde jsou odkazy

  1. Identity service – Instalace keystone Pro vlak

2. Image service-glance instalace pro vlak

3. Placement service-umístění instalace pro vlak

4. Compute service-nova instalace pro vlak

5. Síťová služba-neutronová instalace pro vlak

po instalaci Služeb minimálního nasazení doporučujeme také nainstalovat následující komponenty:

6. Palubní deska-instalace horizontu pro vlak

7. Block Storage service – Instalace škváry pro vlak

8. Object Storage service – swift installation for Train

Additional links for after installation for errors you may encounter:

Disclaimer

Napsat komentář

Vaše e-mailová adresa nebude zveřejněna.