IT Blog

Este será um tutorial completo sobre a instalação do OpenStack (minimal config). Eu gostaria muito de tentar open-source cloud OS, e OpenStack é uma das soluções sérias, usadas por muitas instituições e empresas. O CERN é um dos usuários, e o Red Hat é um forte defensor do OpenStack.

esteja ciente: mesmo depois deste tutorial” passado a ferro”, você será recebido com erros depois de configurar tudo, e você terá que pesquisar mais para que o seu OpenStack funcione ok. Vou escrever sobre alguns dos problemas em mais alguns guias rápidos.

OpenStack também tem reputação de ser complicado de instalar e manter e não muito estável. Li muito sobre o tema OpenStack, passei por muita documentação e este é o resultado. Isto irá cobrir a instalação manual de lançamento de trem, e esta extensa série irá cobrir todos os componentes de Mínima instalação OpenStack (não deixe que este mínimo enganá-lo, há muito a fazer).

Existem algumas diferenças entre a documentação oficial do OpenStack e a própria implementação, por isso este tutorial também deve ajudá-lo a salvar inúmeras horas de procurar erros e decifrar erros através do caminho.o procedimento

É tedioso, mas eu recomendaria muito, uma vez que no final, você terá uma boa compreensão dos princípios básicos do OpenStack.mais sobre o assunto da próxima vez, vamos trabalhar.

Existe uma curva de aprendizagem, e pelo que li acredito que o OpenStack é neste momento uma solução estável para as suas necessidades de nuvem.

mas, veremos ao longo do caminho, vamos mergulhar.

pré-requisitos

i usará CentOS 7 para as minhas instalações (v. 1908). Vou criar o meu laboratório em fusão/estação de trabalho VMware. A instalação inicial CentOS é mínima sem GUI ou quaisquer adições.

Todos os meus VMs terão núcleos 4CPU e 8GB de RAM com um mínimo de 120GB de disco rígido.Você pode encontrar requisitos mínimos aqui –

tome nota dos requisitos adicionais dos componentes de rede e unidade e adicione de acordo com o seu laboratório.

Meu LABORATÓRIO tem acesso à internet.

I will be following OpenStack documentation along the way – https://docs.openstack.org/install-guide/common/conventions.html

i will install Train build, which is the current one. Vou começar com o nó 1 do controlador e calcular o nó 1.

Rede do Fornecedor de serviços será da seguinte forma (necessita de acesso à internet para esta configuração):

10.0.0.1/24 gateway

10.0.0.11/24 – Controlador de Nó 1

10.0.0.31/24 – Nó de Computação 1

10.0.0.41/24 – Bloco Nó de Armazenamento 1

10.0.0.51/24-Object Storage Node 1

10.0.52 / 24-Object Storage Node 2

I will also later create network in range 203.0.113.0 / 24, that will be management network.

Aqui estão também os nomes e endereços IP das máquinas (você também vai precisar deles no arquivo de hosts):

10.0.0.11 controlador

10.0.0.31 compute1

10.0.0.41 block1

10.0.0.51 objeto1

10.0.0.52 object2

Alterar nome do computador host

Para cada máquina no laboratório de alterar o nome do host. Vou mudar os meus nomes de anfitriões para os nomes que especificei acima disto.

comando está abaixo, controller é o nome de uma das máquinas, alterá-lo para o que você acha melhor.

sudo hostnamectl set-hostname controller

Aqui é que a mudança parece após a reinicialização.

eu chamei o meu de máquinas – controlador, compute1, block1, objeto1, objeto2.

Configurar a Resolução de nomes

Editar a sua interface de rede, localizado em /etc/sysconfig/network-scripts

No meu caso, eu tenho interface ifcfg-ens33

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

eu editado seguintes linhas (de computador do controlador de exemplo):

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

Aqui é como parece

Reiniciar a máquina depois que você definir a configuração de ip. Repita estes passos para todas as máquinas no laboratório (é claro definir endereço IP diferente para cada um).

Update CentOS installation

Antes de irmos mais longe, iremos atualizar as nossas instalações CentOS. Desta forma, confirmaremos também a nossa conectividade à internet.

sudo yum update -y

Edite Hosts file

novamente, temos que fazer isso em cada máquina. Vamos editar o arquivo hosts, para que as máquinas possam se ver pelo nome.

sudo vi /etc/hosts/

Isto é o que precisamos para entrar

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

Aqui é como meu arquivo se parece com

Se nós fizemos tudo ok, que agora deve ser capaz de efectuar o ping do controlador para o compute1 e vice-versa pelo nome. (Certifique-se de que seu ping está disponível através de firewall)

Funciona.Digite estes valores em cada arquivo hosts em cada máquina e certifique-se de que você pode ping cada máquina, e testar a partir de cada máquina.

configurar o serviço NTP

a medição precisa do tempo é importante para que possamos definir o servidor de tempo e anexar clientes a ele. Time server será o nosso servidor de controle e cliente de todas as outras máquinas.

configuração do servidor NTP

faremos isso em nosso servidor de controller.

sudo yum install chrony -y

Activar e iniciar o serviço executando

sudo systemctl start chronydsudo systemctl enable chronyd

Você também pode verificar o estado do serviço por execução

systemctl status chronyd

em seguida, vamos editar o /etc/chrony.conf file

sudo vi /etc/chrony.conf

para este tutorial vou deixar servidores de centos NTP por omissão. Caso contrário, se você deseja editar servidores de NTP, você pode, adicionando comandos abaixo (Substituir NTP_SERVER com o servidor NTP nome)

server NTP_SERVER iburst

Também vamos precisar para ativar o acesso de nossos clientes NTP de rede local descomentando e a edição seguinte linha

allow 10.0.0.0/24

Aqui está a minha config. A parte verde é onde você vai entrar em seus servidores NTP, e a parte vermelha é ativada o acesso a partir de nossa rede local para sincronizar o tempo.

Reinicie o servidor ou chrony serviço, digitando

sudo systemctl restart chronyd

Vamos verificar se o nosso servidor de sincronização de tempo digitando

chronyc sources

o Serviço funciona para mim.

também o activaremos através do firewall

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

configuração dos clientes NTP

estes passos têm de ser feitos no resto das máquinas.

Novamente, precisamos instalar o chrony

sudo yum install chrony

Activar e iniciar o serviço NTP

sudo systemctl start chronydsudo systemctl enable chronyd

Depois que precisamos editar o arquivo /etc/chrony.conf

sudo vi /etc/chrony.conf

terá de apagar todos os servidores NTP e introduzir a seguir

deixe tudo como está, e feche o ficheiro. É assim que a minha se parece.

Novamente, reinicie o serviço NTP

sudo systemctl restart chronyd

E permite verificar se ele funciona

chronyc sources

Ele funciona, o cliente está se comunicando com o servidor NTP.

E, no servidor NTP se entrarmos comando

chronyc clients

Nós irá se que compute1 é cliente NTP

Repita o passo sobre o restante dos computadores.estes passos devem ser feitos em todos os nós. Se ainda não actualizou a instalação dos seus CentOS, e também desactivou a EPEL Repo.

!!!///APENAS PARA INSTALA o RED HAT, CENTOS IGNORAR ESTE

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

Execute o seguinte comando (estamos instalando Trem de lançamento)

sudo yum install centos-release-openstack-train

o Seguinte comando vamos correr é

sudo yum upgrade

a Reinicialização após ele, e selecione novo kernel, para ativá-lo.

O próximo comando será

sudo yum install python-openstackclient

e, finalmente, precisamos integrar a nossa instalação OpenStack no SELinux

sudo yum install openstack-selinux

base de Dados SQL

base de dados será instalada no nó do controlador.Vamos instalar o MariaDB.

sudo yum install mariadb mariadb-server python2-PyMySQL

após a instalação ser feita, vamos precisar editar um openstack.conf localizada em /etc / my.cnf.d

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

Vamos criar o mysqld seção com as seguintes informações (certifique-se de bind-address é o endereço do controlador)

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

Aqui está como ele olha, como no meu caso

Activar e iniciar o MariaDB

sudo systemctl enable mariadb.servicesudo systemctl start mariadb.service

Também vamos adicionar exceção do firewall

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

Finalmente, vamos garantir o nosso instalação e configuração de senha para o root do usuário do sql

sudo mysql_secure_installation

Message Queue

OpenStack usa fila de mensagem para coordenar as operações e o estado entre os Serviços. Normalmente é executado no controller, então vamos instalá-lo no controller. Iremos instalar o RabbitMQ

instalação

sudo yum install rabbitmq-server

Start and enable service

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

Adicionar utilizador do openstack a ele. Substitua o RABBIT_ Pass pela sua senha.

sudo rabbitmqctl add_user openstack RABBIT_PASS

Definir permissões

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

Estas são as configurações do firewall para 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

Opcional SELinux comando

setsebool -P nis_enabled 1

Memcached

O serviço de Identidade do mecanismo de autenticação para os serviços que utiliza o Memcached para o cache de senhas. O serviço memcached normalmente é executado no nó do controlador, então eu vou instalá-lo no nó do controlador.

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 may use Etcd, a distributed reliable key-value store for distributed key locking, storing configuration, keeping track of service live-ness and other scenarios.

Etcd deve ser instalado no nó do controlador.

instalação

sudo yum install etcd

em seguida iremos editar /etc/etcd/etcd.conf

sudo vi /etc/etcd/etcd.conf

deve editar o ficheiro desta forma e alterar os valores abaixo para corresponder ao seu IP ou nome do controlador.

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

Esta é a forma como o meu arquivo se parece com

Activar e iniciar o serviço

sudo systemctl enable etcdsudo systemctl start etcd

firewall Adicional de definições

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

por Isso, estamos mais ou menos “feito” com initiall parte, vamos agora fazer um Mínimo de implantação do Trem.

implantação mínima para o comboio

Ok, então fomos bem sucedidos até agora. Vamos agora fazer um serviço mínimo para o comboio. Mais detalhes podem ser encontrados aqui https://docs.openstack.org/install-guide/openstack-services.html

os Serviços precisam ser instalados na ordem especificada, como descrito abaixo

uma vez que este tutorial está indo um pouco tempo já, eu vou terminar isso aqui, e a capa de cada um dos serviços acima em separado tutorial.

a coisa importante é fazer todos os Serviços na ordem exata como eles estão abaixo.

Aqui estão as ligações

  1. serviço de identidade – keystone installation for Train

2. Serviço de imagem-instalação de relance para o comboio

3. Serviço de colocação – instalação de colocação para o comboio

4. Compute service-nova installation for Train

5. Serviço de rede-instalação de neutrões para o comboio

aconselhamos instalar também os seguintes componentes Depois de ter instalado os serviços mínimos de implantação:

6. Painel de instrumentos – instalação do horizonte para o comboio

7. Serviço de armazenamento em bloco – instalação de Cinderela para o comboio

8. Object Storage service – swift installation for Train

Additional links for after installation for errors you may encounter:

Disclaimer

Deixe uma resposta

O seu endereço de email não será publicado.