📜 ⬆️ ⬇️

Interview with Gabriel Hurley, OpenStack Horizon Project

We present the seventh of a series of interviews with the technical leaders of the OpenStack project in the Mirantis blog. Our goal is to educate the wider technical community and help people understand how they can contribute to and benefit from the OpenStack project. Naturally, below is the point of view of the interviewee, not of Mirantis.

Below is an interview with Gabriel Hurley, technical director of the OpenStack Horizon project .

Mirantis: Tell us about yourself.
')
Gabriel Hurley: I am a senior developer at Nebula Inc. I, in the free sense of the word, am “front-end”; I mainly work in Python and JavaScript, covering the interaction on both the client and server side. I have experience in web development, and my main area of ​​interest is user interaction with the system.

Q: How did you get started with the OpenStack project? Why do you take part in it?

Answer: I first learned about the OpenStack project while working at NASA, and my knowledge was instantly useful in the emerging at the time project of the control panel (which later became known as Horizon). Personally, I am a big supporter of open source development, so I organically joined the project. For six months, I changed the scope of my work and worked full-time on OpenStack, helping to build the future of an incredibly important undertaking.
Now, almost two years later, I fix the code on almost every project and I’m a key developer on Horizon and Keystone projects.

Q: What are your areas of responsibility as a technical project manager for Horizon?

Answer: This work has three sides: the technical project manager sets the direction and high-level vision of the project, the technical project manager manages the community, both internal and external, and interacts with it. The technical project manager acts as a project manager, setting priorities and work schedules, as well as ensuring that everyone’s work is on the same track. Ideally, the technical project manager also writes and checks the code most actively, but at least he should have a good understanding of the code base of his project. In the case of the technical manager of the Horizon project, the main workload is to work with several projects to make sure that not only the set of features of each project is well represented in the control panel, but that the work that the Horizon project team performs is not compromised by incompatible or incomplete APIs. interfaces. There is a lot of work ahead for the OpenStack project to be coherent and intelligible, and I'm moving towards this goal.

Q: Can you explain the role of Horizon in the OpenStack platform? Why is Horizon so important?

Answer: I begin each Horizon presentation with an answer to this question, and there are basic elements of the answer:
1. Horizon is essential for community growth and success. The acceptance and understanding of individual services is greatly enhanced by presenting them in the control panel.
2. Horizon is the fastest way for a newcomer to OpenStack to understand the platform. He is intuitive, and people easily understand him.
3. Horizon is a key tool driving adoption. In order for the OpenStack platform to be successful in the corporate market, it must be simple for end users, administrators and managers. And the path to this is a rich control panel.
4. Horizon acts as the “face of OpenStack”. Try to record a video demonstration of the command line interface and see how it will entice people.
Horizon is a common denominator that allows everyone to participate. Anyone can start using Horizon. If a company builds a business based on OpenStack, we offer to customize the interface according to customer requests, but the community generally needs Horizon.

Q: What is unique and what is destructive in Horizon?

Answer: Our goal in the Horizon project is less disconnection, more gain. We use a democratic approach in the OpenStack cloud services, which allows all components to exist on a par and support maximum interaction. We want to build a user experience that is both functional and attractive, but there is no end to this work. And we have planned something interesting for the release of Havana.

Question: What has the Horizon community achieved at the moment?

Answer: I think the control panel speaks for itself. We carry out the mission of supporting all major OpenStack projects. We worked without rest to ensure seamless integration of services that are not always compatible. We participate in the wider OpenStack community to improve all projects and each API interface. We were the first to implement translation into several languages ​​in OpenStack and continue efforts in this direction.
We are the only project that can boast of full version compatibility for three consecutive releases. With each cycle, we developed our community. I think we work quite well.

Q: What features will Horizon provide in the release of OpenStack Havana?

Answer: One of the significant advances will be integration with the two newest OpenStack projects: Heat and Ceilometer. In addition, we have full support for the Keystone v3 API interface, some interesting new data visualization features, dynamic integration with other projects in real time, as well as a whole line of features provided by new add-ons for Nova, Cinder, etc. There are also many things that I will not list here. We are also working on fixing nearly 200 errors by the end of the cycle.

Q: What would you like people to know about the project?

Answer: The main thing is both an advantage and a source of regular confusion - that the entire control panel is periodically reconfigured based on the services that are available in the OpenStack cloud. People often ask how to turn on Quantum or Swift, what settings they need. But they are looking for the wrong place. All they need to do is add them to the Keystone services directory, and Horizon will do the rest. Most importantly, it allows Horizon to work with multiple deployments, in several “regions”, and so on. without any changes to the settings. If you have properly created a cloud, you will have a working control panel.

Q: What are the baseline conditions for running Horizon?

Answer: Now Nova and Keystone are the only services that are required to run the OpenStack control panel. To start the server, you need Python and a relatively standard set of modules, which can be installed either via pip or using your chosen distribution. The default configuration does not require a database or persistence level. By default, it includes an embedded web server for testing, but for commercial environments it is best to place it behind a “real” web server, such as Apache or Nginx.

Q: Who would you like to see as participants in the development of Horizon?

Answer: I would like to see more people who are not indifferent to the ideology of the Horizon. People who love CSS, responsive design and creating a good user experience. Many talented developers are working on our project and the idea to involve the design community is emerging, but now Horizon is still far from a stylish and recognizable interface. You need something that says “This is part of OpenStack”.

Q: What functionality needs to be improved or tested?

Answer: One of the aspects that we consider in the Havana loop is the ability for people to simply “modify” the OpenStack Dashboard control panel. Horizon is essentially two separate components: the actual horizon module, which is the infrastructure for building control panels, and the openstack_dashboard module, which contains all the implementations specific to OpenStack. We spent several cycles trying to build infrastructure capabilities and make it as extensible and useful as possible for people who write code for new services and capabilities. Now we have reached a turning point in which it is more interesting for people to take what we have already done for Nova, Glance, etc. and refine it. They want to reconfigure the system for their company. They do not want to start from scratch or copy huge chunks of code. Therefore, our task now is to support people in mixing what we have.

Question: How can people start investing?

Answer: If you have technical knowledge, download devstack and start working with the code. If you are an expert in appearance, integrate into the community OpenStack UX. If you have something to say about the project, visit Launchpad or join the newsletter and let us know. Feedback is very important to us, and even better corrections, and we always strive for perfection.

Question: Thank you, Gabrielle!

Answer please.

Source: https://habr.com/ru/post/194722/


All Articles