Arquivo da categoria: Linux

Como instalar e configurar o Prometheus em um servidor Linux

O Prometheus é um sistema de monitoramento de código aberto muito leve e com um bom mecanismo de alerta.

Instalar e configurar o Prometheus

Este guia explica como instalar e configurar o Prometheus mais recente em uma VM Linux.

Se desejar instalar o Prometheus em um cluster Kubernetes, consulte o guia Prometheus no kubernetes .

Antes de você começar

  1. Certifique-se de ter acesso sudo ao servidor Linux, pois os comandos usados ​​neste guia requerem privilégios elevados.
  2. O servidor tem acesso à Internet para fazer download do binário do Prometheus.
  3. Mais importante ainda, regras de firewall abertas para acessar a porta 9090 do Prometheus no servidor.

Configurar binários do Prometheus

Etapa 1: Atualize os repositórios de pacotes yum.

sudo yum update -y

Etapa 2: Vá para a página de downloads oficial do Prometheus   e obtenha o link de download mais recente do binário do Linux.


Etapa 3: Baixe o código-fonte usando curl, descompacte-o e renomeie a pasta extraída para arquivos prometheus.

curl -LO url -LO https://github.com/prometheus/prometheus/releases/download/v2.22.0/prometheus-2.22.0.linux-amd64.tar.gz

tar -xvf prometheus-2.22.0.linux-amd64.tar.gz

mv prometheus-2.22.0.linux-amd64 prometheus-files

Etapa 4: crie um usuário do Prometheus, os diretórios necessários e torne o Prometheus o usuário como o proprietário desses diretórios.

sudo useradd –no-create-home –shell / bin / false prometheus

sudo mkdir / etc / prometheus

sudo mkdir / var / lib / prometheus

sudo chown prometheus: prometheus / etc / prometheus

sudo chown prometheus: prometheus / var / lib / prometheus

Etapa 5:  Copie o prometheus e o binário do promtool da pasta prometheus-files para / usr / local / bin e altere a propriedade para o usuário prometheus.

sudo cp prometheus-files / prometheus / usr / local / bin /

sudo cp prometheus-files / promtool / usr / local / bin /

sudo chown prometheus: prometheus / usr / local / bin / prometheus

sudo chown prometheus: prometheus / usr / local / bin / promtool

Etapa 6:  Mova os consoles e os diretórios console_libraries dos arquivos prometheus para a pasta / etc / prometheus e altere a propriedade para o usuário prometheus.

sudo cp -r prometheus-files / consoles / etc / prometheus

sudo cp -r prometheus-files / console_libraries / etc / prometheus

sudo chown -R prometheus: prometheus / etc / prometheus / consoles

sudo chown -R prometheus: prometheus / etc / prometheus / console_libraries

Definir a configuração do Prometheus

Todas as configurações do prometheus devem estar presentes no arquivo /etc/prometheus/prometheus.yml.

Etapa 1: Crie o arquivo prometheus.yml.

sudo vi /etc/prometheus/prometheus.yml

Etapa 2: Copie o seguinte conteúdo para o arquivo prometheus.yml.

global:

scrape_interval: 10s

scrape_configs:

– job_name: ‘prometheus’

scrape_interval: 5s

static_configs:

– destinos: [‘localhost: 9090’]

Etapa 3: altere a propriedade do arquivo para o usuário prometheus.

sudo chown prometheus: prometheus /etc/prometheus/prometheus.yml

Arquivo de serviço de configuração do Prometheus

Etapa 1: Crie um arquivo de serviço prometheus.

ao sul você /etc/systemd/system/prometheus.service

Etapa 2: copie o seguinte conteúdo para o arquivo.

[Unidade]

Descrição = Prometheus

Want = network-online.target

Depois de = network-online.target

[Serviço]

Usuário = prometheus

Grupo = prometheus

Tipo = simples

ExecStart = / usr / local / bin / prometheus \

–config.file /etc/prometheus/prometheus.yml \

–storage.tsdb.path / var / lib / prometheus / \

–web.console.templates = / etc / prometheus / consoles \

–web.console.libraries = / etc / prometheus / console_libraries

[Instalar]

WantedBy = multi-user.target

Etapa 3: recarregue o serviço systemd para registrar o serviço prometheus e inicie o serviço prometheus.

sudo systemctl daemon-reload

sudo systemctl start prometheus

Verifique o status do serviço prometheus usando o seguinte comando.

sudo systemctl status prometheus

O status deve mostrar o estado ativo conforme mostrado abaixo.


Access Prometheus Web UI

Agora você poderá acessar a IU do prometheus na porta 9090 do servidor prometheus.

http: // <prometheus-ip>: 9090 / gráfico

Você deve ser capaz de ver a seguinte IU, conforme mostrado abaixo.


Você pode usar a guia de consulta do prometheus para consultar as métricas disponíveis, conforme mostrado no show abaixo.


No momento, acabamos de configurar o servidor Prometheus. Você precisa registrar o destino no prometheus.ymlarquivo para obter as métricas dos sistemas de origem.

Por exemplo, se você deseja monitorar dez servidores, o endereço IP desses servidores deve ser adicionado como um destino na configuração do Prometheus para eliminar as métricas.

O servidor deve ter o Node Exporter instalado para coletar todas as métricas do sistema e disponibilizá-las para que o Prometheus as descarte

Bom pessoal, espero que tenha ajudado com este post.

Entendendo a arquitetura do kubernetes

Como funciona o Kubernetes

Olá pessoal, mergulhando em outros cenários estamos aprofundando sobre Kubernetes.

Postando agora como funciona a arquitetura do Kubernetes.

Em resumo o Kubernetes é o orquestrador de container onde melhora a gestão dos containers.

Imagina você realizando a gestão de 300 containers na mão.

Imagino que para guardar comandos e manipular na hora de uma urgência seja necessário.

Mas para melhorar processos de trabalhos o k8S (kubernetes) seja essencial para seu trabalho.

Kubernetes Overview:

  • Kubernetes é uma plataforma de gerenciamento de contêineres
  • Criado pelo Google
  • Escrito em Go / GoLang
  • Também conhecido como K8s


     

    Master Node

    Master é o plano de controle ou o cérebro do cluster k8s. Um mestre é composto por alguns componentes:

  • api-serve r – Expõe a API REST para falar com o cluster k8s, consome json, somente o api-server fala com o Cluster Store.
  • Armazenamento de Cluster (KV) – Gerenciamento de estado e configuração de cluster.
  • Agendador – Observa o api-server para novos pods e atribui o nó ao trabalho
  • Controller – Um daemon que observa o estado do cluster para manter o estado desejado.O exemplo é o controlador de replicação, o controlador de espaço de nomes, etc. Além disso, ele executa a coleta de lixo de pods, nós, eventos etc.



  • Kubelet – k8s agente que registra nós com cluster, assiste api-server, instancia pods, reporta de volta ao api-server. Se o pod falhar, ele reporta ao master e o master decide o que fazer. Expõe a porta 10255 no nó
  • Container Engine – Ele faz o gerenciamento de contêineres, como puxar imagens, iniciar / parar contêineres. Normalmente, o Docker é usado para o tempo de execução do contêiner.
  • kube-proxy – Responsável pela rede, Fornecer IP exclusivo para Pods, Todos os contêineres em um pod compartilham o mesmo IP, Saldos de carga em todos os pods em um serviço


    Pods

  • Um ambiente para executar contêineres
  • Tem pilha de rede, namespaces do kernel e um ou mais contêiner em execução
  • Recipiente sempre corre dentro de um pod
  • Pod pode ter vários contêineres
  • É a unidade de escalar em k8s


    Serviços

    Os pods vêm e vão com diferentes IPs. Para distribuir carga e atuar como uma única fonte de interação para todos os pods de um aplicativo, o serviço desempenha o papel.

  • Tem um único IP e DNS
  • Criado com um arquivo JSON de manifesto
  • Todos os novos pods são adicionados / registrados ao serviço
  • Qual pod deve ser atribuído a quais serviços são decididos pelos rótulos
  • serviço e pods têm rótulos com base em qual serviço identifica seus pods
  • envia tráfego apenas para pods saudáveis
  • serviço pode apontar coisas fora do cluster
  • usa o tcp por padrão (o udp também é suportado)


    Deployments ou implantação

    É um objeto k8s cuja tarefa é gerenciar pods idênticos executando e atualizando-os de maneira controlada.

  • Implantado usando o manifesto YAML / JSON
  • Implantado via api-server
  • Fornecer atualização de pods
  • Fornecer reversões


    Arquitetura


    Fluxo Geral

  • O kubectl grava no servidor da API
  • O servidor de API valida a solicitação e a persiste para o armazenamento de cluster (etcd)
  • Armazenamento de Cluster (etcd) notifica o servidor de API de volta
  • O servidor de API chama o agendador
  • O agendador decide onde executar o pod e retorna isso ao servidor de API
  • API Server persiste para o etcd
  • O etcd notifica o servidor da API.
  • O servidor de API chama o Kubelet no nó correspondente
  • Kubelet fala com o daemon do Docker usando a API sobre o soquete do Docker para criar o contêiner
  • Kubelet atualiza o status do pod para o servidor da API
  • API Server persiste o novo estado no etcd

     

    Espero que tenha compreendido e vamos para mais postos sobre Kubernetes.

    Até mais galera.

Apache Guacamole

Olá pessoal.

Estava procurando informações sobre desktop, VDI, VDA, acesso remoto com inteligência, Desktop como serviço e alternativas mais acessíveis para meus clientes.

Me deparei com esta excelente ferramenta. O Projeto excelente chamado Apache Guacamole.

O nome não soa legal em uma visão corporativa, mas quando você instala e configura tudo isso apaga.

O Apache Guacamole é um gateway de desktop remoto sem cliente. Ele suporta protocolos padrão como VNC, RDP e SSH.

É sem cliente porque nenhum plug-in ou software cliente é necessário. Graças ao HTML5, uma vez que o Guacamole é instalado em um servidor, tudo que você precisa para acessar seus desktops é um navegador da web.

Veja o modelo instalei e que criei no Azure abaixo:

Como o cliente Guacamole é um aplicativo da Web HTML5, o uso de seus computadores não está vinculado a nenhum dispositivo ou local. Contanto que você tenha acesso a um navegador da Web, você terá acesso às suas máquinas.


Os desktops acessados ​​através do Guacamole não precisam existir fisicamente. Com o Guacamole e um sistema operacional de desktop hospedado na nuvem, você pode combinar a conveniência do Guacamole com a resiliência e a flexibilidade da computação em nuvem.

Fonte livre e aberta

O Apache Guacamole é e sempre será um software livre e de código aberto . Ele é licenciado sob a Licença Apache, Versão 2.0 , e é mantido ativamente por uma comunidade de desenvolvedores que usam o Guacamole para acessar seus próprios ambientes de desenvolvimento.

Construído em uma API bem documentada

O Apache Guacamole é construído com base em sua própria APIs, que são documentadas detalhadamente , incluindo tutoriais básicos e visões gerais conceituais no manual on – line . Essas APIs permitem que o Guacamole seja totalmente integrado a outras aplicações, sejam elas de código aberto ou proprietárias.

Aqui no Brasil ainda não é muito difundido.

Sua interface é bem simples


Totalmente baseado em HTML5

Esta é uma demonstração oficial do site de uso do Guacamole.

Esta é uma demonstração que fiz que esta neste link.
https://1drv.ms/v/s!An-dPolj_Ee_hdc1qLvHHCudRXaFmw

Este eu fiz no Azure e integrei com o Office 365 através do AIP para acesso condicional.
Veja a arquitetura do ambiente.

 

O guacd

O guacd é o coração do Guacamole que carrega dinamicamente o suporte para protocolos de área de trabalho remota (chamado de “plug-ins de cliente”) e os conecta a áreas de trabalho remotas com base nas instruções recebidas do aplicativo da web.

O guacd é um processo daemon que é instalado junto com o Guacamole e é executado em segundo plano, escutando as conexões TCP do aplicativo da web. O guacd também não entende nenhum protocolo de desktop remoto específico, mas implementa apenas o suficiente do protocolo Guacamole para determinar qual suporte de protocolo precisa ser carregado e quais argumentos devem ser passados para ele. Uma vez que um plugin do cliente é carregado, ele é executado independentemente do guacd e tem controle total da comunicação entre ele e o aplicativo da web até que o plugin do cliente seja encerrado.

O guacd e todos os plug-ins do cliente dependem de uma biblioteca comum, o libguac, que torna a comunicação via protocolo Guacamole mais fácil e um pouco mais abstrata.

Para instalar é bem simples.

Segue o processo de implantação oficial do Apache Guacamole Servidor em outro sistema Linux, que não seja o Ubuntu, recomendo usar a documentação oficial como referência de instalação.

Para fazer download do script de instalação no Ubuntu 16.04:

wget https://raw.githubusercontent.com/MysticRyuujin/guac-install/master/guac-install.sh

Conceder permissão de execução:

chmod +x guac-install.sh

Executar script:

sudo ./guac-install.sh

O basico para instalação após o acesso é acessar URL http://IP:8080/guacamole – com usuário e senha padrão guacadmin

001.PNG

No menu de connection você pode inserir o desktop ou servidor que você quer acessar.

002

É só inserir um nova conexão RDP, SSH ou VNC para que você possa acessar via browser e montar seu próprio ambiente.

0021

As configurações são bem simples para acesso via web.

Mas ele tem configurações para impressoras, armazenamento em resumo.

005

Este é o menu de preferencias.

AZURE.

Eu fiz uma instalação no Azure através do git.

Em resumo foi uma maquina para o Guacamole e outra maquina Windows 10 Enterprise para acessar via Browser.

006

 

12Veja a Matrix dentro da Matrix.

 

Veja neste links.

https://github.com/silvapfabio/azure-quickstart-templates

https://azure.microsoft.com/en-us/resources/templates/guacamole-rdp-vnc-gateway-existing-vnet/

Fiz algumas alterações no arquivo .json ao meu “paladar” claro, mas é bem simples.

Dando as honras para o Gabriel Nepomuceno que foi um orientador.

Embreve irei mostrar funcionando no RaspberriPy como um Thinclient para acesso via web com Guacamole e outros protocolos como Citrix e RDP.

Independente ele funciona em qualquer ambiente cloud como AWS e também local.

Eu espero que tenha gostado.

Até mais

 

 

Terraform, sua infraestrutura como código.

terraform

Olá pessoal

Estive pesquisando e testando varias ferramentas para agilidade em infraestrutura com enfase em praticas devops.

As ferramentas que tive contato direto e usei foi VSTS no visual Studio que é sensacional, sou suspeito em falar da ferramenta, Ansible que também é sensacional, muito fácil de utilizar.

A grata surpresa foi quando testei a ferramenta da HashiCorp, Terraform.

Minha pesquisa foi por que a administração em ambientes grandes de cloud com acesso a Azure, AWS e Google começa a ter um certo nível de detalhe e camadas de configuração, e até ter um nível bom em segurança da informação para compliances.

Isso é sério e algumas empresas levam a sério como bancos os níveis de acesso e credenciais de acesso a ambientes e níveis de funções como em ambiente de desenvolvimento, em infraestrutura e outros.

Terraform é uma ferramenta para construir, alterar e infra-estrutura de versões com segurança e eficiência em forma de código altamente facil.
O Terraform pode gerenciar varios provedores de serviços em cloud, hibridos e baremetal existentes e populares, como Cloud Computing em Azure, AWS, Google cloud, Oracle Cloud e Digital Ocean, bem como soluções internas personalizadas de datacenter como Openstack, Vmaware e Hyper-V.

O Terraform é capaz de determinar o que mudou e criar planos de execução incremental que podem ser aplicados.

Importante que você tem os versionamentos de mudanças da infraestrutura. Ambientes onde é feito via Gerenciamento de Mudanças você pode criar histórico de relatórios onde a equipe de governança terá total respaldo e controle melhor.

Em tempos de ambientes ágeis o Terraform se torna uma poderosa ferramenta inteligente.

A infraestrutura que o Terraform pode gerenciar inclui componentes de baixo nível, como instâncias de computação, armazenamento e rede, além de componentes de alto nível, como entradas de DNS, recursos de SaaS etc.

Infraestrutura como Código

A infra-estrutura é descrita usando uma sintaxe de configuração de alto nível. Isso permite que um modelo construído do seu data center seja versionado e tratado como você faria com qualquer outro código. Além disso, a infraestrutura pode compartilhada e reutilizada.

Gráfico de recursos

O Terraform constrói um gráfico de todos os seus recursos e paraleliza a criação e modificação de quaisquer recursos não dependentes. Por isso, o Terraform constrói a infraestrutura da maneira mais eficiente possível, e os operadores obtêm insights sobre as dependências de sua infraestrutura.

Automação de Mudança

Os changesets complexos podem ser aplicados à sua infraestrutura com interação humana mínima. Com o plano de execução e o gráfico de recursos mencionados anteriormente, você sabe exatamente o que o Terraform mudará e em que ordem, evitando muitos possíveis erros humanos.

Com um olhar de segurança da informação, seu ambiente de virtualização, hibrido ou em cloud terá o minimo de acesso e o máximo de eficiência e produtividade com segurança.

Terraform vs. concorrentes

O Terraform fornece uma abstração flexível de recursos e provedores. Esse modelo permite representar tudo, desde hardware físico, máquinas virtuais e contêineres, até provedores de e-mail e DNS. Devido a essa flexibilidade, o Terraform pode ser usado para resolver muitos problemas diferentes. Isso significa que existem várias ferramentas existentes que se sobrepõem às capacidades do Terraform. Nós comparamos o Terraform a várias dessas ferramentas, mas deve-se notar que o Terraform não exclusivo com outros sistemas. Pode ser usado para gerenciar um único aplicativo ou o datacenter inteiro.

Veja o comparativo no próprio site do Terraform

https://www.terraform.io/intro/vs/chef-puppet.html

https://www.terraform.io/intro/vs/cloudformation.html

Implantação Multi-Cloud

infraestrutura multi nuven para aumentar a tolerância a falhas. A realização de implantações multi nuvem pode ser muito desafiadora, pois muitas ferramentas existentes para gerenciamento de infraestrutura são específicas da nuvem. O Terraform é agnóstico foi que me interessou e de fácil assimilação, em relação à nuvem e permite que uma única configuração seja usada para gerenciar vários provedores e até mesmo para lidar com dependências entre nuvens. Isso simplifica o gerenciamento e a orquestração, ajudando as operadoras a construir infraestruturas de várias nuvens em grande escala.

Instalação

O Terraform além de ser mutinuvem, hibrido e baremetal ele tem compatibilidade com vários sistema operacionais.

https://www.terraform.io/downloads.html

versoes

Obviamente você utilizará a versão que você mais se familiariza.

Eu vou demonstrar abaixo bem simples no Ubuntu e no Azure que tem pronto no Marketplace.

Ubuntu:

Baixe a versão que está no site

Se não tiver a versão do gunzip e wget ja baixe

apt-get install gunzip wget
wget https://releases.hashicorp.com/terraform/0.11.7/terraform_0.11.7_linux_amd64.zip
unzip terra*

Mova os binários para a pasta /usr/local/bin/
mv terraform /usr/local/bin/
terraform --version

Esta é a forma de usar no ubuntu.

Agora vamos para o Azure.

terraformazure001

Faça a busca do terraform e escolha a maquina virtual.

terraformazure002

Leia atentamente as instruções da maquina virtual do Marketplace.

terraformazure003

Complete as instruções de usuário e senha, localidade, nome da maquina e grupo de recursos do Azure.

terraformazure004

Neste passo é sugerido este modelo de maquina virtual do Terraform, então mantenha ou veja modelos equivalentes.

terraformazure005

Confirme os parâmetro de provisionamento e aguarde as instalações do Terraform.

terraformazure006

Agora só aguardar.

terraformazure007

Maquina instalada com sucesso e vamos acessar.

terraformazure008

Terraform devidamente provisionado e pronto para o uso. Vamos mostrar um modelo de criação de uma maquina no Azure através do Terraform

Para o funcionamento correto do Terraform no Azure instale o pacote do Azure CLI na maquina.

https://docs.microsoft.com/pt-br/cli/azure/install-azure-cli-apt?view=azure-cli-latest

O modelo de template para criação da maquina virtual está aqui abaixo:

Leia o resto deste post

Skype for business no Linux? Sim com Pidgin!

Olá pessoal

Antes de qualquer coisa trabalhei com linux por muito tempo.

Nem sabia que era Microsoft. Nos tempo áureos de datacenter, rack, cage, apache, e um montão de coisas e experiências legais com toda certeza meu deu expertise para usar até hoje em projetos de cloud com linux.

Mas o que eu fiz, foi instalar o Pidgin no linux e usar o Skype for business. Isso mesmo.

Usar Skype for business pacote do Office 365 no Linux.

Utilizei o sistema operacional Elementary, que é variação de sistemas .deb como Ubuntu e Debian.

Alias este post foi feito todo no linux.

Captura de tela de 2018-04-23 22.09.16

O Elementary tem uma central de instalação chamada de Central de Aplicativos, mas não vem ao caso por que por traz tem o terminal ou console como queira usar.

No terminal instale via apt:

sudo apt-get install pidgin

sudo apt-get install pidgin-sipe

“sipe é o pacote de plugin para que no pidgin para que ele tenha suporte ao SIP do Skype for business do Office 365” Leia o resto deste post

Office 365 Weekly

Office 365 news, notes and tips

Domínio TI

Aplicando informação, conquistando conhecimento.

Revista do Linux

Seja Bem Vindo … Aqui você encontrará dicas, melhores Soluções e Práticas de TI

Samba4

Active Directory Livre

Cloud and Datacenter Management Blog

Microsoft Hybrid Cloud blogsite about Management

Sulamita Dantas

DBA SQL Server & Analista BI

Ao redor do buraco tudo é beira!

Um cavalo morto é um animal sem vida!

Exame

Notícias do Brasil e do Mundo. Economia, Política, Finanças e mais. ➤ Entrevistas, Análises e Opinião de quem entende do Assunto! ➤ Acesse!

%d blogueiros gostam disto: