Skip to content

Commit

Permalink
Merge pull request #33 from Rapha-Borges/always-free
Browse files Browse the repository at this point in the history
Always free
  • Loading branch information
Rapha-Borges authored Jan 27, 2024
2 parents 1d1e2d8 + 4bfd429 commit 70dd934
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 21 deletions.
26 changes: 8 additions & 18 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,28 +1,16 @@
# Criando um Cluster Kubernetes na OCI utilizando Terraform [#MêsDoKubernetes](https://github.com/linuxtips/MesDoKubernetes)

### EM ATUALIZAÇÃO - VERIFIQUE A [ISSUE #8](https://github.com/Rapha-Borges/oke-free/issues/8) PARA MAIORES INFORMAÇÕES

Crie uma conta gratuita na Oracle Cloud, e provisione um cluster Kubernetes utilizando o Terraform de forma simples e rápida.

Acesse este [link e crie a sua conta](https://signup.cloud.oracle.com/)

### Variáveis do Terraform personalizadas para o lab

Caso queira realizar o lab com as configurações utilizadas na live, basta substituir as variáveis do Terraform no arquivo `variables.tf` pelas variáveis abaixo. Mas lembre-se, as instâncias criadas com essas configurações só serão gratuitas enquanto os seus créditos oferecidos pela Oracle durante o #MêsDoKubernetes estiverem ativos.

```
region = us-ashburn-1
shape = VM.Standard.E3.Flex
### Pontos Importantes Antes de Começar

memory_in_gbs_per_node = 4
- Devido limitações da conta gratuita, você provavelmente precisará realizar o [upgrade para uma conta](https://cloud.oracle.com/invoices-and-orders/upgrade-and-payment) `Pay As You Go` para conseguir criar o cluster utilizando as instâncias gratuitas `VM.Standard.A1.Flex`. Você não será cobrado pelo uso de recursos gratuitos mesmo após o upgrade.

image_id = ocid1.image.oc1.iad.aaaaaaaanwsto6tqklfuawgqrve5ugjpbff3l5qtb7bs35dp72ewcnsuwoka
- Crie um alerta na sua conta para não ser cobrado por acidente [Budget](https://cloud.oracle.com/usage/budgets).

node_size = 1
kubernetes_version = v1.28.2
```
- Não altere o shape da instância utilizada no cluster, pois a única instância gratuita compatível com o OKE é a `VM.Standard.A1.Flex`.

## Instalando o Terraform

Expand Down Expand Up @@ -228,6 +216,8 @@ set TF_VAR_ssh_public_key=C:\Users\<user>\.oci\ssh\id_rsa.pub
set TF_VAR_oci_profile="DEFAULT"
```

Agora execute o arquivo para exportar as variáveis:

```
env.bat
```
Expand Down Expand Up @@ -283,9 +273,9 @@ kubectl get nodes

### Script para criação do cluster

Caso queira automatizar o processo de criação do cluster, basta executar o script main.sh que está na raiz do projeto. O script irá gerar a chave SSH, adicionar a chave pública na TF_VAR, inicializar o Terraform e criar o cluster.
#### Atenção: O script está em fase de testes e funciona apenas no Linux.

Atenção: O script está em fase de testes e funciona apenas no Linux.
Caso queira automatizar o processo de criação do cluster, basta executar o script main.sh que está na raiz do projeto. O script irá gerar a chave SSH, adicionar a chave pública na TF_VAR, inicializar o Terraform e criar o cluster.

```sh
./main.sh
Expand Down
2 changes: 1 addition & 1 deletion terrafile.tf
Original file line number Diff line number Diff line change
Expand Up @@ -61,9 +61,9 @@ module "loadbalancer" {

module "kubeconfig" {
source = "./kubeconfig"
depends_on = [ module.loadbalancer ]
cluster_id = module.cluster.cluster_id
oci_profile = var.oci_profile
depends_on = [ module.loadbalancer ]
}

output "public_ip" {
Expand Down
4 changes: 2 additions & 2 deletions variables.tf
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,7 @@ variable "image_id" {
default = "ocid1.image.oc1.iad.aaaaaaaao2zpwcb2osmbtliiuzlphc3y2fqaqmcpp5ttlcf573sidkabml7a"
}
# Link to a list of available images (Be sure to select the correct region and CPU architecture. We are using Oracle-Linux-8.8-aarch64-2023.09.26-0-OKE-1.28.2-653)
# https://docs.cloud.oracle.com/iaas/images/
# https://docs.oracle.com/en-us/iaas/images/image/d4c060a5-041c-477b-8226-2d25d91c4ffb/

# ----------> Cluster <----------
variable "k8s_version" {
Expand All @@ -42,7 +42,7 @@ variable "k8s_version" {

variable "node_size" {
type = string
default = "1"
default = "3"
}

variable "cluster_name" {
Expand Down

0 comments on commit 70dd934

Please sign in to comment.