Kubernetes: Instalação Online usando repositórios públicos: Difference between revisions

From Wiki
 
(12 intermediate revisions by the same user not shown)
Line 20: Line 20:
2) Instalando os pacotes no CentOS
2) Instalando os pacotes no CentOS


  yum install -y docker-ce-18.06
  yum install -y docker-ce-18.06.3


3) Remover o arquivoo  
3) Remover o arquivoo  


  /etc/yum.repos.d/docker-ce.repo
  /etc/yum.repos.d/docker-ce.repo
== Configure Docker with the devicemapper storage driver ==
Parando o docker
systemctl stop docker
Criando o device mapper
pvcreate /dev/xvdf
vgcreate dockerVg /dev/xvdf
lvcreate --wipesignatures y -n thinpoolLv dockerVg -l 95%VG
lvcreate --wipesignatures y -n thinpoolmetaLv dockerVg -l 1%VG
lvconvert -y --zero n -c 512K --thinpool dockerVg/thinpoolLv --poolmetadata dockerVg/thinpoolmetaLv
Definir /etc/lvm/profile/dockerVg-thinpoolLv.profile
activation {
  thin_pool_autoextend_threshold=80
  thin_pool_autoextend_percent=20
}
lvchange --metadataprofile dockerVg-thinpoolmetaLv dockerVg/thinpoolLv
lvs -o+seg_monitor


== Configuração pós-instalação ==
== Configuração pós-instalação ==
Line 127: Line 102:
  /etc/yum.repos.d/kubernetes.repo
  /etc/yum.repos.d/kubernetes.repo


4) Start o Kubernetes
3) Configuração do Cluster Kubernetes
 
systemctl start kubelet
 
6) Se tudo estiver correto ajustar para iniciar automaticamente
 
systemctl enable kubelet
 
 
== Create a kubeadm-config.yaml ==
 
Criar arquivo kubeadm-config.yaml, com o conteúdo:
 
<nowiki>apiVersion: kubeadm.k8s.io/v1alpha2
kind: MasterConfiguration
apiServerExtraArgs:
  enable-admission-plugins: PodSecurityPolicy
kubernetesVersion: v1.11.9
networking:
    # This CIDR is a Calico default. Substitute or remove for your CNI provider.
    podSubnet: "192.168.0.0/16"
</nowiki>
 
 
Initialize the master.
 
kubeadm init --config=kubeadm-config.yaml


To make kubectl work,
* [[Kubernetes: Configuração do Cluster Kubernetes Standard]]


mkdir -p $HOME/.kube
* [[Kubernetes: Configuração do Cluster Kubernetes com Alta Disponibilidade]]
cp -i /etc/kubernetes/admin.conf $HOME/.kube/config
chown $(id -u):$(id -g) $HOME/.kube/config


= Ver também =
= Ver também =

Latest revision as of 14:17, 21 August 2019

Dica: Caso você não tenha acesso ao repositório na internet, veja o artigo Kubernetes: Instalação Offline ou Instalação usando repositórios privados

Docker

Instalando o Docker

1) Criar arquivo /etc/yum.repos.d/docker-ce.repo, com o conteúdo:

[docker-ce]
name=Docker CE Stable - $basearch
baseurl=https://download.docker.com/linux/centos/7/$basearch/stable
#baseurl=http://repomirror.company.com/docker-mirror/linux/centos/7/$basearch/stable/
enabled=1
gpgcheck=1
gpgkey=https://download.docker.com/linux/centos/gpg
#gpgkey=http://repomirror.company.com/docker-mirror/linux/centos/gpg
 

2) Instalando os pacotes no CentOS

yum install -y docker-ce-18.06.3

3) Remover o arquivoo

/etc/yum.repos.d/docker-ce.repo

Configuração pós-instalação

1) Tuning do SO

sysctl -a | grep may_detach_mounts

Se o valor for diferente de "fs.may_detach_mounts = 1", ajustar:

echo 1 > /proc/sys/fs/may_detach_mounts
echo fs.may_detach_mounts=1 > /usr/lib/sysctl.d/99-docker.conf

3) Editar o arquivo /etc/docker/daemon.json e configurar o devicemapper storage driver.

Importante: No meu caso precisava utilizar um repositório interno, então adicionei a variável insecure-registries.
mkdir -p /etc/docker
 
cat <<EOF >> /etc/docker/daemon.json
{
    "bip": "1.1.1.1/16",
    "insecure-registries": ["repomirror.company.com:5001"],
    "storage-driver": "devicemapper",
    "storage-opts": [
        "dm.thinpooldev=/dev/mapper/dockerVg-thinpoolLv",
        "dm.use_deferred_removal=true",
        "dm.use_deferred_deletion=true"
    ]
}
EOF
 

4) Start o Docker

systemctl start docker

5) Verificando as configurações

docker info

6) Se tudo estiver correto ajustar para iniciar automaticamente

systemctl enable docker

Verificando problemas

Inspecionando os logs do docker:

journalctl -ul docker

Kubernetes

Instalando o Kubernetes

1) Criar arquivo /etc/yum.repos.d/kubernetes.repo, com o conteúdo:

[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
 

2) Instalando os pacotes no CentOS

yum install -y kubelet-1.11.9 kubeadm-1.11.9 kubectl-1.11.9

3) Remover o arquivoo

/etc/yum.repos.d/kubernetes.repo

3) Configuração do Cluster Kubernetes

Ver também