curveadm
curveadm copied to clipboard
[Feature] make system `core_pattern` more smarter for container
core 文件是排查问题的重要依据来源,目前我们可以在配置文件中配置 core_dir 将容器内存储 core 文件的目录映射到宿主机上。但是目前存在的问题是:
- 由于系统和容器只能共享一个
core_pattern一个配置,如果系统所设置的 core_pattern 在容器内没有对应的目录,会导致无法生成 core 文件 - 因此我们必须将系统的
core_pattern设置为/core/xxx,并且在容器内提前创建了 /core 目录
由于以上的限制,导致我们的 core 设置生成变得有些麻烦,常常因为用户没有设置 core_pattern 为 /core 的前缀导致 core 生成失败。
我们希望你能帮助我们改进这个机制,用户只需要配置 core_dir 配置,curveadm 帮助自动适配系统目前的 core_pattern 以生成 core 文件。这也许有些挑战,但是这对我们帮助很大 :)
Registration procedure
Step 1. Add a comment when you sign up.The purpose of comments is for us to understand you and determine whether you have the basic ability to complete this issue.
- If you are a student, please introduce your school, major, programming language, technical fields of interest, what you are good at, and why you chose this issue.
- If you are already working, please introduce your company, career, work content, technical fields of interest, and why you chose this issue.
Step 2. Use WeChat to add the Curve community assistant "Curve" as a WeChat friend, tell your GitHub ID, and send the Issue link of your choice. The assistant will invite you to communicate with the mentor by WeChat.
Step 3. In order to better complete each development task, the mentor will select the developer who best matches the issue based on everyone's comment on GitHub and communication status by WeChat. If you are not selected, please select another issue.
Tips
- Before developing, please read the dev guideline( https://ask.opencurve.io/t/topic/201) carefully and communicate with your mentor.
- Please submit a draft PR before 11.29, and the mentor will review it within 2-5 working days and may guide you to modify the PR based on the actual situation.
- If you successfully merge into PR before 12.27 and you will receive gifts carefully prepared by the Curve community.
-
This issue has been chosen for community developer activities. Welcome to feel free to try it. After the PR is merged, you will receive a gift package and a certificate as a community contributor.
-
Developer Activities Registration Steps please ref https://github.com/opencurve/curve/issues/2334#issuecomment-1504723771
请问为什么 “系统和容器只能共享一个 core_pattern 一个配置”呢
请问为什么 “系统和容器只能共享一个 core_pattern 一个配置”呢
系统和容器只能共享一个 core_pattern,这是因为 core_pattern 是一个内核参数,它决定了当进程崩溃时,系统如何生成和存储 core 文件。core_pattern 是一个全局的设置,它不能被每个容器单独配置,而是由宿主机统一管理。如果容器中的进程崩溃,它会使用宿主机的 core_pattern 来生成 core 文件,并且将其存储在宿主机的文件系统中
Hello, I am a student from Hunan University. My major is Software Engineering. I am familiar with C++ and Golang, and I am very interested in cloud-native and storage systems. My technical strengths include C++ server development and kernel virtualization techniques. I chose this issue because I have some understanding of curveadm and want to gain a deeper understanding of curveadm through the process of completing the issue. I am confident in completing this topic, and I have previously submitted two PRs to the community:
Hello, I am a student from Hunan University. My major is Software Engineering. I am familiar with C++ and Golang, and I am very interested in cloud-native and storage systems. My technical strengths include C++ server development and kernel virtualization techniques. I chose this issue because I have some understanding of curveadm and want to gain a deeper understanding of curveadm through the process of completing the issue. I am confident in completing this topic, and I have previously submitted two PRs to the community:
welcome!