Ir para o conteúdo
ou

Software livre Brasil

Tela cheia Sugerir um artigo
 Feed RSS

DevOps Brasil

7 de Dezembro de 2009, 0:00 , por Software Livre Brasil - | Ninguém está seguindo este artigo ainda.

Guto Carvalho: Box vagrant para projeto PCP

18 de Setembro de 2016, 23:51, por DevOps Brasil - 0sem comentários ainda

Criei uma box vagrant para facilitar o uso do PCP.

https://atlas.hashicorp.com/gutocarvalho/boxes/centos7x64-pcp

Essa box contém o PCP com os pacotes nas seguintes versões

  • Pupper Agent 4.6.2
  • Mcollective 2.9.0
  • Hiera 3.2.1
  • Facter 3.4.1
  • Puppet Server 2.6.0
  • PuppetDB 4.2.2
  • R10k 2.4.3
  • PostgreSQL 9.5.4
  • PuppetBoard 0.2.0
  • ActiveMQ 5.14.0

Recomendo usar o vagrant 1.8.4 e virtualbox 5.0.26.

1. Instalando a box

Para instalar a box digite o comando abaixo no terminal

vagrant box add gutocarvalho/centos7x64-pcp

Crie um diretório para o projeto

mkdir pcp; cd pcp

Crie um arquivo Vagrantfile no diretorio com o conteúdo abaixo

# -*- mode: ruby -*-
# vi: set ft=ruby :

VAGRANTFILE_API_VERSION = "2"

Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|

  if Vagrant.has_plugin?("vagrant-hosts")
    config.vm.provision :hosts do |provisioner|
      provisioner.add_localhost_hostnames = false
      provisioner.autoconfigure = true
      provisioner.sync_hosts = true
      provisioner.add_host '192.168.250.35', ['puppet']
      provisioner.add_host '192.168.250.35', ['puppetdb']
    end
  end

  config.vm.box = "centos7-pcp"

  # puppet community platform

  config.vm.define "puppetserver" do |puppetserver|
    puppetserver.vm.hostname = "puppet-pcpm.hacklab"
    puppetserver.vm.network :private_network, ip: "192.168.250.35"
    puppetserver.hostsupdater.aliases = ["puppetboard.hacklab", "puppetexplorer.hacklab"]
    puppetserver.vm.provider "virtualbox" do |v|
      v.customize [ "modifyvm", :id, "--cpus", "2" ]
      v.customize [ "modifyvm", :id, "--memory", "3072" ]
      v.customize [ "modifyvm", :id, "--name", "puppet-pcpm.hacklab" ]
    end
  end

end

Instale os seguintes plugins

vagrant plugin install vagrant-hosts
vagrant plugin install vagrant-hostsupdater

Inicie o projeto

vagrant up

Acesse a vm

vagrant ssh

Divirta-se.

2. refs

Box source

Project PCP

[s]
Guto



Guto Carvalho: Novo PCP liberado com muitas novidades

18 de Setembro de 2016, 15:15, por DevOps Brasil - 0sem comentários ainda

O time do PCP acaba de finalizar uma atualização que traz as últimas versões de pacotes disponíveis.

  • Pupper Agent 4.6.2
  • Mcollective 2.9.0
  • Hiera 3.2.1
  • Facter 3.4.1
  • Puppet Server 2.6.0
  • PuppetDB 4.2.2
  • R10k 2.4.3
  • PostgreSQL 9.5.4
  • PuppetBoard 0.2.0
  • ActiveMQ 5.14.0

O PCP agora está de casa nova, a partir dessa versão estamos usando o GitLab.com como repositório.

Se tiver dúvidas entre na comunidade PCP no telegram

http://bit.ly/telegram-pcp

Divirta-se!

[s]
Guto



Guto Carvalho: Nova box vagrant com Puppet Server 2.6.0 em CentOS 7

18 de Setembro de 2016, 15:08, por DevOps Brasil - 0sem comentários ainda

Divulgando nova box CentOS 7.2 com Puppet 4.6.2 e Puppet Server 2.6.0 no atlas.

Agora fica mais fácil testar a última versão do Puppet Server com o menor esforço possível :)

Se você usa vagrant 1.8.x para fazer download da box digite

vagrant box add gutocarvalho/centos7x64-puppetserver

Para acessar dados da box

https://atlas.hashicorp.com/gutocarvalho/boxes/centos7x64-puppetserver   

O repo git com o código para build da box

https://gitlab.com/gutocarvalho/packer-centos7-puppetserver

É isso, divirta-se.

[s]
Guto



Mundo Docker: Auto Complete para Docker

13 de Setembro de 2016, 16:09, por DevOps Brasil - 0sem comentários ainda

Olá!

Hoje o post será um pouco diferente dos que geralmente publicamos, queremos mostrar para vocês como é possível utilizar a funcionalidade de auto complete do shell para os comandos Docker. Mas para que isso? Simples, facilidade e agilidade na execução de comandos, quem aqui nunca apertou o tab depois de digitar ‘./conf’? Então, você deve sentir falta dessa facilidade quando se utiliza os subcomandos do docker, certo? Queremos mostrar pra vocês como resolver isso.

Como você já viu aqui, existem diversos subcomandos do docker, e cada um possui diversos parâmetros que podem ser utilizados, com o docker –help você poderá visualizar as opções disponíveis.

Mas isso é chato algumas vezes, é mais fácil começar a digitar docker run --vol...[tab][tab]e deixar o autocomplete fazer o trabalho:

$ docker run --volume
--volume         --volume-driver  --volumes-from

#vamosinstalar?

No Mac OS X

O processo é simples, estando no Mac OS X temos que instalar o auto completion usando o brew:

$ brew install bash-completion

E em seguida adicionar as linhas em nosso arquivo de profile ($HOME/.bash_profile ou /Users//.bash_profile)

if [ -f $(brew --prefix)/etc/bash_completion ]; then
    . $(brew --prefix)/etc/bash_completion
fi

Você pode executar os seguintes comandos, que devem ser utilizados nesta sequência:

$ echo "if [ -f $(brew --prefix)/etc/bash_completion ]; then" | tee -a $HOME/.bash_profile
$ echo "    . $(brew --prefix)/etc/bash_completion" | tee -a $HOME/.bash_profile
$ echo "fi" | tee -a $HOME/.bash_profile

Atenção: Se não temos o homebrew instalado, veja em http://brew.sh/ mais informações de como instala-lo e utiliza-lo.

No Linux

No Linux, como sempre, é mais simples, basta instalar via gerenciador de pacotes da sua distribuição. Se for Debian like (Ubuntu, Mint, etc) usamos o apt-get:

$ sudo apt-get install bash-completion

Se for Red Hat like (RHEL, CentOS, Fedora, etc) então usamos yum:

$ sudo yum install bash-completion

Completion do Docker Engine

O arquivo está disponível em https://github.com/docker/docker/blob/master/contrib/completion/bash/docker portanto sempre que fizer uma atualização é recomendável que você baixe novamente esse arquivo para refletir os comandos e parâmetros novos disponibilizados pelo Docker.

Ao baixar devemos colocá-lo na pasta /etc/bash_completion.d/ se estivermos no Linux, se estivermos em um Mac OS X:  $(brew --prefix)/etc/bash_completion.d.

No Mac OS X
$ curl -L https://raw.githubusercontent.com/docker/docker/master/contrib/completion/bash/docker > $(brew --prefix)/etc/bash_completion.d/docker
No Linux
$ curl -L https://raw.githubusercontent.com/docker/docker/master/contrib/completion/bash/docker > /etc/bash_completion.d/docker

Completion do Docker Compose

De maneira similar o arquivo está disponível emhttps://github.com/docker/compose/blob/master/contrib/completion/bash/docker-compose . Reforçamos que sempre que fizer uma atualização é bom baixar novamente esse arquivo para refletir os comandos e parâmetros novos disponibilizados pelo Docker Compose.

Ao baixar também devemos colocá-lo na pasta /etc/bash_completion.d/ se estivermos no Linux ou devemos acrescentar a pasta do homebrew antes se estivermos em um Mac OS X: $(brew --prefix)/etc/bash_completion.d.

No Mac OS X
$ curl -L https://raw.githubusercontent.com/docker/compose/master/contrib/completion/bash/docker-compose > $(brew --prefix)/etc/bash_completion.d/docker-compose
No Linux
$ curl -L https://raw.githubusercontent.com/docker/compose/master/contrib/completion/bash/docker-compose > /etc/bash_completion.d/docker-compose

Completion do Docker Machine

O processo é praticamente o mesmo porém o docker-machine possui 3 arquivos de auto complete. Os arquivos estão disponíveis em https://github.com/docker/machine/tree/master/contrib/completion/bash .

Como dito anteriormente devemos colocá-los na pasta /etc/bash_completion.d/ se estivermos no Linux ou devemos acrescentar a pasta do homebrew antes se estivermos em um Mac OS X: $(brew --prefix)/etc/bash_completion.d.

Como são mais arquivos recomendo utilizarmos um loop para baixarmos todos em sequência utilizando apenas um comando.

No Mac OS X
machineVersion=`docker-machine --version | tr -ds ',' ' ' | awk 'NR==1{print $(3)}'`
files=(docker-machine docker-machine-wrapper docker-machine-prompt)
for file in "${files[@]}"; do
  curl -L https://raw.githubusercontent.com/docker/machine/v$machineVersion/contrib/completion/bash/$file.bash > `brew --prefix`/etc/bash_completion.d/$file
done
unset machineVersion
No Linux
machineVersion=`docker-machine --version | tr -ds ',' ' ' | awk 'NR==1{print $(3)}'`
files=(docker-machine docker-machine-wrapper docker-machine-prompt)
for file in "${files[@]}"; do
  curl -L https://raw.githubusercontent.com/docker/machine/v$machineVersion/contrib/completion/bash/$file.bash > /etc/bash_completion.d/$file
done
unset machineVersion

Observe que:

  1. Se você utilizar alguma versão específica de uma dessas ferramentas basta baixar os arquivos da pasta correspondente.  Por exemplo o docker engine, da maneira que mostramos vamos pegar o arquivo que está na branch master, atualmente versão 1.12.1, para pegar na versão 1.11.0 por exemplo o arquivo fica em https://github.com/docker/docker/blob/v1.11.0/contrib/completion/bash/docker
  2. O Docker disponibiliza alguns arquivos de completion para outros shells. O Docker Engine disponibiliza bash, zsh, fish e powershell como podemos ver em https://github.com/docker/docker/tree/master/contrib/completion .
  3. O Docker Compose e o Docker Machine disponibilizam apenas para bash e zshcomo vemos nas urls https://github.com/docker/compose/tree/master/contrib/completionhttps://github.com/docker/machine/tree/master/contrib/completion .

E era isso por hoje pessoal, agradecimento especial ao @wsilva pela dica. Já sabe, ajude divulgando o blog, e tendo dúvidas ou sugestões deixa ai nos comentários 😉

Abraço!

Fonte: http://dumpscerebrais.com/2016/09/auto-complete-para-docker-engine-machine-e-compose/


Guto Carvalho: Minhas imagens no Docker Hub

9 de Setembro de 2016, 22:52, por DevOps Brasil - 0sem comentários ainda

Criando minhas primeiras imagens para começar a estudar Docker de verdade.

Hub do Guto

https://hub.docker.com/u/gutocarvalho/

As duas imagens “-systemd” são bases para as imagens “-puppet”. A ideia é utilizar essas imagens para validar módulos Puppet dentro um pipeline que vai envolver dentre outras coisas do GitLab + GitLab CI.

Imagens disponíveis

Centos 7 + Puppet 4.6.2

https://hub.docker.com/r/gutocarvalho/centos-puppet/    

Ubuntu 16.04 + Puppet 4.6.2

  https://hub.docker.com/r/gutocarvalho/ubuntu-puppet/    

Vou postando minhas aventuras por aqui.

[s]
Guto