Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add kdump support for COS #1548

Closed
wants to merge 3 commits into from
Closed

Conversation

xueweiz
Copy link
Contributor

@xueweiz xueweiz commented Jan 30, 2019


Please place an 'X' inside each '[]' to confirm you adhere to our Contributor Guidelines

  • Is the commit message split over multiple lines and hard-wrapped at 72 characters?
  • Is the subject and message clear and concise?
  • Does the subject start with [plugin_name] if submitting a plugin patch or a [section_name] if part of the core sosreport code?
  • Does the commit contain a Signed-off-by: First Lastname [email protected]?

Xuewei Zhang added 3 commits September 18, 2018 14:42
Add a basic policy class for Container-Optimized OS (COS).

A new CosPlugin tagging class is introduced for COS-specific plugin
cases.

Signed-off-by: Xuewei Zhang <[email protected]>
9 exisiting plugins already works on Container-Optimized OS. Marking it
to reflect that.

Signed-off-by: Xuewei Zhang <[email protected]>
Signed-off-by: Xuewei Zhang <[email protected]>
@xueweiz
Copy link
Contributor Author

xueweiz commented Jan 30, 2019

This pull request is to add kdump support in COS, which is the third commit in this series.
The first two is necessary as the context, and are being reviewed at #1419

@xueweiz xueweiz changed the title Cos 3.6 kdump Add kdump support for COS Jan 30, 2019
@xueweiz
Copy link
Contributor Author

xueweiz commented Jan 30, 2019

Sorry, I submitted the code against the wrong branch. Discarding this pull request. Will create a new one.

@xueweiz xueweiz closed this Jan 30, 2019
@xueweiz xueweiz deleted the cos-3.6-kdump branch January 30, 2019 00:25
Copy link
Member

@bmr-cymru bmr-cymru left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You're going to want a PackageManager for this policy, or few plugins will be triggered to execute.

@xueweiz
Copy link
Contributor Author

xueweiz commented Jan 30, 2019

Hi Bryan, the problem is that COS is a locked-down OS, without any PackageManager. It is similar to CoreOS in this way. You can see the documentation at [1]. Basically since COS should only be used to run docker/k8s containers, it simply don't have a package manager.

I think for now, only triggering the "whitelisted" plugins on COS is good enough for now. Later I can do a through scan, and get a more complete list of plugins that works on COS. Thanks!

[1] https://cloud.google.com/container-optimized-os/docs/concepts/features-and-benefits#features_and_benefits

@bmr-cymru
Copy link
Member

Hi Bryan,

It's Bryn - no 'a'.

COS is a locked-down OS, without any PackageManager

It will still have a set of installed packages - much like e.g. Atomic with RPMOSTree (albeit by a different mechanism).

The policy should emulate this - if necessary by providing or obtaining a static list of all packages and their versions, and exposing this through the sos.policy.PackageManager abstraction. You don't need to shell out to an actual package manager command for this, you just need to provide the data. It's hard for me to believe that an operating system provides no way to identify the software and its versions that are included - it'd be a nightmare to audit for a start.

I think for now, only triggering the "whitelisted" plugins on COS is good enough for now. Later I can do a through scan, and get a more complete list of plugins that works on COS. Thanks!

It's more a matter of having a policy and plugin set that fits in with the overall sos scheme - the current COS policy is far too minimal and will not deliver the experience that our users expect. It needs to improve.

@bmr-cymru
Copy link
Member

ChromiumOS is the development version of ChromeOS, so it is based on Gentoo, which uses the Portage package manager: there should be files available in the read-only root file system that will provide the information that sos needs.

Note that even after doing this, working on this OS may be challenging since most commands and higher level tools are containerised. You can look at the work that we did for Atomic to get an idea of what is involved but it is non-trivial to support this kind of system today.

@bmr-cymru bmr-cymru added this to the 3.7 milestone Mar 26, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants