1
0
Fork 0
mirror of https://github.com/imjasonh/k8sless synced 2026-07-07 00:23:28 +00:00
Commit graph

7 commits

Author SHA1 Message Date
Jason Hall
e6a6740102
Revise README for clarity and feature updates 2025-09-18 08:13:42 -04:00
Jason Hall
fb41731aeb
docs: Add comprehensive README documentation 2025-07-22 22:40:11 -04:00
Jason Hall
5775d33542
feat: Add Google Cloud logging and monitoring integration
- Configure fluent-bit to collect containerd logs from /var/log/containers/
- Add google-logging-enabled and google-monitoring-enabled metadata flags
- Add service account scopes for logging.write and monitoring.write
- Add labels to VMs for easier log filtering (k8sless=true, pod-name, namespace)
- Refactor cloud-init to use go:embed with separate cloud-init.yaml file
- Update main.go to delete pod/VM 1 minute after becoming Running
- Add .gitignore for k8sless binary

Container logs now appear in Cloud Logging under logName k8sless_containers
with proper timestamps and content extraction.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-22 22:17:00 -04:00
Jason Hall
639c2cf691
Implement kubelet integration for running containers on GCE VMs
This commit adds the foundation for k8sless to actually run containers
via kubelet on GCE VMs:

- Add cloud-init configuration to install and configure kubelet on VM startup
- Implement kubelet client to query pod status via read-only API (port 10255)
- Update watcher to get real pod status from kubelet instead of just VM status
- Update Get/List operations to query kubelet when available
- Configure firewall rules to allow external access to kubelet API
- Add comprehensive documentation in CLAUDE.md

Key features:
- VMs run Container-Optimized OS with kubelet pre-installed
- Pod specs are stored in VM metadata and retrieved on startup
- Kubelet runs pods as static manifests from /etc/kubernetes/manifests/
- Pod lifecycle is accurately tracked: Pending → Running → Succeeded/Failed
- Supports host networking (no CNI configured)

Limitations:
- Container logs not available via read-only API (will add Cloud Logging)
- Hardcoded machine type and zone configurations
- Most pod operations still return "not implemented"

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-07-22 21:41:58 -04:00
Jason Hall
faa98700d3
Create README.md 2025-04-02 22:52:03 -04:00
Jason Hall
37d08621a1
initial commit
Signed-off-by: Jason Hall <jason@chainguard.dev>
2025-04-02 22:51:17 -04:00
Jason Hall
ad1e06209a
Initial commit 2025-04-02 22:50:35 -04:00