StarlingX at the virtual Project Teams Gathering
Get the highlights of StarlingX activities at the recent Project Teams Gathering (PTG).
The StarlingX community participated in the first virtual PTG that was held online on June 1-5. The team spent almost ten hours discussing current technical challenges and new proposals as well as community related topics. In this post we will summarize the topics that were discussed at the event and encourage you to participate in the ongoing activities in the areas that interest you.
One of the first topics of the PTG sessions was to take a look at the current state of the project including the project statement and the activities during the 4.0 release cycle. There are a few features which are already merged for instance integrating Kata Containers as an optional container runtime with Time Sensitive Networking (TSN) support, Cert Manager integration and Redfish virtual media support. The community discussed ongoing items to ensure the stability of the platform while upgrading to new versions of components such as OpenStack while items like containerization of the Fault Management service will happen during the 5.0 release cycle.
As an ongoing activity the participants discussed ways to improve the build process for the project along with supporting multiple operating systems besides CentOS that the project is currently built on. A lot of effort went into creating a layered build system as opposed to a monolithic process, but there is always room for improvement and automation. The community discussed options to build the platform more frequently, but still not triggered by every commit as it wouldn’t be efficient. It is also important to decouple the build process from the platform parts as much as possible as it will help with adding support for further operating systems. The first candidate is OpenEmbedded/Yocto Project based where the experimentation has already started. The two communities still need to decide on the integration points to see the maintenance and testing impacts clearly.
During the PTG session the TSC and the participants decided to restart the MultiOS project, which was suspended a few months ago, to look into the challenges described above together with the team members of the Build project.
The community took advantage of the available time to talk about further items in focus such as security which is crucial for edge use cases. The discussions covered two aspects one being testing and the other is improving functionality for users in this area. The community is scanning for CVEs monthly and having Bandit running as a non-voting Zuul job in most repositories already. It is under discussion to define a process for the findings that result from the continuous testing activities.
There are many security related features included in the platform already, such as UEFI secure boot or Cert Manager for applications. As a current task the community is looking into synchronizing keys between controllers. Plans for future releases include managing StarlingX certificates with Cert Manager, evaluating to use the open source version of Vault for secret management and validation of container image signatures.
A recurring topic on all PTGs is testing and the virtual version of the event was no exception. The participants were evaluating the current state of the project in this area to see where they could introduce more automation and test coverage. The main area to focus on is sanity testing as this process needs support for automation and to be run by Zuul as a potential end goal. There is still room to increase unit test coverage as well. To address this challenge the community is looking into running a virtual hackathon during the second half of this year with focus on making sure that the unit test framework is properly set up in all repositories and increasing test coverage.
As the PTG is a great opportunity to discuss new ideas and work on the roadmap including looking into longer term plans. There are a few features which will not be finished during the 4.0 cycle and therefore will be addressed after July during the next release cycle, like containerizing the Ceph services, finishing the CentOS 8 upgrade, or moving to Python 3. Looking beyond these items there are some new features community were discussing to enhance the platform manageability and make it more feature rich.
One of the popular topics around edge computing is zero touch provisioning as you need to onboard devices at remote locations and have them deployed with the right services and part of the infrastructure with the right configuration with the least amount of human interaction with the target of zero. The community started to explore this space to identify requirements and potential projects to integrate. Another idea that the group discussed included introducing the ability to manage small devices like IoT gateways, IoT controllers or industrial PCs. As opposed to edge sites these nodes would be loosely managed by StarlingX. While the nodes would be monitored for high availability including raising alarms in case of the connection to a device is lost the node would have more authority to self-maintain within the federation with similar nodes. These ideas are subject to further discussions after the event to decide if they will be added to the roadmap and identify target releases.
Beyond new features and the work towards containerizing all the platform services the community will keep working on enhancing support for acceleration devices as well as improving documentation to improve the installation guide and add more information about the platform capabilities.
Beyond the technical aspects we talked about the processes and visibility of the project as well. It is important to make sure that users and developers who are interested in the project can easily discover information and can navigate through the available resources online. As a continuous effort the documentation team members are working with the community to improve the installation guide and further documentation based on frequently asked questions on the mailing list and IRC. We are encouraging everyone who is evaluating or using the software to fill out the user survey and help us improve the project based on their feedback. As the project has a larger contributor group in China they are utilizing tools popular in that region such as WeChat. A community member is periodically summarizing interesting discussions from that forum to share it with the global community.
As the PTG is providing the possibility to all communities supported by the OpenStack Foundation to meet it is a great opportunity for cross-project sessions to make sure the efficient collaboration and synchronization between projects with integration points. The StarlingX community met with Airship, Kata Containers and the OSF Edge Computing Group during the event.
StarlingX is currently integrating a component from Airship called Armada to manage helm charts for the containerized platform. During the PTG the projects discussed Airship’s plans to leverage more components from the Kubernetes landscape such as the Cluster API and Flux Helm Operator while stop working on some of their services such as Armada. It will be important onwards to make sure that StarlingX is following the changes in Airship to ensure they use the up to date components while making sure that the transition to new components is smooth and don’t affect users of the project.
Kata Containers is integrated in StarlingX through containerd. During the joint session the two communities had a short overview about the integration points and future plans. Based on the use cases requirements towards Kata include huge page support and static CPU policies. Kata’s roadmap towards their 2.0 release includes important items for StarlingX such as reduced memory footprint and improved security profile.
During the joint discussion with the Edge Computing Group we took a closer look on the containerized StarlingX platform including the Distributed Cloud feature which is in line with the Distributed Control plane architecture model that the edge group is currently working on.
If you would like to learn more about the project and get involved check the website for more information or download the code and start to experiment with the platform.
Stay tuned for the next event where you can meet the StarlingX community!