[Osaka/Yokohama/Tokushima] Looking for infrastructure/server side engineers!

[Osaka/Yokohama/Tokushima] Looking for infrastructure/server side engineers!

[Deployed by over 500 companies] AWS construction, operation, maintenance, and monitoring services

[Deployed by over 500 companies] AWS construction, operation, maintenance, and monitoring services

[Successor to CentOS] AlmaLinux OS server construction/migration service

[Successor to CentOS] AlmaLinux OS server construction/migration service

[For WordPress only] Cloud server “Web Speed”

[For WordPress only] Cloud server “Web Speed”

[Cheap] Website security automatic diagnosis “Quick Scanner”

[Cheap] Website security automatic diagnosis “Quick Scanner”

[Reservation system development] EDISONE customization development service

[Reservation system development] EDISONE customization development service

[Registration of 100 URLs is 0 yen] Website monitoring service “Appmill”

[Registration of 100 URLs is 0 yen] Website monitoring service “Appmill”

[Compatible with over 200 countries] Global eSIM “Beyond SIM”

[Compatible with over 200 countries] Global eSIM “Beyond SIM”

[If you are traveling, business trip, or stationed in China] Chinese SIM service “Choco SIM”

[If you are traveling, business trip, or stationed in China] Chinese SIM service “Choco SIM”

[Global exclusive service] Beyond's MSP in North America and China

[Global exclusive service] Beyond's MSP in North America and China

[YouTube] Beyond official channel “Biyomaru Channel”

[YouTube] Beyond official channel “Biyomaru Channel”

I passed LPIC-305

Nice to meet you, I'm Shirasaka, a muscle training engineer in the System Solutions Department.

Summer has officially started and it's the season for muscle training, so I'm excited.

By the way, do you all know about LPIC?

It is quite famous among IT qualifications, and I think many engineers have taken the exam.

Last year, Level 3 was revised, LPIC304 was abolished, and it was divided into 305 (Virtualization and Containerization) and 306 (High Availability and Storage Clusters).

So, I took the exam last month because the content of 305 was related to containers, which I like, so I would like to share with you what I studied to pass and my impressions of the exam!

1. Overview of LPIC-305

A rough outline of the exam is that the exam will mainly cover general virtualization technologies such as KVM, container technologies such as Docker, and provisioning tools such as Packer.

Questions included how KVM and Xen achieve virtualization, the concepts behind container technology such as namespaces, and the actual behavior of Docker and Kubernetes.

*Please refer to the official website below for a detailed overview.

https://www.lpi.org/ja/exam-305-objectives

Also, since this is a newly established exam in 2022, unlike the previous LPIC-304, ping-t and the so-called black book have not been published (as of July 2023).

Therefore, when studying for an exam, you need to memorize important words and phrases in a notebook or by actually using your hands to check the behavior.

I think it would be safer to set aside study time for at least a month or more.

2. What I studied for the exam

I mainly studied four things, so I will explain each one.

・Solve the LPIC-304 problem set repeatedly with ping-t

・Studying the basic concepts of containers

・Learn Docker, LXD, and Kubernetes by hand

・Studying Packer etc.

Solve LPIC-304 questions repeatedly with ping-t

LPIC-305 and 304 overlapped in the scope of virtualization technology in general, so I focused on studying just that part using ping-t, so that I could consistently score 100%.

In particular, at first I had no idea what Xen and QEMU were, so I started reading the illustrations in the ping-t explanation every time I solved a problem.

In addition to the above, I memorized specific actions such as hardware emulation with QEMU and CPU virtualization support with KVM until I could remember them.

As a result, I was able to use it as a method of elimination in the actual exam, such as omitting words that were unrelated to the question content.

Studying the basic concepts of containers

Since there are no test preparation books or dedicated websites, I first compiled important words and phrases listed on the official website, and then searched Docker books and the Internet to dig deeper.

In particular, the most basic functions for realizing container technology, such as "namespace", "cgroups", "capability", and "seccomp", have been studied in detail in multiple books.

After actually building a Docker environment, I actually created a namespace using the nsenter and unshare commands.

In addition to the above, I studied in detail the relationship between runc and containerd, and the behavior when a Kubernetes pod crashes.

Learn Docker, LXD, and Kubernetes by hand

Since this was a heavy test, I built a Docker and LXD environment locally on Vagrant + VirtualBox, and repeatedly created and deleted containers.

In the exam, questions include the contents of the Dockerfile and the command to mount a local directory and start a container.

I made it possible to execute the run command under various assumptions, and also memorize relatively commonly used options such as --volumes-from.

I also made sure to memorize the default path to the daemon.json file, where you can specify various Docker options.

▼ Specify --volumes-from option

 docker run --volumes-from [Container name] -d -p 8080:80 centos7:latest 

Next, although it is less familiar than Docker, I learned about the LXD container, which is a containerized virtual machine as it is, and learned the command to pull the OS image and set port forwarding so that I can view the pages inside the container from a browser. I studied a wide variety of things.

▼ Port forward settings

lxc config device add centos http proxy listen=tcp:127.0.0.1:50005 connect=tcp:[Container IP]:80 bind=host

Additionally, since Kubernetes can be a bit complicated to build your own environment, we used Docker Desktop to practice commands and check behavior.

Specifically, we created a pod containing multiple containers, and examined the behavior when one of the containers is deleted, and how to combine multiple pods to create a WordPress page.

Studying Packer et al.

In addition to the above, I also learned "Packer", "cloud-init", and "Docker Swarm" by hands-on.

For example, cloud-init was used in conjunction with an LXD container, and the LXD container was started by specifying the cloud-init file in the config file.

▼ Specify the cloud-init file in the config file and start the LXD container

lxc config set ubuntu-container user.user-data - < cloud-init-config.yml

 

Also, Docker Swarm is not as complicated to build as Kubernetes, so you can build the environment yourself, verify the command that pulls the Docker image, and when a worker node goes down, a container is automatically created on another worker node. I checked to see if it would work.

However, the weight of the test here is not that high, so I only touched it lightly.

The above is a summary of what I learned, but in addition to this, I tried to study comprehensively, such as changing the capabilities of Docker containers to limit the services that can be executed.

The learning period will be approximately one and a half months.

3. Take the test

Below are my impressions after taking the test.

・The scope of virtualization technology can be understood by repeating the past questions of LPIC-304.

- Learn the basic concepts of containers and Docker by using your hands to learn various options.

・If the test weight is low, there is no need to dig that deep.

Among the questions listed above, I feel like about one-third of the questions (experimental) came up regarding Docker, so I think if you study with the spirit of fully understanding it, you won't come across any words you don't understand.

Also, there will be one or two questions for each of the less important items on the exam, so make sure to memorize basic commands such as the build command.

4.Summary

This exam was a good opportunity to learn the basic concepts of virtualization and containers.

Also, since I was able to memorize things by actually using my hands, I was able to learn new knowledge while having fun instead of having to struggle with studying itself.

There is not much information about LPIC-305, so you will have to study it by yourself, so I hope this article will be of some help.

If you found this article helpful , please give it a like!
26
Loading...
26 votes, average: 1.00 / 126
4,098
X facebook Hatena Bookmark pocket
[2025.6.30 Amazon Linux 2 support ended] Amazon Linux server migration solution

[2025.6.30 Amazon Linux 2 support ended] Amazon Linux server migration solution

The person who wrote this article

About the author

Shirasaka

I'm a muscle hula engineer who works in the System Solutions Department.My
favorite exercise as a home trainer is the deadlift.My
recent fad is eating chikuwa to replenish protein.