Thursday, July 31, 2014

"Lining up the Architecture" - Liferay 6.2 + Glassfish 4 Bundle, AWS, and Monitoring Services. Side-notes: Open Education Resources Online

Shortly ago, this year, I began sketching up some concepts for what would have to be a business organization -- assuming it could not be registered as any sort of non-profit producer-owned cooperative in computing technology -- and as such would be a sole proprietorship, in its ownership model, lacking so much as a corporate board for the matter. I will not presently denote that I would like to name that business, though I would offer a hint, at least to myself, at any later time: It would be a name derived after a feature of the geology of the valley around the home town where I grew up, such that my grandfather had once explained to me. Beneath the soil of that valley -- at least, where was the house that I grew up in -- the ground is not so permeable as the loose topsoil, there. Moreover, I hope it would be a business name with a sense of character to it, denoting of "Life beyond the rose garden," but without any sort of a sense of pessimism. Once if I'll be able to register a domain name for that business, in some small portion of my student budget, then I would be willing to denote the name of that business, online. Presently, I'm more concerned about the architecture for the information system that would represent the core of that business' web presence, online.

In short summary: I plan on installing Glassfish 4 into a Tomcat 7 instance created with a Linux AMI hosted in an Amazon Web Services Elastic Compute Cloud (EC2) instance. Then, I would install Liferay 6.2 into the Glassfish 4 applciation server. I've chosen Glassfish 4 for this model, primarily due to Glassfish' integration with CORBA -- a feature that I know would not be unavailable with alternate application servers, such as each of JBoss AS7 and Wildfly (ie. JBoss AS post-AS7) however I'm of an impression that CORBA might be more well supported in Glassfish. Also, I'm simply happier with the thought of installing Glassfish, and Liferay into Glassfish.

As well as that I would be installing those resources into my Linux AMI, I've downloaded the Liferay 6.2 + Glassfish 4 bundle, and will be installing that onto a Microsoft Windows 8.1 partition. I could then use the "Demo portal" installed with the bundle, for purpose of generic sandbox work, or could uninstall the "Demo portal" and start from scratch.

Basically, I plan on creating one portal, to begin with, in the Liferay-on-AWS installation. In the portal's public pages, it would represent a sort of hub. In its private pages, it would represent a sort of MIS primarily for administration of the public portion of the portal/hub. The portal/hub would host some content for integration with the Amazon Associates program, as well as some public project information for public projects that I would be managing with the same hub. I plan on integrating Github with the portal -- planning on developing portlets, over time, to accomodate.

Between the portal as installed on my laptop, and the portal as installed on AWS, I plan on enabling the Liferay Staging feature, for developing content locally then publishing it to the hub, via Liferay itself. Certainly, that would not be the only way to publish content to the portal, but it would be an option such as I would like to understand, as my being a novice portal developer.

Today, I've found a couple of resources via Twitter, such as I would like to make note of, for future reference -- namely, the companies, each, Datadog and Coperegg. I'm afraid I don't have any sort of a populist view to present, about the resources and services provided by those companies. Simply, they both may be of some relevance with regards to service monitoring. I'm considering Coperegg primarily for their Amazon Cloud Instance Monitoring service. Datadlog, I should like to make reference to at some later time, I think, if perhaps it could be useful for a "Build server' for EDA projects and simple software projects

Coperegg has published, via their twitter account, a nice article with regards to server monitoring[1]. The article presents a succinct overview of how how monitoring and measurement processes may be implemented, on a server. I consider that it's a meaningful article, and as such, it has left a positive impression to me, about Coperegg. In a broad sense, my having reviewed some of Coperegg's web-based materials, I would like to consider using Coperegg in lieu of trying to piece together a Nagios + JMX hack of my own, for monitoring the portal as would be installed at AWS.

Datadog's monitoring service, though in some ways perhaps similar to the service provided by Coperegg, is such that I would wish to consider primarily with regards to developing a build monitoring service, for one-time software builds (Verilog or VHDL, Java or Common Lisp, or otherwise) for monitoring such processes on a build server, in such that would comprise a software build/distribution workflow, within a normal software development process. I consider that I can understand at least "that much" of what the architecture could be of such a thing. Of course, it would be more tedious to address that architecture into relevant details. If Datadog may be able to alleviate some of that tedium, I would certainly consider outsourcing some of the hypothetical build process to Datadog.

The matter of my endeavoring to install an enterprise grade web portal server, as my being an individual developer, it's such that I would not wish to make any sort of an ostentatious presentation about -- it being such that I'm really not so much looking forward to, candidly, though I think it would be more appropriate than any alternate approaches for my to develop to web content, online. The Liferay portal framework provides its own user model, for instance, and would already support integration with the Glassfish application server.

Of course, my being a student of DeVry University Online (DVUO), and though this matter of installing a portal sever is rather far beside the progress of my current course of study at the same, but I think I could customize the "Portal on laptop" such that it could be applied, privately, in a manner supportive of my own continuing studies as a student of DVUO -- such as for providing a central resource for my to use in managing the weekly lab materials, homework assignments, and as to digitize my paper notes from the textbooks. In that regard, I think I should define an individual portal, in at least the "Liferay on laptop" installation, a portal distinctly for purpose of developing a bit of a knowledge management technique, with regards to my own student materials. Though I am by no means a qualified expert in the topics we're studying in any single semester, but if I may be able to understand the material well enough to observe that the courses, in each, describes a sort of controlled vocabulary for instance, then I may be able to apply that concept -- in regards to my being a student of the private institution, DVUO, moreover in my studying materials published publicly by other academic institutions -- that it might at least provide a nicer way to manage the folders containing my weekly responses to the weekly course assignments. Thus far, I've been using a bit of an ad hoc mix of Dropbox and the local hard drive on my laptop, for that purpose, as my being a student of DVUO. Sometimes, also, I copy and revise my own discussion forum responses, for those that I would like to make any particular attention to, later, then publishing the revised item here at my DSP42 'blog.

I don't know if I should like to push that particular portal to the broader web. It would be kind of a sandbox resource, anyway.

I hope that I may sometime be able to develop some further ideas with regards to the open education resources published by each of OpenStax CNX, Coursera, uDacity and the OER Commons. Most notably, I think, the Coursera self-paced course, Calclus 1 I think promises to be an edifying course, and especially of some help to me, as my being a student of the electronics and computing program at DVUO. Certainly, electrical circuit analysis -- at least, insomuch of analog AC and DC circuit features, such as of electrical capacitance, inductance in AC circuits, and electrical restistance -- it would involve "a lot of math," in any practice. Though so much of that might be given something of a shortcut, with some careful application of Electronic Design Automation (EDA) tools, however I would like to be certain that I would understand the concepts entailed of the principles of the matter, before I would endeavor to apply those concepts in any application of those principles. So, I may have to study outside of class for Calculus 1, inasmuch as working outside of class in developing the portal structures, as denoted -- and this, on my shoestring student budget -- however, perhaps it may be as well "Worth it," in the proverbial "Long run."

At least, there's some community at Twitter. Though there's never an opportunity to say a lot in 140 characters of microblog text, however I think I'm learning a gist of it, of how to communicate @Twitter, at least to my best ability as such.

Article's Bibliography:

[1] Mueller, Ernest. Know your options for infrastructure monitoring. 2014. InfoWorld.