Skip to content

Connect MinIO and Kibana with authenticated credentials#11

Merged
alanthssss merged 5 commits into
mainfrom
copilot/connect-minio
Mar 31, 2026
Merged

Connect MinIO and Kibana with authenticated credentials#11
alanthssss merged 5 commits into
mainfrom
copilot/connect-minio

Conversation

Copy link
Copy Markdown
Contributor

Copilot AI commented Mar 31, 2026

MinIO was checked via a plain TCP dial with no credential verification. This adds proper authenticated connectivity checks for both MinIO and Kibana using their respective SDKs/APIs.

Config schema change

config.yml now has dedicated top-level sections for authenticated services alongside the generic services: block for TCP checks:

services:          # TCP checks (unchanged behaviour)
  redis:
    - 10.0.1.38:6379
  kafka:
    - 10.0.1.30:9092
  zookeeper:
    - 10.0.1.27:2181,10.0.1.28:2181,10.0.1.29:2181

minio:             # Authenticated S3 API check
  username: minioadmin
  password: minioadmin
  use_ssl: false   # set true for TLS endpoints
  addresses:
    - 10.0.1.35:9000

kibana:            # Authenticated HTTP check
  addresses:
    - 10.0.1.26:5601
  username: elastic
  password: changeme

Key changes

  • config/config.go — Added MinioConfig struct (username, password, use_ssl, addresses), KibanaConfig struct (addresses, username, password), and AppConfig wrapper replacing the flat NetworkConfig as the top-level type.
  • checker/minio.go — New checker that calls ListBuckets via minio-go/v7, verifying both reachability and credential validity within the configured timeout.
  • checker/checker.go — Added CheckKibanaConnection that performs an HTTP GET to /api/status with basic auth, verifying both reachability and credential validity.
  • main.go — TCP service loop now iterates cfg.Services; ZooKeeper uses the ruok/imok four-character command checker; MinIO and Kibana each run separate authenticated loops. Extracted recordResult helper to eliminate duplicated result-recording logic.
  • go.mod — Added github.com/minio/minio-go/v7 v7.0.80 (minimum Go 1.22, consistent with existing module).

Copilot AI linked an issue Mar 31, 2026 that may be closed by this pull request
Copilot AI changed the title [WIP] Connect Minio with username and password Connect MinIO with authenticated credentials Mar 31, 2026
Copilot AI requested a review from alanthssss March 31, 2026 16:25
Copy link
Copy Markdown
Member

@alanthssss alanthssss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@alanthssss
Copy link
Copy Markdown
Member

@copilot solve the merge conflicts

…tication

Agent-Logs-Url: https://github.com/keyscome/pulse/sessions/7bca5d9c-f4f4-4af4-b484-e7879cbb26de

Co-authored-by: alanthssss <32271197+alanthssss@users.noreply.github.com>
Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 31, 2026

@copilot solve the merge conflicts

Merge conflicts resolved in commit 09aa7cc. The ZooKeeper PR (#10) changes are now integrated — config.yml uses the connection-string format for ZooKeeper under the services: key, and main.go routes ZooKeeper addresses through CheckZookeeperConnection while MinIO uses the authenticated check.

Copilot AI requested a review from alanthssss March 31, 2026 16:53
@alanthssss
Copy link
Copy Markdown
Member

@copilot solve the merge conflicts

Copy link
Copy Markdown
Contributor Author

Copilot AI commented Mar 31, 2026

@copilot solve the merge conflicts

Merge conflicts resolved in commit 8039939. The Kibana HTTP auth PR (#12) changes are now integrated — KibanaConfig is added to AppConfig alongside MinioConfig, config.yml has Kibana under its own top-level kibana: key with addresses/username/password, and the Kibana check in main.go uses the recordResult helper for consistency.

Copilot AI changed the title Connect MinIO with authenticated credentials Connect MinIO and Kibana with authenticated credentials Mar 31, 2026
@alanthssss alanthssss marked this pull request as ready for review March 31, 2026 17:10
Copy link
Copy Markdown
Member

@alanthssss alanthssss left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM

@alanthssss alanthssss merged commit d123503 into main Mar 31, 2026
@alanthssss alanthssss deleted the copilot/connect-minio branch March 31, 2026 17:12
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Connect Minio

2 participants