Mas para algumas startups, o maior caso de sucesso não é a aplicação hospedada no OpenShift e sim a infraestrutura da nuvem! Sim amigos, há startups que oferecem o serviço na nuvem assim como a Red Hat e a Google: trata-se de uma startup brasileira chamada getup (http://www.getupcloud.com). A startup oferece um serviço de hospedagem e PaaS exatamente como o OpenShift faz, porém com algumas vantagens para os desenvolvedores brazucas, como:
- Infraestrutura totalmente feita no Brasil (seu ambiente foi construído no ambiente AWS assim como o OpenShift Online mas usando o datacenter de São Paulo)
- O suporte é em Português (assim como no OpenShift Online, porém o plano pago do OpenShift ainda será lançado)
- Acompanha todas as atualizações do OpenShift
Portanto, como devem ter percebido, o OpenShift é um projeto Open Source assim como todos os outros projetos que a Red Hat mantém. Por isso, é possível ter acesso ao código dele bem como é possível configurar uma nuvem privada dentro de sua própria empresa/startup/casa.
Tentarei nas próximas seções explicar as formas de como ter um ambiente OpenShift rodando em seu ambiente particular. Nota: Caso queira conhecer um pouco sobre a arquitetura interna do Openshift, basta ler essa página: http://aprendendo-cloud-computing.blogspot.com.br/p/aqruitetura-do-openshift.html
Antes, um aviso...
Após a Red Hat anunciar a sua versão On-Premise (ou seja, OpenShift rodando em redes privadas corporativas), houve a necessidade de separar as diferentes áreas para dar foco total aos engenheiros na inovação e produtização do OpenShift. Temos o OpenShift Online que é o serviço de hospedagem da comunidade acessível pelo endereço http://openshift.com e também com uma conta paga você terá acesso a mais recursos computacionais, o OpenShift Origin é o projeto Open Source da Red Hat e por fim temos o produto da Red Hat para empresas que é o OpenShift Enterprise. Abaixo você pode observar melhor a relação entre esses projetos:
![]() |
| Projetos OpenShift |
Configurando o ambiente OpenShift
Esse é o jeito mais complexo de se construir um ambiente pois você irá configurar cada componente em questão e portanto leva-se muito tempo para isso. No entanto, é a melhor forma de estudar a arquitetura do OpenShift e isso será fundamental para caso você tenha problemas com o ambiente que está configurando.
Para isso, siga o Deployment Guide na página do OpenShift: http://openshift.github.io/documentation/oo_deployment_guide_comprehensive.html
Para isso, siga o Deployment Guide na página do OpenShift: http://openshift.github.io/documentation/oo_deployment_guide_comprehensive.html
Automatizando a configuração com Puppet
Claro que é muito bacana seguir os passos para fazer o deployment para compreender como cada componente se encaixa (acredito, eu acho isso melhor que quebra-cabeças), mas em um ambiente como o próprio OpenShift Online (o serviço PaaS público da Red Hat), torna-se inviável provisionar servidores para comportar a carga sem ao menos ter uma forma de automatizar a instalação/configuração. Pensando nisso, a equipe da comunidade criou alguns scripts em puppet para provisionar de forma automatizada. Inclusive, é possível provisionar um ambiente completo OpenShift em um servidor (o famoso all-in-one) ou configurar alguns componentes somente no servidor. O site do OpenShift tem um Puppet Deployment Guide para isso e caso queira é só seguir: http://openshift.github.io/documentation/oo_deployment_guide_puppet.html
Abaixo uma classe Puppet para provisionamento do OpenShift all-in-one:
Abaixo uma classe Puppet para provisionamento do OpenShift all-in-one:
class { 'openshift_origin' :
#The DNS resolvable hostname of this host
node_fqdn => "broker.example.com",
#The domain under which application should be created. Eg: <app>-<namespace>.example.com
cloud_domain => 'example.com',
#Upstream DNS server.
dns_servers => ['8.8.8.8'],
enable_network_services => true,
configure_firewall => true,
configure_ntp => true,
#Configure the required services
configure_activemq => true,
configure_mongodb => true,
configure_named => true,
configure_avahi => false,
configure_broker => true,
configure_node => true,
#Enable development mode for more verbose logs
development_mode => true,
#Update the nameserver on this host to point at Bind server
update_network_dns_servers => true,
#Use the nsupdate broker plugin to register application
broker_dns_plugin => 'nsupdate',
#If installing from a local build, specify the path for Origin RPMs
#install_repo => 'file:///root/origin-rpms',
#If using BIND, let the broker know what TSIG key to use
named_tsig_priv_key => '<tsig key>',
#If using an external ethernet device other than eth0
#eth_device => '<ethernet device name, eg: enp0s5>',
#If using with GDM, or have users with UID 500 or greater, add to this list
#os_unmanaged_users => ['gdm'],
#If using the stable version instead of the nightly
#install_repo => 'release',
#dependencies_repo => 'release',
}
Download das Máquinas Virtuais (o famoso Lazy Mode)
Se vocês forem como eu, então procurarão pela maneira mais fácil. =D Trata-se simplemente se um repositório onde há diversos arquivos de Máquinas Virtuais já instalados e configurados com OpenShift e é só importar para o Hypervisor de sua preferência. Assim, você terá o mínimo de esforço necessário para rodar o OpenShift localmente em sua máquina/servidor.
Você pode encontrar mais informações no Virtual Machine Deployment Guide: http://openshift.github.io/documentation/oo_deployment_guide_vm.html
Bom, por ora é isso. Quem tiver dúvidas ou teve problemas com alguns dos métodos para provisionar seu próprio ambiente OpenShift, podem postar um comentário. Até a próxima.
![]() |
| Tela de início da Máquina Virtual OpenShift |
Bom, por ora é isso. Quem tiver dúvidas ou teve problemas com alguns dos métodos para provisionar seu próprio ambiente OpenShift, podem postar um comentário. Até a próxima.


















