Chameleon Changelog for March 2023
- April 3, 2023 by
- Mark Powers
Dear Chameleon users,
It isn’t too late to send us a presentation proposal or register for the Chameleon User Meeting! We hope to see you all there – for more information, see our webpage. We just announced a keynote on Teaching with Testbeds, but the program contains other topics as well. There are a lot of updates to Chameleon this month, including some aimed at educators.
FABRIC stitching at CHI@TACC! Last summer, we announced that you could integrate Chameleon experiments with Fabric at CHI@UC, which now is possible from CHI@TACC too. This allows you to run experiments utilizing both Chameleon’s resources and those of the FABRIC networking testbed. See this artifact for examples of how to connect Chameleon and Fabric. If you have any questions about this feature, please let us know via the help desk, as always.
New features supporting education use. Most projects on Chameleon are for research groups, but Chameleon is also used by many educators to run classes. Last month, we updated various OpenStack features to make them easier to use, especially for students with lesser experience, and for large groups. This month, we made it easier to manage large classes. Specifically, we’ve updated the project management portal so that you can remove all students in bulk from a project once the semester is over. We also made it so you can share a ”Request to join” link for your project that you can send to students, rather than having to copy and paste their email addresses, which gets tricky during drop/add periods.
Trovi roles. Many of you are familiar with Trovi, Chameleon’s repository of experimental artifacts represented as Jupyter notebooks. This month, we added roles to Trovi artifacts. Before, only the artifact creator could update the artifact contents and metadata. Now, you can assign other users as “Collaborator” and “Administrator”, so that they can update the artifact as well. We hope this makes it easier for groups to collaborate and keep artifacts up to date.
Improved JupyterLab experience. One of the main interfaces to the testbed is Jupyter, an interactive, programmable, repeatable environment. Jupyter is integrated with Trovi: allowing you to easily import artifacts, or to export your jupyter files as an artifact. Some users have experienced bugs with how the integration worked, and the green folder icons, indicating the folder stored artifact files, would stop being linked if folders were moved or renamed. The integration is now more robust, and should prevent future errors. If you’ve encountered errors in the past, there is now a “Link” button to fix legacy issues. Some users have requested the ability to install JupyterLab extensions via the sidebar, which can enable extra functionality such as a code formatter or LaTeX typesetting in your notebook. This now should work. Additionally, we recognize many users want to interact with git in their notebooks, which has been possible via the command line. To make things easier, we now include Jupyter’s git extension by default, so that you can use git via the GUI.
CHI-in-a-box updates. The packaging of Chameleon Infrastructure, known as CHI-in-a-Box, has a number of incremental improvements and bugfixes this month as well. We’ve rebased onto the latest Xena version of OpenStack to pull in a large number of upstream fixes, in particular fixing an edge case with the oslo.log library that could cause multiple services to deadlock. The per-site image distribution tool has been updated, by removing the default image pulls from the “post-deploy” step to avoid conflicts. For deploying new CHI@Edge sites, we’ve fixed a dependency between Zun and Kubernetes during initial setup, the deploy will now warn instead of fail if a kubeconfig file is not present in your site-config. Finally, using letsencrypt with your site is a little bit easier, we no longer fail if a `haproxy.pem` file is missing from your site config if letsencrypt is enabled.
Appliance inquiry. On Chameleon, we have an appliance catalog of images, which are base OS images to help you get started on experiments. Right now, we have images for Ubuntu 20 + 22, CentOS 7, and CentOS Steam 8 (and CUDA variants). We are working to overhaul the way we build these images. While we do so, if there is some other operating system that you think we should support, please send us a message on the help desk for consideration.
Happy educating and experimenting!