Seamless SSH Container Access with CHI@Edge

Simplifying Your Development Process

As we mentioned in our previous blog post, CHI@Edge is now in production with all the improvements and insights that we learned from early users during its preview. To kick off this new era of Chameleon, we will publish a series of Tips&Tricks blogs on CHI@Edge features (some to be released soon) in the coming months. Stay tuned to our blog!

 

The primary way to schedule workloads on CHI@Edge devices is through containers. The Chameleon team chose a container-focused architecture due to its simplicity and versatility. Users can build containers declaratively through Dockerfiles and run them on edge devices in a reproducible manner. To achieve our design, we built CHI@Edge on a Kubernetes backend that is largely stateless. However, we’ve observed through years of preview that experiment setups are almost never achieved without some back-and-forth tinkering; researchers need the ability to modify running containers on CHI@Edge in a simple, familiar, and straightforward manner.

Currently, users can access containers through a web console in the CHI@Edge dashboard. However, it can suffer from visual issues, such as a character-on-line limit, and is sometimes slow to use, which does not contribute much to a smooth user experience. To improve container access, we are releasing a new method that relies on a familiar and trusted tool: SSH. Now, in addition to using the web console, you can SSH into running containers on CHI@Edge, making your development and experimentation smoother, faster, and more customizable.

Simplifying the Development Process

So, how do we enable SSH access? Most containers are very minimal. They don’t come with common utilities like an SSH server or other niceties that would allow remote login. Containers are intended to be run and thrown away, not modified or logged into. However, lots of common development tools and workflows can use SSH to treat a remote server as if it were a local one, making for a nice development experience.

To help you tap the potential of these workflows on CHI@Edge - and treat your container more like it was a real server - we have a new tutorial designed to walk you through the process of creating a base container that is SSH-ready. This tutorial extends our “hello world” example to install SSH into a container, and then SSH to it like it was a “real” server. User workloads can then be built on top of this base container.

How to Get Started

Follow these simple steps below to learn more about how to configure your container to enable SSH and use the protocol for container access.

  1. Log in to CHI@Edge: Access your edge devices through the CHI@Edge dashboard on the Chameleon portal.
  2. Follow the Tutorial: Use our Jupyter tutorial to guide yourself through the steps to create an SSH-ready container. You can launch the artifact like any other Trovi artifact.
  3. Start Developing: Once you have access, you can begin troubleshooting, configuring, monitoring, or updating your container as needed.

Conclusion

At CHI@Edge, we are committed to enhancing your development experience. Our new tool for SSHing into running containers is designed to provide you with the familiar access you need, when you need it, without the complexity. For more detailed instructions, check out our comprehensive Jupyter tutorial. If you have any questions or need further assistance, don’t hesitate to reach out to our support team.

It bears noting that the web console will still be available for use and may remain the preferred access point for your projects, depending on your experiment needs. Be aware that SSH access can consume more resources than using the web console. Additionally, SSH access will work only with containers that you have configured to enable SSH, while you can use the web console to access any container regardless of configuration. The console is still a great option for people who just need to try something quickly in a container.

Happy researching!

CHI@Edge: Transitioning from Successful Preview to Full Production

Unlock the power of edge computing with CHI@Edge - In production now!

In 2021, we introduced CHI@Edge, a cutting-edge testbed tailored to the dynamic needs of edge computing and IoT research. Our initial offerings included a robust selection of devices like Raspberry Pi 4s, Nvidia Jetson Nanos, and Jetson Xaviers, tailored for high-performance yet low-power edge computing tasks. Today, we're thrilled to announce the transition of CHI@Edge from a widely embraced preview to its official full production phase.

CHI@Edge Community Workshop Report

Interested in using Chameleon for edge computing? We've released our report on the very first CHI@Edge community workshop that happened in September! Learn about some of our early users' research and our top takeaways from the first few months of operating an edge testbed. 


Add a comment

No comments