domingo, 10 de marzo de 2019
DevOps Part 2
Its been so long since I had my Operative Systems class, it was one of those classes in which the lab instructor was not really sure what was the lecture professor asking him to work on. Supposedly we were to work on mutex locks, system calls, and other things that fall more into the theoretical spectrum of the Operative Systems class. But instead the instructor wt this panted to give us a dive into the life of being a Linux administrator. And right now I am very happy that he did so.
So well, the first part of this whole thing was to install some Linux distribution. Even though during the lab mentioned previously I worked over CentOS, this time I decided to pick on Ubuntu because I had the feeling that it would make this whole thing easier for me, For those struggling to install and configure Ubuntu (which is quite simple in my opinion) you can always use this handy site, it contains pre-built images of the most popular operative systems for Oracle's Virtualbox. I was a bit short on time for installing Ubuntu, aditionally I consider that I have fair amount of knowledge on installing operative systems on a virtual machine since I had to go through the nightmare of installing Gentoo during the same class.
First of all I started by installing Java and Git for my virtual machine. Even though both were easily completed with a couple commands on the console for each I had to virtually google everything since I didn't really remember. I believe git was the one that I had slightly more problems with since the first time I installed it I chose my user path for git, and I thought that if I just left it like that, whenever I wanted the cron to push the files into that directory, I would be pushing everything that is in the directory, most of which were files of the OS itself, so I had to redo the Git configuration. As for Java I screwed up slightly in the same page. I didn't remember were did I put the JDK so at the time I was trying to get over with the installation of IntelliJ I had to wast a handful of minutes looking for it. Additionally took some minutes in order to enable the two factor authentication for my Git account.
For my web server I decided to go for Apache. One of the main tasks of my Operative Systems lab which took several sessions, was to install 3 different web servers: Joomla, Moodle and Apache. From these, Apache proved to be way nicer and simpler in its installation and deployment, since it was not necessary to manually configure the files inside of the build, additionally, Apache is widely more used than the other two, so installing it on CentOS proved as easy as I just did on Ubunbtu. The whole thing took to follow the steps given in this website. The only thing I had to look up from other sources for was to set up the port number. But after a couple minutes of research I just found which file I was supposed to rewrite. I wanted to refresh a bit my skills on using an in-console text editior so I decided to do this configuration on /etc/apache2/ports.conf by making use of the vim editor. Finally and honestly I did just a small research and a simple test of my cron file. Even though it is not something that buggers me too much, I didn't have the need to install cron since OSboxes' image came with it installed. I found this video that was really handy in helping me understand the structure of the crontab file, which seemed quite misleading to me in the official documentation . However I still have my doubts since I don't fully understand the git commands in the script (I always deal with VCS by making use of the IDE plugins, not the terminal).Anyway it just worked by writing the file just as it shows in the video with my own files and timing.
I think this assignment is nice and it is helping me to refresh my mind on some of this OS administrator skills.