Prefácio
Faz dois dias desde que a nova versão do sistema operacional CentOS foi lançada, a saber, o CentOS 8. E até agora existem alguns artigos na Internet sobre como fazer algo nele, então decidi preencher essa lacuna. Além disso, falarei não apenas sobre como instalar esse par de programas, mas também sobre como geralmente vejo a instalação do Linux em um ambiente virtual no mundo moderno para tarefas comuns, incluindo particionamento de disco e muito mais.
Mas, no começo, quero falar brevemente sobre por que você deve mudar para esta versão de todas as anteriores, e há duas razões para isso:
- php7! Na versão anterior do CentOS, o php5.4 "ortodoxo" foi instalado ...
Bem, se um pouco mais sério, muitos pacotes passaram por várias versões em massa. Nós (fãs do sistema operacional redhat-like) finalmente entramos, se não no futuro, pelo menos no presente. E os apoiadores do Ubuntu não vão mais rir de nós e cutucar seus dedos, bem ... pelo menos por um tempo;). - Transição de yum para dnf. A principal diferença é que agora o trabalho com várias versões de pacotes é oficialmente suportado. Bem aqui na figura oito, nunca foi útil para mim ainda, mas parece promissor.
Criando uma máquina virtual
Os hipervisores são diferentes e não tenho o objetivo de aprimorar o leitor para um específico; falarei sobre princípios gerais.
A memória
Primeiro ... Para instalar o sistema CentOS a partir do 7, com certeza, e na minha opinião aos 6 era o mesmo (“mas isso não é preciso”), são necessários
pelo menos 2 GB de RAM. Portanto, eu aconselho você a começar e dar muito.
Mas se isso, após a instalação, a quantidade de memória pode ser reduzida. Com 1 GB, o sistema simples funciona muito bem, verifiquei.
Drive
Para uma instalação normal, crie um disco virtual de 20 a 30 GB. Isso é suficiente para o sistema. E um segundo disco para dados. Ele pode ser adicionado na fase de criação de uma máquina virtual e depois. Eu costumo adicionar mais tarde.
CPU
Em um núcleo, um sistema simples não diminui a velocidade. E como os recursos são escaláveis livremente, não vejo sentido em dar mais no estágio de instalação (a menos que você conheça idealmente os requisitos e tenha preguiça de entrar no configurador novamente)
O restante geralmente pode ser deixado por padrão.
Instalação em si
Então ... Iniciamos o instalador ... Pessoalmente, eu venho colocando esses serviços há muito tempo apenas na forma de máquinas virtuais, por isso não descreverei todas as gravações do kit de distribuição em uma unidade flash USB - apenas montei o ISO como um CD no meu hipervisor favorito, baixe-o e dirija-o.
A instalação básica é bastante típica, vou me concentrar apenas em alguns pontos.
Seleção de fonte
Desde o lançamento da oitava versão, o espelho da Yandex ficou deitado o dia todo. Bem, isto é, aumenta periodicamente e, em seguida, novamente começa a mostrar um erro. Estou certo de que o assunto é uma carga excessiva no serviço. Portanto, para indicar a fonte, eu pessoalmente tive que, em vez de inserir o endereço usual, vá
aqui , selecione o espelho que eu gosto lá e insira manualmente o endereço na janela do instalador. É importante lembrar que você deve especificar o caminho para a pasta em que o
diretório repodata está localizado . Por exemplo,
mirror.corbina.net/pub/Linux/centos/8/BaseOS/x86_64/os .
Divisão de disco
Esta questão é bastante religiosa na minha opinião. Cada administrador tem sua própria posição sobre esse assunto. Mas ainda compartilho meu ponto de vista sobre a questão.
Sim, em princípio, você pode alocar todo o local para a raiz e o trabalho, na maioria das vezes é até muito bom. Por que cercar um jardim com seções diferentes? - As principais razões para isso, na minha opinião 2: cotas e portabilidade.
Por exemplo, se algo der errado e ocorrerem erros na seção principal de dados, desejo poder carregar o sistema de qualquer maneira e executar medidas de ressuscitação. Portanto, eu pessoalmente aloco uma partição separada em / boot. Aí reside o kernel e o carregador de inicialização. Geralmente, 500 megabytes são suficientes, mas em casos raros, pode demorar mais e, como já estamos acostumados a medir o espaço com terabytes, aloco 2 GB para esta seção. E aqui é importante que isso não possa ser feito lvm.
Em seguida, vem a raiz do sistema. Para uma instalação normal, nunca precisei de mais de 4 GB por sistema, mas durante eventos agendados, geralmente uso o diretório / tmp para descompactar distribuições e não vejo o ponto de destacá-lo como uma seção separada - em sistemas modernos, ele é limpo automaticamente, portanto, não é preenchido. . Então, na raiz eu aloco 8GB.
Trocar ... Em geral, há pouco benefício prático com isso. Se você começou a usar o swap no servidor, hoje no mundo real isso significa apenas que o servidor precisa adicionar mais RAM. Caso contrário, os problemas de desempenho são garantidos (ou algum programa tem vazamento de memória). Portanto, esta seção é apenas para fins de diagnóstico. Portanto, 2 GB é um grande número. Sim, não importa quanta memória o servidor tenha. Sim, eu li todos os artigos em que está escrito sobre a proporção de memória para trocar volume ... IMHO, eles estão desatualizados. Por 10 anos de prática, isso nunca foi útil para mim. 15 anos atrás eu os usei, sim.
Todos podem decidir se deseja alocar / casa em uma seção separada IMHO. Se alguém usar ativamente esse diretório no servidor, é melhor destacar. Se ninguém - sem motivo.
Em seguida, / var. Na minha opinião, é necessário destacá-lo. Para iniciantes, você pode limitar-se a um número de 4 GB e depois como vai. E sim, com "como vai", quero dizer que
- Primeiramente, você sempre pode montar outro disco no subdiretório / var (que mostrarei posteriormente com um exemplo)
- Em segundo lugar, temos lvm - você sempre pode adicionar. E geralmente você deve adicionar quando muitos logs começarem a aparecer lá. Mas nunca fui capaz de prever esse número antecipadamente, então começo com 2 GB e depois procuro.
O espaço não alocado permanecerá livre no grupo de volumes, e você sempre poderá usá-lo mais tarde.
LVM
Faz sentido criar
todas as partições, exceto / boot no LVM. Sim, incluindo swap. Sim, a troca de todas as dicas deve estar no início do disco e, no caso do LVM, sua localização não pode ser determinada em princípio. Mas como eu escrevi acima, seu sistema
não deve usar swap. Portanto, não importa onde ele esteja. Bem, não em 95 vivemos, honestamente!
Além disso, no LVM existem várias entidades básicas com as quais você deve poder viver:
- volume físico
- grupo de volumes
- volume lógico
Os volumes físicos são agrupados, com cada volume físico em apenas um grupo e o grupo pode estar em vários volumes físicos ao mesmo tempo.
E os volumes lógicos estão no mesmo grupo.
Mas ... Nós, caramba, somos novamente o século 21 no quintal. E os servidores são virtuais. Não faz sentido aplicar a eles os mesmos mecanismos que foram aplicados aos físicos. E para virtual, é importante ter dados separados do sistema! Isso é muito importante, em particular, pela capacidade de alternar rapidamente dados para outra máquina virtual (por exemplo, ao alternar para um novo sistema operacional) e, em geral, todos os tipos de vantagens úteis (backups separados por seções usando o hipervisor, por exemplo). Portanto, um grupo de volumes é usado para o sistema e necessariamente outro é usado para dados! Essa separação lógica ajuda muito na vida!
Se você criou apenas um disco rígido virtual ao criar uma máquina virtual, este é o fim da configuração. E se dois, então simplesmente não marque o segundo ainda.
Iniciamos a instalação.Pós-instalação
Portanto, o sistema recém-instalado finalmente foi inicializado. A primeira coisa a verificar é a Internet.
ping ya.ru
Existe uma resposta? - Tudo bem, pressione Ctrl-C.
Caso contrário, vá configurar a rede, não há vida sem isso, mas meu artigo não é sobre isso.
Agora, se ainda não estamos na raiz, vamos para a raiz, porque, para digitar tantos comandos com o sudo, eu pessoalmente vlom (e os administradores paranóicos me perdoam):
sudo -i
Agora, a primeira coisa que digitamos
dnf -y update
E se você ler este artigo em 2019, provavelmente nada acontecerá, mas valeu a pena tentar.
Agora configure a unidade restante
Suponha que tenhamos uma partição xvda com um sistema, então o disco de dados será xvdb. Ok
A maioria das dicas começará com as palavras "Inicie o fdisk e crie uma partição ..."
Então, isso
não é verdade !
Vou repetir a panqueca novamente, porque é importante! Nesse caso, trabalhar com o LVM, que ocupa um todo, deixar um disco virtual criar partições nele é prejudicial! Cada palavra é importante nesta frase. Se trabalharmos sem LVM - é necessário. Se dizemos no sistema de disco e dados - é necessário. Se, por algum motivo, precisamos deixar metade do disco vazio - também é necessário. Mas geralmente todas essas suposições são puramente teóricas. Como se decidirmos adicionar lugares à seção existente, a maneira mais fácil de fazer isso é com essa configuração. E a facilidade de administração supera tanto que estamos deliberadamente avançando em direção a essa configuração.
E a conveniência é que, se você deseja expandir a seção de dados, basta adicionar espaço à seção virtual e expandir o grupo com vgextend e pronto! Em casos raros, pode ser necessário algo mais, mas pelo menos você não precisa expandir no início a lógica, o que já é bom. E então, para expandir esse volume, recomenda-se excluir o existente no início e criar um novo no topo ... O que não parece muito bom e não pode ser feito ao vivo, e a expansão de acordo com o cenário especificado pode ser feita em tempo real sem desmontar a partição.
No total, criamos um volume físico, depois um grupo de volumes, incluindo ele e, em seguida, uma seção para o nosso servidor:
pvcreate /dev/xvdb vgcreate data /dev/xvdb lvcreate -n www -L40G data mke2fs -t ext4 /dev/mapper/data-www
Aqui, em vez da letra maiúscula "L" (e o tamanho em GB), você pode especificar uma letra pequena e indicar o tamanho relativo em vez do tamanho absoluto, por exemplo, para usar metade do espaço atualmente disponível no grupo de volumes, você deve especificar "-l + 50% GRÁTIS"
E o último comando formata a partição no sistema de arquivos ext4 (que até agora, na minha prática, mostra a maior estabilidade caso tudo quebre, por isso prefiro).
Agora monte a partição no lugar certo. Para fazer isso, adicione a linha correta ao / etc / fstab:
/dev/mapper/data-www /var/www ext4 defaults 1 2
E nós digitamos
mount /var/www
Se um erro aparecer - soamos o alarme! Porque isso significa que temos um erro no / etc / fstab. E que na próxima reinicialização teremos grandes problemas. O sistema pode não inicializar, o que geralmente é muito triste para os serviços em nuvem. Portanto, você deve corrigir urgentemente a última linha anexada ou excluí-la completamente! É por isso que não começamos a escrever o comando mount manualmente - então não teríamos uma oportunidade excelente para verificar a configuração dos aparelhos diretos para casa.
Agora, na verdade, colocamos tudo o que queríamos e abrimos as portas na Web:
dnf groupinstall "Development Tools" dnf -y install httpd @nodejs @redis php firewall-cmd --add-service http --permanent firewall-cmd --add-service https --permanent
Opcionalmente, você também pode colocar o banco de dados aqui, mas pessoalmente, tento mantê-lo separado do servidor da web. Embora mantê-la perto seja mais rápido, sim. A velocidade dos adaptadores de rede virtual geralmente está na região de gigabit e, ao trabalhar na mesma máquina, o acesso ocorre quase instantaneamente. Mas menos seguro. Aqui para quem é mais importante.
Agora adicione o parâmetro ao arquivo de configuração (crie uma nova e moderna ideologia do CentOS como esta)
echo "vm.overcommit_memory = 1"> /etc/sysctl.d/98-sysctl.conf
Reinicie o servidor.
Nos comentários, fui criticado por aconselhá-lo a desativar o SeLinux, por isso vou corrigi-lo e escrever sobre o fato de que depois disso você deve se lembrar de configurar o SeLinux.
Na verdade, lucro! :)