IT blogi

Tämä on täydellinen opetusohjelma asentamisesta OpenStack (minimal config). Haluaisin kovasti kokeilla avoimen lähdekoodin pilvipalveluja, ja OpenStack on yksi vakavasti otettavista ratkaisuista, joita monet laitokset ja yritykset käyttävät. CERN on yksi käyttäjistä, ja Red Hat on OpenStackin vahva tukija.

ole tietoinen: senkin jälkeen, kun tämä ”silitetty” opetusohjelma, sinua tervehtii virheitä, kun olet määrittänyt kaiken, ja sinun täytyy tutkia lisää saada OpenStack toimimaan ok. Kirjoitan ongelmista vielä muutamassa pikaoppaassa.

Openstackilla on myös maine hankalana asentaa ja ylläpitää eikä se ole kovin vakaa. Luin paljon OpenStack-aiheesta, kävin läpi paljon dokumentaatiota ja tämä on tulos. Tämä kattaa manuaalinen asennus junan julkaisu, ja tämä laaja sarja kattaa jokaisen osan minimaalinen OpenStack asennus (älä anna tämän minimaalinen huijata sinua, on paljon tekemistä).

OpenStack official documentationin ja itse käyttöönoton välillä on muutamia eroja, joten tämän opetusohjelman pitäisi myös auttaa sinua säästämään lukemattomia tunteja virheiden etsimisessä ja virheiden selvittämisessä.

menettely on työläs, mutta suosittelen sitä lämpimästi, sillä sen lopussa OpenStackin perusperiaatteet ovat hyvin selvillä.

aiheesta lisää ensi kerralla, ruvetaan hommiin.

on oppimiskäyrä, ja lukemani perusteella uskon, että OpenStack on tällä hetkellä vakaa ratkaisu pilvitarpeisiisi.

mutta katsotaan matkan varrella, sukelletaan sisään.

edellytykset

aion käyttää CentOS 7: ää laitoksissani (v. 1908). Aion luoda minun LAB VMware Fusion / työasema. Centosin alkuasennus on minimaalinen ilman käyttöliittymää tai lisäyksiä.

kaikissa VMs-Järjestelmissäni on 4CPU-ydintä ja 8 Gt RAM-muistia vähintään 120 Gt kiintolevyllä.Vähimmäisvaatimukset löydät täältä – https://docs.openstack.org/install-guide/overview.html

huomioi verkko-ja asemakomponenttien lisävaatimukset ja lisää vastaavasti LABORATORIOOSI.

laboratoriossani on internetyhteys.

seuraan OpenStack – dokumentaatiota matkan varrella – https://docs.openstack.org/install-guide/common/conventions.html

asennan Junarakennuksen, joka on nykyinen. Aloitan ohjain solmu 1 ja laskea solmu 1.

Tarjoajaverkko on seuraavanlainen (tarvitset internet – yhteyden tätä konfiguraatiota varten):

10.0.0.1/24 – yhdyskäytävä

10.0.0.11/24 – Ohjainsolmu 1

10.0.0.31/24 – Laskusolmu 1

10.0.0.41/24-Lohkosolmu 1

10, 0, 0.51/24 – objektien Tallennussolmu 1

10.0.0.52/24-objektien Tallennussolmu 2

i myös myöhemmin luo verkon alueella 203.0.113.0/24, joka on hallintaverkosto.

tässä ovat myös koneiden nimet ja IP-osoitteet (tarvitset ne myös isäntätiedostossa):

10.0.0.11 ohjain

10.0.0.31 compute1

10.0.0.41 block1

10.0.0.51 object1

10.0.0.52 object2

H3>vaihda koneen konenimi

jokaiselle laboratorion koneelle vaihda konenimi. Muutan isäntänimeni juuri tämän yläpuolella mainitsemiini nimiin.

komento on alla, ohjain on jonkin koneen nimi, Muuta Se haluamaksesi.

sudo hostnamectl set-hostname controller

tältä muutos näyttää uudelleenkäynnistyksen jälkeen.

I named my machines – controller, compute1, block1, object1, object2.

Configure Name Resolution

Edit your network interface located in /etc/sysconfig/network-scripts

in my case, ifcfg-ens33

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

i edited following lines (controller machine example):

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

näin se näyttää

käynnistä kone uudelleen IP-kokoonpanon asettamisen jälkeen. Toista nämä vaiheet kaikille laboratorion koneille (aseta tietysti kullekin eri IP-osoite).

Päivitä CentOS-asennukset

ennen kuin jatkamme, päivitämme CentOS-asennukset. Näin varmistamme myös internetyhteytemme.

sudo yum update -y

muokkaa isäntätiedostoa

taas, se on tehtävä jokaisella koneella. Muokkaamme hosts-tiedostoa, jotta koneet voivat nähdä toisensa nimen perusteella.

sudo vi /etc/hosts/

tätä on kirjoitettava

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

näin tiedostoni näyttää

jos teimme kaiken ok, meidän pitäisi nyt pystyä Ping ohjaimesta compute1 ja päinvastoin nimellä. (Varmista, että ping on käytettävissä palomuurin kautta)

toimii.Kirjoita nämä arvot jokaiseen isäntätiedostoon jokaisella koneella ja varmista, että voit ping jokaisen koneen, ja testata jokaisesta koneesta.

Setup NTP service

tarkka ajanmittaus on tärkeää, joten asetamme aikapalvelimen ja liitämme siihen asiakkaita. Time server on meidän controller server ja asiakas kaikki muut koneet.

NTP-palvelimen asetukset

teemme tämän ohjainpalvelimellamme.

sudo yum install chrony -y

Ota käyttöön ja käynnistä palvelu ajamalla

sudo systemctl start chronydsudo systemctl enable chronyd

voit myös tarkistaa palvelun tilan ajamalla

systemctl status chronyd

seuraavaksi edit/etc / chrony.conf-tiedosto

sudo vi /etc/chrony.conf

tälle tutoriaalille jätän oletusarvoiset centos NTP-palvelimet. Muuten jos haluat muokata NTP-palvelimia, voit lisätä komennon alle (korvaa ntp_server NTP-palvelimen nimellä)

server NTP_SERVER iburst

myös meidän täytyy mahdollistaa pääsy NTP-asiakkaillemme lähiverkosta kommentoimalla ja muokkaamalla seuraavaa riviä

allow 10.0.0.0/24

tässä on minun config. Vihreä osa on, jossa syötät NTP-palvelimet, ja punainen osa on käytössä pääsy lähiverkostamme ajan synkronointia varten.

käynnistä palvelin tai kronopalvelu kirjoittamalla

sudo systemctl restart chronyd

tarkistamme, synkronoiko palvelimemme ajan kirjoittamalla

chronyc sources

palvelu toimii minulle.

otamme sen käyttöön myös palomuurin kautta

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

NTP-asiakkaiden asetukset

nämä vaiheet on tehtävä muilla koneilla.

taas pitää asentaa chrony

sudo yum install chrony

Ota käyttöön ja käynnistä NTP-palvelu

sudo systemctl start chronydsudo systemctl enable chronyd

sen jälkeen on taas muokattava/etc / chrony.conf

sudo vi /etc/chrony.conf

sinun tulee poistaa kaikki coment kaikista NTP-palvelimista ja syöttää seuraavat

server controller iburst

jätä kaikki ennalleen ja sulje tiedosto. Tältä omani näyttää.

taas, Käynnistä NTP-palvelu uudelleen

sudo systemctl restart chronyd

ja tarkistetaan, toimiiko se

chronyc sources

se toimii, asiakas kommunikoi NTP-palvelimen kanssa.

ja, NTP-palvelimella jos annamme komennon

chronyc clients

näemme, että compute1 on NTP-asiakas

toista vaihe muilla koneilla.

OpenStack-paketit

nämä vaiheet on tehtävä kaikille solmuille. Jos et ole päivittänyt CentOS-asennusta,ja poista EPEL Repo käytöstä.

!!!///Only FOR RED HAT INSTALLS, CENTOS SKIP THIS

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

Run following command (we are installing Train release)

sudo yum install centos-release-openstack-train

seuraava komento, jonka suoritamme, on

sudo yum upgrade

käynnistä sen jälkeen uudelleen ja valitse uusi ydin aktivoidaksesi sen.

seuraava komento on

sudo yum install python-openstackclient

ja vihdoinkin meidän on integroitava OpenStack-asennuksemme Selinuxiin

sudo yum install openstack-selinux

SQL-tietokanta

tietokanta asennetaan ohjaimen solmuun.Asennamme Mariadbin.

sudo yum install mariadb mariadb-server python2-PyMySQL

asennuksen jälkeen joudumme muokkaamaan OpenStackia.conf sijaitsee /etc/my.cnf.d

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

luomme mysqld-osion, jossa on seuraavat tiedot (varmista, että bind-osoite on ohjaimen osoite)

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

näin se näyttää minun tapauksessani

Ota käyttöön ja käynnistä MariaDB

sudo systemctl enable mariadb.servicesudo systemctl start mariadb.service

lisäämme myös palomuuripoikkeuksen

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

lopuksi varmistamme asennuksen ja asetamme salasanan root SQL: lle user

sudo mysql_secure_installation

Message Queue

OpenStack käyttää viestijonoa koordinoi toimintoja ja tilaa palvelujen välillä. Se toimii yleensä ohjaimella, joten asennamme sen ohjaimeen. Asennamme RabbitMQ

asennus

sudo yum install rabbitmq-server

Käynnistä ja ota palvelu käyttöön

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

lisää siihen openstack-käyttäjä. Korvaa RABBIT_PASS salasanallasi.

sudo rabbitmqctl add_user openstack RABBIT_PASS

Set luvat

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

nämä ovat palomuuriasetuksia RabbitMQ: lle

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

valinnainen SELinux-komento

setsebool -P nis_enabled 1

memcached

palveluiden identiteettipalvelun todennusmekanismi käyttää Memcached-välimuistipoletteja. Memcached-palvelu toimii tyypillisesti ohjaimisolmussa, joten asennan sen ohjaimisolmuun.

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-palvelut voivat käyttää etcd: tä, hajautettua luotettavaa avainarvosäilöä hajautetun avaimen lukitsemiseen, konfiguroinnin tallentamiseen, palvelun live-Nessin seurantaan ja muihin skenaarioihin.

Etcd tulee asentaa ohjaimen solmuun.

installaatio

sudo yum install etcd

seuraavaksi muokkaamme/etc/etcd / etcd.conf

sudo vi /etc/etcd/etcd.conf

sinun pitäisi muokata tiedostoa näin ja muuttaa alla olevia arvoja vastaamaan ohjaimen IP: tä tai nimeä.

#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"

näin tiedostoni näyttää

Ota käyttöön ja käynnistä palvelu

sudo systemctl enable etcdsudo systemctl start etcd

palomuurin lisäasetukset

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

so, we are more or less ”done” with initial part, we will now be doing minimal Deployment for Train.

minimaalinen käyttöönotto junalle

Ok, joten onnistuimme toistaiseksi. Teemme nyt minimaalisen palvelukäytön junalle. Tarkemmat tiedot löytyvät täältä – https://docs.openstack.org/install-guide/openstack-services.html

palvelut on asennettava määrätyssä järjestyksessä, kuten alla on kuvattu

tämän tutorin jälkeen on menossa hieman pitkä jo, aion lopettaa sen täällä, ja kattaa kunkin palvelut edellä erillisessä opetusohjelma.

tärkeää on tehdä kaikki palvelut täsmällisessä järjestyksessä, koska ne ovat alla.

tässä linkit

  1. Identity service – keystone-asennus junaan

2. Image service-vilkaisuasennus junalle

3. Työnvälityspalvelu-sijoitusasennus junalle

4. Compute service – Nova-asennus junalle

5. Networking service-neutron installation for Train

suosittelemme asentamaan myös seuraavat komponentit, kun olet asentanut minimaaliset käyttöönottopalvelut:

6. Dashboard-horizon-asennus junaan

7. Lohkovarastointipalvelu-karrelle asennus junaan

8. Object Storage service – swift installation for Train

Additional links for after installation for errors you may encounter:

Disclaimer

Vastaa

Sähköpostiosoitettasi ei julkaista.