Hi Greg,
Thank you very much for your thoughtful follow-up.
Please accept my apologies for the delayed response. We encountered challenges with the server's IPMI network connectivity and Public IP address allocation, which caused some delays.
I anticipate that the server and router/firewall setup will be available by Friday, June 13. To facilitate a smooth setup process, I will create a Slack group with Mr. Talha and Ahsan, who are technical experts. This will serve as a space for discussions and any requirements related to the StarlingX IO setup.
Please let me know if there’s anything else you need in the meantime.
Best regards,
Rizwan
Hey Rizwan
… sorry for delayed response.
Yeah sounds like StarlingX would be a good fit for you.
I will try to find someone in StarlingX Community that has time to assist you on your setup.
In the meantime, you can work with me.
Greg.
From: Rizwan Ashraf <rizwan@ablecommunity.com>
Sent: Saturday, March 29, 2025 9:58 PM
To: Waines, Greg <Greg.Waines@windriver.com>
Cc: StarlingX ML <starlingx-discuss@lists.starlingx.io>
Subject: Re: StarlingX IO installation for a community nonprofit
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and know the content is safe.Thank you very much, Greg, for the kind follow-up and important questions.
Below is our attempt to respond to the requested technical information. I need your permission to send you a Slack invite to communicate with the IT volunteer, so it will help with technical explanation and next steps.I am also working with volunteer to setup remote access to the 4 node server via IPMI networking for your access. It will take two weeks time for remote accessibility to install StarlingX IO.
Please accept my apologies for the delay response.
Sincerely,Rizwan
Answers:
1. What type of applications are you thinking of running on StarlingX?
We plan to deploy a multi-user training platform that provides Virtual Desktops (VMs), Database Training Environments, and Interactive Coding Spaces, along with Community Service Applications for nonprofit organizations. The applications will be a mix of VM-based services and containerized microservices, orchestrated using Kubernetes on StarlingX.
Virtual Desktops (Windows & Linux)
- Windows and Linux-based virtual desktops for hands-on training.
- Users will access these desktops remotely via Apache Guacamole (RDP/VNC/SSH in a browser).
- Each user will have their own isolated VM with persistent storage.
Web-Based Interactive Coding Environments
- JupyterHub for Python, R, and data science training.
- Code-Server (VS Code in a browser) for multi-language development.
- Each user will have a containerized coding environment running on Kubernetes.
Database Training Environments (VMs)
- Dedicated VMs for database administration training, including:
- PostgreSQL
- MySQL
- MongoDB
- Redis
- Users will have individual or shared access to these database VMs for learning database management, performance tuning, and security.
Web Application Backend
- FastAPI-based web application for:
- User authentication
- VM allocation and management
- Code-space provisioning
- React/Vue.js frontend for user interaction and real-time monitoring.
- Kubernetes-managed containerized backend ensuring scalability and high availability.
Storage & File Management
- MinIO (S3-compatible object storage) for storing user files and code.
- Nextcloud (self-hosted cloud storage) for collaborative file management.
- Block Storage for VM disks and databases requiring high-performance storage.
Networking & Security
- Nginx / Traefik as a reverse proxy for microservices.
- Let’s Encrypt for SSL certificates to enable HTTPS.
- WireGuard/OpenVPN for secure remote access.
- Kubernetes Ingress and Service Mesh (Istio/Linkerd) for inter-service communication.
2. Community Services Applications for Non-Profit Organizations
In addition to training environments, we will use StarlingX to host various community service applications designed for nonprofit organizations. These applications will follow a microservices architecture deployed on Kubernetes, with an API Gateway for efficient service communication.
Technology Stack
- FastAPI, Django REST Framework (DRF), WebSockets, HTTPS.
- MongoDB & PostgreSQL for structured and unstructured data storage.
- Microservices Architecture where each service communicates via APIs.
- FastAPI-based API Gateway for managing authentication, request routing, and inter-service communication.
Media File Storage & Serving
- MinIO (preferred) for scalable, API-driven media storage (videos, images, documents).
- Block Storage for applications that require direct disk access on VMs.
- Since containers will be running on VMs with block storage, media files will be stored in MinIO for better scalability and API-based access.
Example Use Cases
- Food Distribution & Assistance Management
- Managing inventory, scheduling deliveries, and tracking recipients.
- Volunteer & Donation Management
- Sign-ups, tracking donations, and managing nonprofit events.
- Community Support Services
- Online helpdesk, case tracking, and real-time chat via WebSockets.
3. Will there be multiple users or tenants?
Yes, the platform will support multi-tenancy, ensuring that:
- Registered users have their own virtual desktops, database VMs, and coding spaces.
- Nonprofit organizations get isolated environments for their applications.
- Users have role-based access control (RBAC) (e.g., admin, trainer, student, nonprofit manager).
- Resource isolation is enforced through VMs for databases and persistent workloads, and Kubernetes for microservices.
4. Will your users want to run primarily containerized applications or primarily VM-based applications… or both?
We require both VMs and containerized applications, depending on the use case.
VM-Based Applications:
- Windows/Linux Virtual Desktops for training users.
- Database Training VMs for PostgreSQL, MySQL, MongoDB, and Redis.
- Persistent applications requiring dedicated compute resources.
- Block storage-backed environments for VMs.
Containerized Applications (Managed with Kubernetes):
- JupyterHub, Code-Server, FastAPI, API Gateway, and Community Service Apps will be containerized.
- Kubernetes will manage service orchestration, auto-scaling, and deployment.
- All containerized services will be deployed on StarlingX Kubernetes for high availability and resource efficiency.
This hybrid approach allows scalability for web applications and coding environments while maintaining dedicated VMs for desktops and database training.
5. Storage Strategy: MinIO vs. Block Storage (Management by Kubernetes & StarlingX)
We will use both MinIO and Block Storage, but their management differs:
MinIO (Managed by Kubernetes)
- Deployed as a StatefulSet on Kubernetes for high availability.
- Storage managed using Persistent Volume Claims (PVCs) and StorageClasses.
- Used for user file storage, application data, and media files.
- Scalable with built-in redundancy.
Block Storage (Managed by StarlingX/OpenStack, Not Kubernetes)
- Used for VM disk images (Windows/Linux desktops, database VMs).
- Managed by StarlingX’s OpenStack Cinder, Ceph, or direct storage solutions.
- Provides high-performance storage for databases requiring persistent block-level storage.
By clearly separating storage management, we ensure Kubernetes efficiently handles microservices storage, while StarlingX/OpenStack manages VM and database disk storage.
Also some questions about your hardware …
- what type of server(s) do you have currently ?
- this page provides minimum hardware requirements for running StarlingX
- how many servers do you have ?
- StarlingX is quite scalable … it can run on 1 server or up to 200 servers
- you said that you wanted to install “StarlingX in Ubuntu Linux“
- StarlingX actually requires a dedicated server
- i.e., you can not install StarlingX as an Application on top of an existing OS
- StarlingX installs ’everything’ on a dedicated server
- it installs its own linux kernel, OS (Debian -based), StarlingX infrastructure management services, Kubernetes and OpenStack
Greg.
On Wed, Mar 26, 2025 at 3:56 AM Waines, Greg <Greg.Waines@windriver.com> wrote:
Hey Rizwan,
Sorry for the slow reply.
I wanted to reach out and get some more information from you.
Just to make sure that StarlingX is the right fit for you,
I wanted to understand some examples of what you would like to do with the StarlingX deployment after you set it up.I.e.,
- what type of applications are you thinking of running on StarlingX ?
- e.g.
- virtual desktops ? e.g. windows, linux, …
- various web servers or web pages ?
- wikis ?
- …
- will there be multiple users or tenants ?
- each running their own applications
- will your users want to run primarily containerized applications or primarily VM-based applications … or both ?
Also some questions about your hardware …
- what type of server(s) do you have currently ?
- this page provides minimum hardware requirements for running StarlingX
- how many servers do you have ?
- StarlingX is quite scalable … it can run on 1 server or up to 200 servers
- you said that you wanted to install “StarlingX in Ubuntu Linux”
- StarlingX actually requires a dedicated server
- i.e., you can not install StarlingX as an Application on top of an existing OS
- StarlingX installs ‘everything’ on a dedicated server
- it installs its own linux kernel, OS (Debian -based), StarlingX infrastructure management services, Kubernetes and OpenStack
Greg.
------------------------
From: Rizwan Ashraf <rizwan@ablecommunity.com>
Sent: Sunday, March 2, 2025 10:55 AM
To: Khalil, Ghada <Ghada.Khalil@windriver.com>
Subject: StarlingX IO installation for a community nonprofit
CAUTION: This email comes from a non Wind River email account!
Do not click links or open attachments unless you recognize the sender and know the content is safe.
Hello Khalil,
Able Community would like to set up StarlingX IO cloud environment and enable CI/CD. This effort is to help the minority community youth and families with skills training.
I and one more IT volunteer are working in Able Community to enable the community technology skills platform and environment.
I am reaching out requesting if the StarlingX team can volunteer to help install and StarlingX in Ubuntu Linux.
Please advise.
Rizwan Ashraf