# Strimzi 2 **Tutorial Strinzi Kafka:** https://strimzi.io/docs/operators/0.30.0/quickstart . . . ## Iniciar Docker e minikube - **Iniciar o Docker desktop** com o kubernetes - **Iniciar minikube**: `minikube start`  - Ver se o **status do minikube**, se ele iniciou: `minikube status`  . . . ## Instalando Strimzi - **Baixar strimzi** (no final da pagina): https://github.com/strimzi/strimzi-kafka-operator/releases  - **Crie um novo namespace** chamado: `kafka` para o Operador de Cluster Strimzi Kafka: `kubectl create ns kafka`  - **Modifique os arquivos de instalação** para fazer referência ao kafka namespace onde você instalará o Strimzi Kafka Cluster Operator: - **No Linux:** `sed -i 's/namespace: .*/namespace: kafka/' install/cluster-operator/*RoleBinding*.yaml` - **No windows, Powershell:** ```= $folderPath = "install\cluster-operator" # Caminho para a pasta contendo os arquivos # Lista todos os arquivos com o nome '*RoleBinding*.yaml' na pasta especificada $fileList = Get-ChildItem -Path $folderPath -Filter "*RoleBinding*.yaml" -File # Loop pelos arquivos foreach ($file in $fileList) { # Lê o conteúdo do arquivo $content = Get-Content $file.FullName # Substitui a string 'namespace: .*' por 'namespace: kafka' $newContent = $content -replace 'namespace: .+', 'namespace: kafka' # Escreve o novo conteúdo de volta para o arquivo $newContent | Set-Content $file.FullName } ``` - **Crie um novo namespace** `my-kafka-project` onde você implantará seu cluster Kafka: `kubectl create ns my-kafka-project`  - **Edite o install/cluster-operator/060-Deployment-strimzi-cluster-operator.yaml** arquivo e defina a STRIMZI_NAMESPACE variável de ambiente como namespace `my-kafka-project`  - Dê permissão ao Operador de Cluster para monitorar o **my-kafka-project** namespace: - `kubectl create -f install/cluster-operator/020-RoleBinding-strimzi-cluster-operator.yaml -n my-kafka-project`  - `kubectl create -f install/cluster-operator/031-RoleBinding-strimzi-cluster-operator-entity-operator-delegation.yaml -n my-kafka-project`  - Implante os CRDs e recursos de controle de acesso baseado em função (RBAC) para gerenciar os CRDs: `kubectl create -f install/cluster-operator/ -n kafka`  . . . ## Criando um cluster - **Iniciar o zookeeper**: `.\bin\windows\zookeeper-server-start.bat .\config\zookeeper.properties`  - **Iniciar o kafka**: `.\bin\windows\kafka-server-start.bat .\config\server.properties`  - **Criar o topico**: `.\bin\windows\kafka-topics.bat --create --topic nome_do_topico --bootstrap-server localhost:9092` - **Listar os topicos** existentes: `.\bin\windows\kafka-topics.bat --list --bootstrap-server localhost:9092`  - **Iniciar o producer**: `.\bin\windows\kafka-console-producer.bat --broker-list localhost:9092 --topic topico-kafka-1803`  - **Iniciar o consumer**: `.\bin\windows\kafka-console-consumer.bat --bootstrap-server localhost:9092 --topic topico-kafka-1803 --from-beginning`  . . . - **Crie um namespace**: `kubectl create ns my-cluster`  - Para listar namespaces: `kubectl get ns`  - **Crie o arquivo do novo cluster** Kafka: `my-cluster` com um ZooKeeper e um corretor Kafka. **my-kafka-project.yaml** ```yaml= apiVersion: kafka.strimzi.io/v1beta2 kind: Kafka metadata: name: my-cluster spec: kafka: replicas: 1 listeners: - name: plain port: 9092 type: internal tls: false - name: tls port: 9093 type: internal tls: true authentication: type: tls - name: external port: 9094 type: nodeport tls: false storage: type: jbod volumes: - id: 0 type: persistent-claim size: 100Gi deleteClaim: false config: offsets.topic.replication.factor: 1 transaction.state.log.replication.factor: 1 transaction.state.log.min.isr: 1 default.replication.factor: 1 min.insync.replicas: 1 zookeeper: replicas: 1 storage: type: persistent-claim size: 100Gi deleteClaim: false entityOperator: topicOperator: {} userOperator: {} ``` - **Para listar os clusters**: `kubectl get kafka`  - **Instale o novo cluster**: `kubectl apply -f my-kafka-project.yaml`  - **Aguarde a implantação do cluster**: `kubectl wait kafka/my-cluster --for=condition=Ready --timeout=300s -n my-kafka-project`
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up