SlideShare a Scribd company logo
1 of 116
Download to read offline
Volume: 06 | Issue: 02 | Pages: 116 | November 2017
ISSN-2456-4885
`120
a sneak peek
Into All That Happened
What’s New In
Java 9
Wine: A Great Tool To Run
Windows Programs On Linux
Open Source Software That
Partners With MS Windows
Electron: Building Cross-platform
Desktop Apps With Web Technologies
Open Source Productivity Tools
That Run On Windows
WindoWs
Tools for
{ }
ISSN-2456-4885NOVEMBER 2017
ADMIN
22 Using Ansible for Managing
VMware Infrastructure
31 DevOps Series: Provisioning
with Ansible
41 The Current Popularity and the
Future of Docker
50 Analyse Big Data With
Apache Storm
DEVELOPERS
54 Creating a Web Application
Using Azure App Services
57 Electron: Building Cross-
platform Desktop Apps with Web
Technologies
60 Yarn: A Quick, Reliable and Safe
Way to Share Code
64 Developing a Simple Android
Application Using Kotlin
67 Using PhaserJS to Speed Up 2D
Game Development
72 Get Started with Jenkins 2.0:
Pipeline as Code
75 What’s New in Java 9?
88 Deep Learning: Using Algorithms to
Make Machines Think
FOR U & ME
96 Open Source Software That Can
Partner with MS Windows
98 The Story Behind the All-pervasive AI
100 Key Open Source Software That
Can Boost Business Productivity
107 Evolving Careers and Skills
in the IT Industry
OPENGURUS
108 Developing ARM Targets Using
GNU MCU Eclipse
COLUMNS
15 CodeSport
POST SHOW REPORT
82 Post Show Report
Using a Virtual Machine to Run Linux on Windows
Open Source
Productivity Tools that
Run on Windows
08 FossBytes 18 New Products 112 Tips & Tricks
REGULAR FEATURES
26
92
Wine: A Great Tool
for Running Windows
Programs on Linux
46
CONTENTS
4 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
Indian e-commerce startup
Fynd contributes back to the
open source community
Note:Anyobj
ectionablematerial,iffoundonthe
disc, is unintended, and should be
attributedtothecomplexnatureof
Internetdata.
IncasethisDVD
does
notworkproperly,writetousatsupport@efy.inforafreereplacement.
A bootable DVD with a collection of GNU/Linux
software, automatic hardware detection, and support
for many graphics cards, sound cards, SCSI and USB
devices, as well as other peripherals. One of the most
versatile live operating system
November 2017
Knoppix 8.1
CD
Team
e-mail:cdteam@efy.in
Recommende
dSystem
Requirements:P4,1GBRAM,DVD-ROMDrive
Try the latest version of KNOPPIX,
the versatile Linux distro.
•	 KNOPPIX 8.1
DVD OF THE MONTH
20
114
38
44
Rajarshi Bhattacharyya,
country head, SUSE India
“The acceptance of open source among
Indian enterprises has been remarkable”
78
Tony Wasserman, American computer scientist
Jayakumar, country
manager, DigitalOcean
Harsh Shah, co-founder, GoFynd.io
“Software has already become
pervasive in the developed and
the developing worlds”
“DigitalOcean is built on a
foundation of open source”
CONTENTS
EDITOR
RAHUL CHOPRA
EDITORIAL, SUBSCRIPTIONS & ADVERTISING
DELHI (HQ)
D-87/1, Okhla Industrial Area, Phase I, New Delhi 110020
Ph: (011) 26810602, 26810603; Fax: 26817563
E-mail: info@efy.in
MISSING ISSUES
E-mail:support@efy.in
BACK ISSUES
Kits‘n’Spares
NewDelhi110020
Ph:(011)26371661, 26371662
E-mail:info@kitsnspares.com
NEWSSTAND DISTRIBUTION
Ph:011-40596600
E-mail:efycirc@efy.in
ADVERTISEMENTS
MUMBAI
Ph:(022)24950047,24928520
E-mail:efymum@efy.in
BENGALURU
Ph:(080)25260394,25260023
E-mail:efyblr@efy.in
PUNE
Ph:08800295610/09870682995
E-mail:efypune@efy.in
GUJARAT
Ph:(079)61344948
E-mail:efyahd@efy.in
JAPAN
TandemInc.,Ph:81-3-3541-4166
E-mail:japan@efy.in
SINGAPORE
PublicitasSingaporePteLtd
Ph:+65-68362272
E-mail:singapore@efy.in
TAIWAN
J.K.Media,Ph:886-2-87726780ext.10
E-mail:taiwan@efy.in
UNITED STATES
E&TechMedia
Ph:+18605366677
E-mail:usa@efy.in
Printed, published and owned by Ramesh Chopra. Printed atTara
Art Printers Pvt Ltd, A-46,47, Sec-5, Noida, on 28th of the previous
month, and published from D-87/1, Okhla Industrial Area, Phase I, New
Delhi 110020. Copyright © 2017. All articles in this issue, except for
interviews, verbatim quotes, or unless otherwise explicitly mentioned,
will be released under Creative Commons Attribution-NonCommercial
3.0 Unported License a month after the date of publication. Refer to
http://creativecommons.org/licenses/by-nc/3.0/ for a copy of the
licence. Although every effort is made to ensure accuracy, no responsi-
bility whatsoever is taken for any loss due to publishing errors. Articles
that cannot be used are returned to the authors if accompanied by a
self-addressed and sufficiently stamped envelope. But no responsibility
is taken for any loss or delay in returning the material. Disputes, if any,
will be settled in a New Delhi court only.
SUBSCRIPTION RATES
Year Newstand Price You Pay Overseas
(`) (`)
Five 7200 4320 —
Three 4320 3030 —
One 1440 1150 US$ 120
Kindly add ` 50/- for outside Delhi cheques.
Please send payments only in favour of EFY Enterprises Pvt Ltd.
Non-receipt of copies may be reported to support@efy.in—do mention
your subscription number.
6 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
Apple open sources kernel of iOS
and macOS for ARM processors
Apple has open sourced
the kernel code of the
latest macOS X and iOS
updates. The company
always shares the kernels
of macOS and iOS on
GitHub, but it has this time
enabled the experience
for ARM chips.
One of the reasons
why Apple open sources
a portion of macOS and iOS each year is because of its indirect dependence on
the BSD project. There is no way to let developers use the open source codebase
published by Apple to compile their own OS. However, the kernel guides
coders to begin with macOS and iOS kernels.
Notably, the ARM-based source code of Apple’s kernel doesn’t mean much but
gives Apple a way to give back to the open source community. Some open source
experts are predicting that the iPhone maker could be working on a version of
macOS that runs on ARM chips.
Oracle develops Fn to enter serverless computing world
Oracle is all set to step into the nascent space of serverless computing by
developing an all-new open source, cloud-agnostic platform called Fn.
The new open source development can be run either on-premise or in
the cloud and works with Docker containers.
“The Fn project is a container-native Apache 2.0 licensed serverless platform
that you can run anywhere — on any cloud or on-premise,” said Shaun Smith,
product management director at
Oracle, in a blog post.
Oracle’s Fn has a command
line interface that helps developers
build, test and deploy functions
using orchestration tools such
as Kubernetes, Mesosphere and
Docker Swarm. There is a built-
in smart load balancer that routes
traffic directly to functions to
enhance the experience.
You can use Fn with functions
written in Java at the initial stage. But there are also plans to expand the platform by
adding support for Go, Ruby, Python, PHP and Node.js over time.
Along with the other features, the Fn project allows developers to take AWS
Lambda functions and run them platform agnostically. You need to use the lambda-
node-4 runtime to begin with Lambda functions on Fn.
Kotlin 1.2 beta comes with support for Java 9
Kotlin 1.2 beta has arrived. With the new release, developers can build some
interesting modern multi-platform applications. The experimental multi-platform
Compiled by:
Jagmeet SinghFOSSBYTES
Google launches Cloud
Firestore to help developers
store app data easily
To enhance developer engagements
around its Firebase application
development platform, Google
has launched Cloud Firestore.
The latest innovation brings a
fully-managed NoSQL document
database that can store and sync app
data at a global scale.
“We’ve aimed for the simplicity
and ease-of-use that is always top
priority for Firebase, while making
sure that Cloud Firestore can scale
to power even the largest apps,” said
Alex Dufetel, product manager for
Firebase at Google, in a blog post.
Available in beta, Cloud Firestore
is designed to help developers hold
documents and collections on the
cloud with querying support. The
database comes with iOS, Android and
Web SDKs. It also supports offline
data access and enables real-time
data synchronisation. Additionally,
developers can leverage the built-in
automatic, multi-region data replication
feature to get better cloud access.
The client-side SDKs of
Cloud Firestore enable serverless
development and provide offline data
access with local database support
for the Web as well as Android
and iOS platforms. Developers can
pick the Cloud Firestore SDKs for
Java, Go, Python and Node.js.
Google’s Cloud Firestore hasn’t
been developed from scratch, but built
as an upgrade to the existing Firebase
Realtime Database, which offers the
developer community a real-time
database — managed and scaled by
Google. Key limitations such as data
structuring, querying and scaling have
all been addressed in this upgrade.
You can get started with the
public beta of Cloud Firestore
by visiting the database tab in
your Firebase console.
8 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
FOSSBYTES
projects option lets developers reuse code between JVM and JavaScript,
for which the code is first placed in a common module.
In addition to the option to reuse code, Kotlin 1.2 beta produces the code
for both common and platform-specific parts during the compilation of the
project. There is also a way for developers to express dependencies of common
code on platform-specific parts via
expected and actual declarations. If
the declaration specifies an API, you
need to type the alias that refers to
an existing implementation of the
API in an external library.
The standard library of Kotlin 1.2
features a kotlin.math package for
mathematical operations in cross-
platform code. The math package also
offers better precision for math polyfills for JavaScript.
It is worth noting the compatibility with Java 9 module forest split packages
in the new version. This version also removes the deprecated declarations in the
kotlin.reflect package from the kotlin-reflect library.
Kotlin 1.2 also supports an array of literals in annotations and simplifies
coding. The new version uses a more consistent syntax.
Oracle leverages open source to develop enterprise-focused
blockchain technology
Oracle has finally planned to enter the growing blockchain space by launching
its enterprise-centric Oracle BlockChain Cloud Service. The new distributed
ledger cloud platform is based on the open source Hyperledger Fabric project,
which has been hosted by the Linux
Foundation and receives contributions
from a group of companies,
including Oracle.
“Oracle Blockchain Cloud Service
provides enterprise-grade blockchain
capabilities and is able to accelerate
innovation for on-premise ERP, cloud-
based SaaS (Software-as-a-Service)
and PaaS (platform-as-a-service) customers,” said Amit Zavery, senior vice
president, Oracle Cloud Platform.
The new blockchain platform is a part of Oracle Cloud Platform — touted to
deliver enterprise-grade resilience, scalability and security. It also helps enterprise
customers streamline operations and expand their market reach by using open
source developments and maintaining open standards.
Oracle has developed an applications integration toolkit that comes with
integrated applications, sample code, templates and design patterns to help
enterprises rapidly deploy blockchain applications to Oracle SaaS and on-premise
application suites. The platform also works with real-time information-sharing
across existing Oracle ERP Cloud, Oracle SCM Cloud, Netsuite SuiteCloud
Platform or custom blockchain application integration.
There is REST API support to let enterprises invoke blockchain
services directly or with some pre-built integrations from Oracle Cloud.
Oracle has also provided an API management service to enable easy app
development in the cloud or on-premise.
Kubernetes 1.8 is all about
enhancing security
Kubernetes 1.8 is now out with
the prime focus on enhancing its
security. The new version upgrades
the existing networking support
and includes role-based features to
deliver a more secure experience.
First in the list of new features in
Kubernetes 1.8 is role-based access
control (RABC) that lets an admin
define access permissions to various
resources. RABC comes with
permission access for resources like
pods and secrets that can be granted
to one or more users.
The orchestration framework
already included a provision for
networking. But with
the new version,
developers have
been provided
beta support for
filtering outbound traffic as well.
However, the beta package limits
filtering in both directions, and only
supports some destination ports and
peers at the initial stage.
The Google team behind
Kubernetes has upgraded the
automatic TLS certificate rotation
for Kubelet to beta. This helps
to automatically generate unique
certifications for Kubelet when
a current one expires. The latest
version promotes auditing features
from the alpha to the beta stage. This
includes formatting tools for audit
logs and features to control users of
each element of the cluster.
Another feature that has been
promoted from alpha to beta is the
set of workload APIs. This provides
a way to orchestrate applications
based on their overall behaviour.
Workload APIs can also be used to
monitor the production status.
You can find the latest
Kubernetes release on its
official GitHub page.
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 9
FOSSBYTES
Companies like Accenture, Infosys and Intel have partnered with Oracle
to start deploying the newly launched Oracle Blockchain Cloud Service. “Our
collaboration with Oracle is aimed at developing a blockchain cloud service
for enterprises that helps to advance the privacy of blockchain transactions
and improves the interoperability of traditional databases and blockchains,”
said Raejeanne Skillern, vice president of the data centre group and GM,
cloud service provider group, Intel.
F# functional programming debuts on ASP.Net
Core through Giraffe
Micro Web framework Giraffe has brought F# functional-style programming
to ASP.Net Core. The latest development also includes interesting features like
higher-order functions that have been much awaited on ASP.Net Core for years.
Giraffe offers a different technical philosophy that uses F# features
like F# types, higher order functions and partial application of arguments.
ASP.Net developers will benefit a lot by using the framework as it
enables the development of Web API routes in a functional style. F# is
already supported in ASP.Net Core MVC.
Developers need to plug Giraffe into the ASP.Net Core pipeline using
middleware. Microsoft has published a detailed guide to help you use Giraffe
to build a Web service with F# and the .NET Core 2.0 development platform.
You might encounter some bugs since the framework is currently available
in a beta stage. Having said that, the Giraffe team is working to improve the
routing model for the framework.
Giraffe is known for its capabilities to build rich Web applications that are based
on advanced F# features. Notably, the core of Giraffe is built on top of ASP.Net.
Microsoft maintains F# as the open source functional-first language. The
language is designed to address complex computing problems using simple code.
Digitalisation and technological innovation lead to changing role
of CIOs: Gartner
With the swift growth in the technology world, the nature of a chief information
officer’s (CIO) job has changed. A survey by Gartner has revealed that the CIO
role is transitioning from being a delivery executive to a business executive,
moving from controlling cost and engineering processes to driving revenue and
exploiting data.
The survey, dubbed the 2018 Gartner CIO Agenda Survey, conducted with
a record number of 3,160 CIO respondents across all major industries in 98
countries, highlights that 95 per
cent of CIOs expect their jobs
to change due to digitalisation.
Respondents consider that
world class IT delivery
management and digitalisation
are the two biggest
transformations in the CIO role,
followed by assuming increased
and broader responsibilities and
capabilities. “The CIO’s role must grow and develop as digital business spreads,
and disruptive technologies, including intelligent machines and advanced
analytics, reach the masses,” said Andy Rowsell-Jones, vice president and
distinguished analyst at Gartner.
Mozilla pays half a million
dollars to support open
source projects
Mozilla has announced that it has paid
a total of US$ 539,000 for supporting
open source projects. The company
runs the Mozilla Open Source Support
(MOSS) programme to support open
source developments around the globe.
“At Mozilla, we were born out of,
and remain a part of, the open source
and free software movement. Through
the Mozilla Open Source Support
(MOSS) programme, we recognise,
celebrate and support open source
projects that contribute to our work
and to the health of the Internet,” said
Gervase Markham, policy engineer,
Mozilla Corporation, in a blog post.
Amongst other major open source
projects, Mozilla awarded the biggest
amount of
US$ 194,000
to Ushahidi,
which is an
open source
software
platform for
crowdsourcing,
monitoring, visualising and responding
to reports from people suffering during
times of political turmoil and subject
to governmental or vigilante abuse.
The Mountain View, California based
company has also supported projects
like WebAssembly backer Webpack,
email security platform RiseUp,
HTML5 game engine Phaser and
Apache module Mod_md.
In August this year, Mozilla
launched its ‘Global Mission Partners:
India’ initiative, which allocated Rs 10
million for Indian open source projects
that promoted Mozilla’s mission. The
company also ran several audits on
codebases of open source developments
such as expat (an XML parser) and
GNU libmicrohttpd (an embedded
HTTP server) through the Secure Open
Source arm of MOSS.
10 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
FOSSBYTES
“While delivery is still a part of the job, much greater emphasis is being placed on
attaining a far broader set of business objectives,” Rowsell-Jones added.
The survey shows that a majority of CIO respondents believe that
technology trends such as cyber security and artificial intelligence are set to
significantly change their jobs in the near future. Moreover, around 35 per cent
of the total respondents said that they have already invested and deployed some
aspect of digital security, while 36 per cent are planning to implement some
form of digital security.
Despite the positivity towards the change in their role, Rowsell-Jones believes
that organisational culture could be a roadblock to success.
“CIOs need to identify the cultural behaviours that currently exist and what the
future vision is. In doing so, they must recognise existing cultural strengths and
position cultural change as ‘the next chapter’, rather than a massive overhaul, to
respect employees’ contributions and invite them to come along on the journey,”
said Rowsell-Jones.
At least 84 per cent of top CIOs surveyed have responsibility for areas of the
business outside traditional IT. The ideal balance, as per the responses, is 56 per
cent related to business outcomes, such as revenue growth, business margins and
influencing business strategy, and 44 per cent related to IT delivery.
Respondents to the survey were categorised as top, typical and trailing
performers in digitalisation. Some CIOs favour a separate digital team to boost their
enterprise’s digital business while others consider digitalisation part of their job.
Microsoft joins Open Source Initiative as ‘Premium’ sponsor
Microsoft has joined the Open Source Initiative (OSI) as a ‘Premium’ sponsor.
The new development has
happened months after the
Redmond company entered the
membership agreement with
the Linux Foundation and is
another significant effort to
ensure a feeling of good faith
with open source contributors.
“This is a significant
milestone for the OSI and the
open source software movement
more broadly,” said Patrick Masson, general manager and board director, OSI.
The relationship between OSI and Microsoft is not a new one. In fact, the two
organisations have been in touch for more than a decade, dating back to 2005. The
Windows maker even opted for an open source licence when releasing .NET in 2014,
a move that explicitly demonstrated the firm’s interest in the community-driven space.
“As Microsoft engages with open source communities more broadly and deeply,
we are excited to support the Open Source Initiative’s efforts,” said Jeff McAffer,
director of Microsoft’s open source programs office.
Since the release of the open source .NET Core back in November 2014,
Microsoft has become part of a list of open source communities and organisations
such as Open Source Eclipse Foundation, Cloud Native Computing Foundation
and Cloud Foundry Foundation. In November 2016, the company joined the Linux
Foundation to prove its support for Linux, something that CEO Satya Nadella has
often mentioned at enterprise-focused events in the past.
Microsoft has joined Facebook, Google, GitHub and IBM by sponsoring
the OSI. The corporate sponsorship gives the non-profit organisation a way to
Microsoft expands its
portfolio of machine
learning tools
Microsoft has launched a new range
of machine learning tools at its
annual Ignite conference. With the
new launch, the Windows maker
wants to enable developers to utilise
easy artificial intelligence (AI) based
tools to build new advancements.
The new tools are the Azure
Machine Learning Workbench, Azure
Machine Learning Experimentation
Service and the Azure Machine
Learning Model Management
Service. These are designed to help
developers working on new AI
models, as well as those who simply
want to use pre-existing models.
The Azure Machine Learning
Experimentation Service is
designed to help developers
deploy ML experiments. Microsoft
has added support for open
source frameworks like Caffe2,
PyTorch, TensorFlow, CNTK and
Cahiner. The experimentation
service is designed to scale from
local machines to hundreds of
GPUs in the cloud.
Machine Learning Workbench,
on the other hand, is a desktop
client for Windows and Mac. The
tool can act as a control panel
for your development life cycle.
Lastly, the Azure Machine Learning
Model Management Service uses
Docker containers. Developers can
manage and deploy their models
to any Docker container using the
service. The company has also
included its own Kubernetes-based
Azure Container Service within the
learning workbench to enhance the
coverage of its native development.
All the new machine learning
developments are a part of
Microsoft’s AI platform, which the
company claims serves over 650,000
sessions per week.
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 11
FOSSBYTES
continue its initiatives, which are dedicated to promoting and protecting open
source software and its communities.
Intel releases Clear Containers 3.0 with
Go language construction
Intel’s Clear Linux has launched a new generation of its containers project
Clear Containers. Debuted as the Clear Containers 3.0, the new version brings
support for leveraging code used for namespace-based containers and improves
integration in the container ecosystem.
The most significant change in Clear Containers 3.0 is its Go language build.
Intel’s Clear Linux team has finally decided to switch from C language to Go. The
new Clear Containers version
also comes with a new agent
based on the libcontainer library.
Users can use the library to
apply policies and filters such as
SELinux and Seccomp within
the Clear Container guest mode.
In addition to the
major improvements to
Clear Containers, Intel has
upgraded CC-runtime that
now includes compatibility with the OCI runtime specification and Docker
engine. Users can also run the platform using Kubernetes through CRI-O. This
new development enables users to run both trusted and untrusted workloads in a
Kubernetes cluster on bare metal.
Clear Containers 3.0 can be downloaded from its GitHub repository.
Huawei and SUSE to build mission-critical server
for SAP applications
Huawei and SUSE have expanded their ongoing partnership, and will be developing
a mission-critical server that runs SAP applications. The announcement has come
months after the two companies agreed to make SUSE Enterprise Server compatible
with KunLun RAS 2.0.
The new solution will be based on Huawei’s 16-/32-socket and run SUSE
Linux Enterprise Server. Supporting 8, 16 and 32 bit Intel processors with up to
32TB of onboard storage, sources claim that the KunLun mission-critical server
can achieve a 3,000 per cent
improvement in reliability. It
will have technologies such
as kPar physical partitioning,
memory module hot swap and
predictive failure analysis.
“This solution will
ensure continuous, stable
running of enterprise,
business-critical applications
and reduce unplanned downtime. Supporting memory online maintenance, it
reduces unplanned system outages caused by memory faults to almost zero,
thereby boosting the reliability of enterprise critical applications,” said Qiu Long,
president of the Huawei IT server product line, in a joint statement.
SUSE has enabled its platform with enterprise-class Linux OS kernels, along
Yahoo open sources its Big
Data supported search tech
Months after being acquired by
Verizon, Yahoo has decided to open
source its Big Data processing and
serving engine called Vespa. The
technology was used exclusively
for search queries on key Yahoo
products, including Yahoo
News and Flickr, among others.
Verizon-owned Oath, which serves
as the parent company of Yahoo,
claims that Vespa processes and
serves content and ads almost 90,000
times every second, with latencies in
the tens of milliseconds. It is even
supposed to handle keyword and
image searches on a huge scale, with
a few hundred queries per second on
tens of billions of images.
Developer teams can leverage
Vespa to pick content through SQL-
like queries and text search, organise
matches and generate data-driven
pages, as well as write data in real-
time. The technology is capable of
distributing data and computation over
several machines at once.
“By releasing Vespa, we are
making it easy for anyone to build
applications that can compute
responses to user requests, over large
data sets, in real-time and at Internet
scale — capabilities that up until
now have been within the reach of
only a few large companies,” Vespa’s
distinguished architect Jon Bratseth
wrote in a blog post. Vespa can be
run on-premise or in the cloud and
comes both in Docker images and
rpm packages. Its code is available
in a GitHub repository along with
detailed documentation.
12 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
FOSSBYTES
with a bottom-layer firmware provided by KunLun. The Linux operating system
includes integration with the optimised KunLun BIOS process that can automate the
experience with user-mode tools.
“Having support and coordination from the bottom-layer hardware structural
design and BIOS software sides is integral to SUSE’s innovations around the OS
RAS features,” said Ralf Flaxa, president of engineering, SUSE.
In addition to the partnership with SUSE, Huawei has collaborated with others
to solve issues related to disaster recovery, high availability and backup. This will
make the new server a competitive model for enterprises.
SUSE has natively tied up with SAP to bring SUSE OpenStack Cloud and
SUSE Enterprise Storage to the SAP Cloud Platform.
Facebook relicenses React to continue to charm devs
Weeks after facing criticism from the open source community, Facebook has
decided to relicense its projects, including React, Jest, Flow and Immutable.js.
The company is set to switch the developments from the existing BSD +
Patents licence, and relicense them under the MIT licence.
React faced criticism due to its availability under the BSD + Patents licence.
Several developers even switched to some close alternatives of the React system,
which ultimately impacted
the company in the fast-
growing world of open
source.
“We’re relicensing
these projects because
React is the foundation of
a broad ecosystem of open
source software for the
Web, and we don’t want to
hold back forward progress
for non-technical reasons,”
Facebook’s engineering director Adam Wolff said in a blog post.
Facebook believes that the issuance of BSD + Patents licence provides “some
benefits” to developers deploying its projects. However, the community is not on
the same track and wants an unrestricted licence.
Among the leading critics was the Apache Software Foundation. The non-profit
organisation even marked the Facebook BSD + Patents licence under its Category
X, and restricted access to React across its entire open source portfolio.
“We’re sorry for the churn,” asserted Wolff, adding that Facebook doesn’t want
to leave the door open for developers to move to any alternatives now.
React 16 will be the first open source project by Facebook to include the licence
update. This new version is a year-long effort of Facebook’s development team and
is completely rewritten.
Even though Facebook has moved React and the other major projects to
the MIT licence, it continues to keep the BSD + Patents licence for now. Wolff
mentioned that since each project is different, alternative licensing options will
depend on a variety of factors.
Baidu develops open source deep learning
framework for smartphones
Chinese Internet giant Baidu aims to get bigger in the world of artificial intelligence
(AI) by launching its open source mobile deep learning framework. Called Mobile
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 13
FOSSBYTES
For more news, visit www.opensourceforu.com
Deep Learning (MDL), this convolution-based neural network uses the image
sensor on Android and iOS mobile devices to recognise objects.
MDL’s neural network has low complexity and high speed. Interestingly,
the new model is also designed to use
the GPU on iOS devices to enable
calculations through the network. This
takes Apple devices a step ahead of the
Android models.
A couple of demonstrations put up by
Baidu on the GitHub repository show its
different features. The first demonstration
reveals that MDL is capable of recognising an object in less than a second. The
second demo shows the project’s ability to identify an object from an image and
find suitable matches from the Web.
While MDL does support developments made on UC Berkeley’s deep learning
framework Caffe, Baidu recommends that developers use its PaddlePaddle platform
that was launched last year. Users can convert their existing PaddlePaddle model
to an MDL project using simple Python skills. Baidu has also given support for
projects such as MobileNet, SqueezeNet and GoogLeNet.
MDL is available on GitHub under the MIT licence.
Infosys picks SUSE OpenStack to build private cloud solution
Infosys has launched a private cloud solution by partnering with open source
pioneer Micro Focus SUSE. The latest development leverages SUSE OpenStack to
help businesses move towards their digital transformation journey.
The new announcement bolsters the existing relationship between the two
companies, and positions Infosys as a strategic Global Platinum partner for Micro
Focus SUSE, backed by more than 500
architects and consultants with data centre
transformation and migration capabilities.
“We believe that this collaboration
will impact businesses positively
and help them propel their digital
strategy especially in sectors such as
financial services, life sciences, retail,
manufacturing, energy and utilities,” said Ravi Kumar, president and deputy chief
operating officer, Infosys, in a joint statement.
Infosys and Micro Focus SUSE have jointly invested in a centre of excellence to
develop validated reference architectures, accelerators and factory-based migration
solutions. The new partnership will give a boost to that centre and enhance private cloud
adoption among enterprise customers. “System integrators like Infosys are critical in
bridging legacy IT with emerging cloud-native technologies using SUSE OpenStack
Cloud,” said Ronald de Jong, president, sales, Micro Focus SUSE, in a statement.
Infosys is set to enhance its presence in Europe and generate new business and
insights through SUSE OpenStack adoption. In March this year, the Bengaluru-
headquartered company expanded its focus towards open source by joining the
Open Invention Network (OIN). That decision will help the company persuade
clients outside India and make the newly launched private cloud solution
successful over time.
32 February 2017 | electronics For you www.eFymag.com
Fig. 5: Endotronix wireless health monitoring
Fig. 6: Golden Gopher Magnetic Biosensing
system
Fig. 7: Electronic Aspirin
congestive heart failure and other
cardiac ailments.
Golden Gopher Magnetic
Biosensing system. This portable,
low-cost and easy-to-use device
detects biomarkers in human serum
and urine, as well as heavy metals
in lake water. Known as Z-lab, this
highly-sensitive sensor is now in
development for smaller, more port-
able models.
Electronic Aspirin. For people
who suffer from migraines, clus-
ter headaches and other causes of
chronic, excruciating head or facial
pain, the ‘take two aspirins and call
me in the morning’ method is use-
less. Doctors have long associated
the most severe, chronic forms of
headache with sphenopalatine gan-
glion (SPG), a facial nerve bundle,
but have not yet found a treatment
that has a long-term effect on SPG.
Electronic Aspirin is a patient-
powered tool for blocking SPG
signals at the first sign of a head-
ache, and involves the permanent
implant of a small nerve-stimulating
device in the upper gum on the side
of the head normally affected by
headache. Lead tip of the implant
connects with the SPG bundle, and
when a patient senses the onset
of a headache, he or she places
a handheld remote controller on
the cheek nearest to the implant.
Resulting signals stimulate SPG
nerves and block pain-causing
neurotransmitters.
Google smart contact lenses.
Google has created smart contact
lenses made for people
who suffer from diabetes
and those who sim-
ply wear glasses. The
technology is engineered
to take the tears in a
person’s eye and measure
glucose levels. For people
who wear glasses, the
lens would be engineered
to what the companies
say is ‘to restore the eye’s
natural autofocus.’Fig. 8: Google’s smart contact lenses
Chip and antenna
receive power and
send information
Sensor detects
glucose in tears
Soft contact lens
encapsulates electronics
implanted during a routine cath-
eterisation procedure. It requires
no leads or implanted batteries,
and sends data to a secure Web
platform. The sensor is designed
to improve the quality of life and
medical outcomes, as well as lower
costs for those who suffer from
• www.lulu.com
• www.magzter.com
• Createspace.com
• www.readwhere.com
biotech
14 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
CODE
SPORT Sandya Mannarswamy
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 15
A
s we have been doing over the last couple of
months, we will continue to discuss a few
more interview questions in this month’s
column as well, focusing on topics in machine
learning. Let us start off with a simple question.
1. Let us assume that you have a neural network
in which there is only an input layer (with a
single input X being a number) and an output
layer with a single output neuron. There are no
hidden layers. You can assume any kind of output
layer activation, be it linear, sigmoid, softmax,
tanh or relU. The output needs to be 0 for X <
6 and 1 for X > 6. How would you design your
neural network?
2.	 Is	it	possible	for	a	classifier	to	have	both	high	
bias and high variance? In that case, would the
training set error be greater than the test set error
or vice versa? How can you recognise such a
situation	—whether	it	is	possible	for	a	classifier	
to have both high bias and high variance?
3. You are working on developing a part of a large
image	classification	system	of	indoor	household	
images taken from different cameras placed inside
the house. Such a system can be part of a smart
home project or for home security considerations.
Since many of your customers have pet cats, your
system needs to be able to recognise cats. You
have designed a machine learning system that
can recognise cat images from non-cat images.
Note that the household cameras being used in the
setup are quite cheap, and can end up producing
poor quality images due to variations in lighting,
camera motion, etc. Since there are zillions of
cat images on the Internet, you have decided
to train your system using pet images from the
Internet, which are typically high quality. You have
downloaded 100,000 labelled pet images from the
Internet	to	train	your	cat-recognition	classifier.	You	
have also obtained 5000 home-camera generated
images, which may include cat images as well.
You are planning to use 2500 of these 5000
images as the validation set for tuning the hyper-
parameters. The remaining 2500 images would be
used	as	the	test	set	for	final	evaluation.	After	you	
have	finished	developing	the	initial	model	and	are	
about to start the next step, which is the hyper-
parameter tuning exercise, your friends tell you
that your methodology is incorrect because your
training set and validation set come from different
data distributions and, hence, it is likely that your
chosen model would perform badly on the test
set. Would you agree with them? If not, explain
why. If yes, explain how you would change your
methodology. Note that you cannot increase
the amount of indoor household camera image
data, which is only 5000 images, of which a few
hundred are cat images.
4.	 You	are	designing	a	classifier	which	will	analyse	
data	relating	to	Bengaluru	traffic	fines	and	
build	a	classification	system	which	will	predict	
whether	the	fine	for	a	particular	violation	will	be	
paid or not. The input data set has information
on the offender, such as the name, residential
street name, house number, locality pin code,
whether the person is a repeat offender, age,
gender, information regarding what type of
traffic	violation	occurred,	the	date	of	violation,	
where	it	happened,	information	regarding	the	fine	
such as the amount, any late fee, administrative
charges, etc. Note that the different variables
in the input data set are of different data types,
with	the	type	of	traffic	violation	represented	in	
string format, the residential street number being
a	numerical	quantity,	and	the	amount	of	the	fine	
being	a	floating	point	number.	The	target	variable	
you are predicting is a binary variable which is
1	if	the	fine	will	be	paid,	or	0	if	the	fine	will	not	
be paid. You have carefully analysed the data
In this month’s column, we discuss a few more questions on
machine learning and deep learning.
CodeSport Guest Column
16 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
By: Sandya Mannarswamy
The author is an expert in systems software and is currently
working as a research scientist at Conduent Labs India
(formerly Xerox India Research Centre). Her interests include
compilers, programming languages, file systems and natural
language processing. If you are preparing for systems software
interviews, you may find it useful to visit Sandya’s LinkedIn
group ‘Computer Science Interview Training India’ at http://www.
linkedin.com/groups?home=HYPERLINK “http://www.linkedin.
com/groups?home=&gid=2339182”&HYPERLINK “http://www.
linkedin.com/groups?home=&gid=2339182”gid=2339182
set, and have included both the age of the offender and
the	residential	street	number	as	features	in	your	classifier.	
Remember that both of these are numeric quantities. While
you	are	confident	of	your	system	working	well,	your	friends	
suggest that using the ‘street number’ as the numeric feature
is incorrect. They suggest that it has to be combined with
the ‘street name’ and the combined quantity needs to be
encoded as a ‘categorical’ variable. Do you agree with your
friends? If yes, explain why. If not, explain why you believe
their reasoning is incorrect.
5. Let us consider Question (3) from above. You decided to
add 3000 images from the indoor cameras to the training
set of 100,000 Internet pet images. You then decided
to use 1000 images from the indoor cameras as the
validation/development set for hyper-parameter tuning.
The remaining 1000 indoor camera images will be used
as the test set. Given that you have only 3000 images in
your training set which are actually from the application,
for which you are building your classifier, you still have
the issue of training and validation/test data distributions
being different. If your trained model does not do well on
the validation/development data set, how would you find
out whether it is because of under-fitting or not being
able to generalise well? Essentially, can you come up
with a method of splitting your input data set so that you
can find and fix the issue of the classifier under-fitting to
the training data?
6. One way to address the issue mentioned in Question (5)
above is to split the training set into two parts, with one
part being used for training and the other part known as the
training-dev set, which will be used to evaluate whether
the	classifier	can	fit	well	with	the	data	coming	from	the	
same distribution as the training data. Note that this split of
‘training-dev’ data set is needed only when the training data
distribution and validation/test data distribution are different.
The purpose of the ‘training-dev’ data set is to help determine
whether	the	classifier	can	generalise	well	to	unseen	held-out	
data coming from the same distribution as the training data.
You are told that the training error is 4 per cent and training-
dev	error	is	9	per	cent.	You	have	built	your	classifier	using	an	
‘N layer feed forward’ neural network. Now how would you
improve	the	performance	of	the	classifier	on	the	training-dev	
set? Would you choose to increase the number of hidden
layers or would you choose to increase the size of the training
data? Explain the rationale behind your choice.
7. In last month’s column, we had discussed full-batch gradient
descent, mini-batch gradient descent and stochastic gradient
descent for the optimisation of the cost function of the neural
networks. In stochastic gradient descent and mini-batch
gradient descent, the optimisation process can lead to local
oscillations as it tries to move towards the minimum. This can
result in the algorithm taking a larger number of steps towards
convergence. One way of addressing this issue is to modify
the gradient descent algorithm to include momentum. Gradient
descent	algorithms	with	momentum	‘RMSProp’	and	‘Adam’	
are all different variants which address this issue. Basically,
instead of updating the parameters using only the gradients
computed in the current iteration, a weighted average of the
gradients from previous iterations as well is used for the
update. Do you need gradient descent with momentum if you
are told that your cost function is convex?
8. You are planning to consider using mini-batch gradient
descent with momentum. Should you keep the momentum
term larger or smaller during the initial part of the
training? Explain the rationale behind your choice.
9. Consider the data set presented in question (4) about the
Bengaluru	traffic	fine	payment	prediction	problem.	This	
data set has a number of features which are on different
scales. Your friends suggest that you should normalise
the	inputs	first.	Can	you	explain	the	process	of	input	
normalisation? Does it improve prediction accuracy? If yes,
explain how. If not, what is the reason behind normalising
the inputs to a neural network? We all know that weights W
in a feed forward neural network should not be initialised
to zero. Can you explain why? Given this constraint, how
would you decide the initialisation of the weights? Can you
use any random values?
10. You have been asked to set up a deep learning system
that can recognise faces of employees and send signals to
open the entrance gate to the laboratory, as the employee
approaches the gate. You have heard a lot about the
advantages of end-to-end deep learning. In this case,
if you decide to go with the end-to-end deep learning
approach, you only provide the image of the employee
approaching the door and the neural network provides
an open/close signal output which can be used to drive
the entrance gate. The alternative is to employ a pipeline
approach,	wherein	the	first	phase	identifies	the	‘face	part’	
from the image and puts a bounding box around it. The
next phase does the face match recognition to check if
the approaching person is a validated employee of the
company. Which approach would you choose and explain
the rationale behind your choice.
If you have any favourite programming questions/
software topics that you would like to discuss on this forum,
please send them to me, along with your solutions and
feedback, at sandyasm_AT_yahoo_DOT_com.
Are you facing these issues
at your workplace?
Business Critical Apps
Secured, Transparently
Know more about our next generation solutions
Visit www.instasafe.com
Email sales@instasafe.com
Call +918880220044
Enable users to work faster with a
highly secure, yet simple to use
secure access solution.
We’ve got you covered!
Hardware free, zero configuration, self-service
Manage remote access securely
Domain joining simplified
MPLS failover made easy
Control Cloud Applications: Google, MS O365,
ZOHO, Salesforce, etc.
18 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
Hewlett Packard, a global leader
in the printer, laptop and PC space,
has launched a palm-sized printer
in India – the Sprocket. This tiny
printer allows users to take physical
copies of photographs stored in their
mobile phones.
Smartphones are now the default
and instantly available device for
taking pictures of most important
events, trips and memorable moments.
The Sprocket enables users to take
print copies of images from their
smartphones – anywhere and at
any time. It is compatible with both
Android and iOS devices, and can be
connected via Bluetooth.
Apart from printing pictures,
the device can also be fun for kids
as it can convert images into funky
stickers. The device uses a special zinc
technology photo paper, which easily
Address: Motorola Solutions India
Pvt Ltd, 415/2, Mehrauli Gurgaon
Road, Sector 14, Near Maharana Pratap
Chowk, Gurugram, Haryana 122001
NEW PRODUCTS
Palm-sized pocket
printer from
Hewlett Packard
Affordable and
light Bluetooth
headphones
from Motorola
Indian electronics manufacturer
Ambrane has officially announced
the launch of a new and affordable
smartwatch – the ASW11.
It looks like a regular watch, but
the ASW11 turns into a smartwatch
and fitness tracker once connected with
a smartphone or a tablet via Bluetooth.
The device offers a premium range
of technologies, and has an LCD
display with a high resolution and
good visibility. The multi-functional
watch allows users to accept or reject
calls or snooze alarms. It also enables
the user to create short reminders and
to-do lists to manage hectic schedules.
The feature-loaded smartwatch offers
text messages, email alerts, fitness
tracking as well as sleep monitoring.
Ambrane launches
pocket-friendly smartwatch
Motorola has introduced its latest
Bluetooth headphones in India, called
the Motorola Pulse Escape. The light
and pocket-friendly headphones
offer the latest features in this price
segment. Designed with 40mm
oversized drivers, the headphones
offer an effective noise isolation
and immersive music experience.
The foldable ear-cup design enables
users to carry them with comfort and
style. On the battery front, the device
offers 10 hours of playtime on a
single charge, and up to two hours of
playtime with just a 30-minute charge.
The headphones feature A2DP
(Advanced Audio Distribution Profile),
HFP (Hands Free Protocol) and AVRCP
(Audio/Video Remote Control) profiles.
They are compatible with all Android
and Apple smartphones and tablets,
and support the related voice assistants.
They also come with integrated multi-
point technology that allows them to be
connected to up to two smartphones at
the same time. The device offers an 18.2
metre range, Bluetooth 4.2 connectivity
and a 3.5mm headphone jack.
The Motorola Pulse Escape
headphones are available in black and
white, online and at retail stores.
Address: Ambrane India, C-91/7,
Wazirpur Industrial Area, Delhi 110052;
Ph: 011-48089900
fits into the printer for 5cm x 7.6cm (2
inch x 3 inch) photos. Thus the printer
allows users to turn their memories and
events into brightly coloured, durable,
smudge-proof, water-resistant and tear-
resistant photos.
The Sprocket is available in black,
white and red, online and at HP stores.
Address: HP India Sales Pvt Ltd, 6th
Floor, Tower D, Global Business Park,
Mehrauli-Gurgaon Road, Gurugram,
Haryana 122002; Ph: 088266-13522
Price:
` 1,999
Apart from these features, the watch
can also be used to manage music, and
comes with an inbuilt pedometer and
‘sedentary reminder’.
The Ambrane ASW11 is available in
‘universal black’ online and at retail stores.
Price:
` 8,999
Price:
` 2,999
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 19
Portronics launches multi-functional
portable projector
The prices, features and specifications are based on information provided to us, or as available
on various websites and portals. OSFY cannot vouch for their accuracy. Compiled by: Aashima Sharma
Digisol’s wireless security camera
A provider of digital and portable
solutions, Portronics has launched its
latest projector, called Progenie. The
device is a 100-lumen multimedia
portable LED projector offering a
203cm (80 inch) screen and an 854
x 480 pixels resolution. It uses Texas
Instruments’ DLP technology to
ensure excellent picture quality.
Address: Portronics Digital Private
Limited, 4E/14, Azad Bhavan,
Jhandewalan, New Delhi 110055;
Ph: 09555245245
Address: Digisol Systems Ltd, Smartlink
House, Plot No. 5, Bandra-Kurla Complex
Road, Santa Cruz (E), Mumbai 400098
A subsidiary of Smartlink Network
Systems Ltd and a leading player
in the networking and CCTV
surveillance space, Digisol has
launched a new wireless pan/tilt IP
camera – the DG-SC3600W.
The camera comes with all
the mounting accessories needed
for easy installation on walls
and ceilings.
The plug-and-play camera uses
an application on a smartphone
which connects with existing
Wi-Fi/Internet connections, via
which the surveillance can be
done online through the cloud.
It has a microSD card slot for
storage of up to 64GB, on which
the recordings are stored and can
be retrieved using the application.
Price:
` 4,999
With an extremely portable
size of just over 7.6cm x 7.6cm x
3.8cm (3” x 3” x 1.5”), the device
can project crystal clear multimedia
content from a variety of sources.
It is useful for homes, offices
as well as gaming due to its screen
size. It can easily be connected to
a DVD player, microSD card, USB
drive and HDMI enabled device
like laptops, streaming dongles,
etc. The device comes with a
multi-functional remote control
with the usual functions like play,
pause, stop, zoom, freeze, etc, for
comfortable and hassle-free usage.
The projector works on
110V-240V 50/60Hz AC power and
comes with a built-in fan that keeps
Price:
` 25,599
the temperature under control. With
the LED’s life span going up to 20,000
hours, the Progenie allows the user to
charge 5V devices like Android, iOS
or Windows smartphones, cameras,
etc, from a USB port.
Weighing just 200g, the user can
easily carry the printer around in a
small handbag or a laptop bag.
The Portronics Progenie is packed
with an HDMI cable, AVI cable and
a tripod. It is available at both online
and offline stores.
Apart from these features, the camera
comes with IR LED technology for
clear night vision up to a 10-metre
distance, enabling the camera to ‘see’
in absolute darkness.
The pan/tilt function gives
maximum coverage of the area under
surveillance. The highly flexible camera
allows users to remotely monitor areas
from a computer and smartphone.
Additionally, the camera comes with 1
megapixel resolution support, a free app
for Apple iOS and Android for cloud
viewing, a built-in microphone and
speaker for two-way audio, email/app
alerts and motion based recording.
The Digisol DG-SC3600W is
available at retail stores.
Prabhakar Jayakumar,
country manager,
DigitalOcean
“DIGITALOCEAN
IS BUILT ON A
FOUNDATION OF
OPEN SOURCE”
As open source is making things significantly better for
developers, cloud service providers have started using
the power of the open source community to grow their
presence. DigitalOcean, a New York-headquartered
company, founded in June 2011, is among the leading
hosting companies worldwide and is one of the few
cloud providers to have deployed open source-based
technologies predominantly. In an exclusive conversation
with Jagmeet Singh of OSFY, Prabhakar
Jayakumar, country manager, DigitalOcean,
highlights the key open source initiatives of the
company. Edited excerpts:
QWhat does DigitalOcean
have for developers
around the globe?
DigitalOcean gives developers better
software and tools to launch and scale any
application in the cloud. By offering the
simplest platform, the most transparent
pricing and an elegant user interface, we
reduce complexity so developers can build
great software – faster.
QFrom the available portfolio,
what are the major open
source-focused developments by
DigitalOcean?
DigitalOcean is built on a foundation of
open source. Whether you look at our
hypervisors that are running kernel-based
virtual machines (KVM) or our Rails apps
running on our Kubernetes clusters, they
are all open source-powered stacks. On
top of that, our users are deploying open
source based solutions to our platform
every single day.
One of our core values as a company
is that our community is bigger than us.
We provide hosting credits to many open
source projects, host several meetups in
our office and even support them across
the world. We are also members of
organisations such as the Cloud Native
Foundation and Ruby Together to help
support the technologies we use.
Additionally, Hacktoberfest is a yearly
initiative we produce in partnership with
GitHub to generate excitement around
contributing to open source in the month
of October. The aim of this initiative is
to inspire developers to contribute back
to the projects they use. Last year, over
10,000 people completed the challenge
opening up over 92,000 pull-requests to
over 29,000 repos.
QDo you feel it is difficult to
support open source being a
cloud service provider?
No, it is not difficult.
For U & Me Interview
20 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
Interview
QWhat was the idea behind
bringing DigitalOcean to a
market that already has Amazon
Web Services, Google Cloud and
Microsoft Azure?
When we launched back in 2012, the
other cloud providers were neglecting the
software developer and focused on the
enterprise/legacy customers. Prices were
too high, the offerings were too complex
to navigate and the UI was unnecessarily
complex. We wanted to provide an
experience for developers around the
cloud that was simple and intuitive, at the
best price-to-performance value.
QHow is the marketing model
adopted by DigitalOcean
different from the ones opted
by market leaders like Amazon,
Google and Microsoft?
As a company, we are focused on
collaborating and contributing to
developer communities around the
world. We drive activities ranging from
workshops and hackathons, to coding
contests, webinars and conferences to
engage with the developer community.
Our meetup chapters are operational
across more than 60 cities globally, and
the local developer communities use
these forums to share best practices and
learn from subject matter experts on a
wide range of technical topics, including
but not limited to the cloud and DevOps.
Our community site also provides
extensive tutorials and guides for
developers learning to work with Linux
and those seeking to create complex set-
ups within their infrastructures.
QWhy does DigitalOcean
primarily focus on developers
instead of targeting enterprises?
As a company that predominantly
comprises software developers, we
understand and empathise with the pain
points of the developer community. When
we started in 2012, we found a market
gap that had to be addressed. Developers
wanted to be relieved of the burdens
around infrastructure management, and
have the complexity of wrestling with
complicated bills and unwieldy APIs
developers as much as it does for their
counterparts in other parts of the globe.
QHow do you manage to fulfil the
ever-growing cloud demand in
the Indian market?
Not only do we plan and commission our
infrastructure to meet the growing demand
of our customers but we also work towards
making our latest offerings, such as block
storage and load balancers, available in our
India data centre.
QWhat are the prime hindrances
for Indian developers opting for
cloud-first platforms?
While the cloud is the new reality and
developers are already aware of the benefits
that a cloud platform could bring to their
business, there are some misconceptions
around security and platform availability
(up times). However, these are unfounded
concerns and these misconceptions have
largely been debunked.
QWhat are the key skills a
developer requires to pick a
solution from DigitalOcean?
At DigitalOcean, our mission is to
simplify infrastructure and create an
experience that developers love. There
are no technical prerequisites for using
our platform. In fact, we have customers
with little to no knowledge of technology,
using our platform to perform a variety of
tasks including hosting their websites or
blogs. For those who need help, we have
thousands of tutorials that provide detailed
instructions on using our platform for a
wide range of use cases.
QWhat do you think about the
future of the cloud in India?
India is home to the fastest growing
ecosystem for startups and entrepreneurs.
With the number of software developers
throughout India expected to grow to over
five million over the next couple of years,
India is poised to become the largest
developer market in the world. We’re
focused on making it easier than ever
before for professional developers from
India, and around the world, to deploy and
scale their businesses.
removed from their development process.
Moreover, we focus on doing the heavy-
lifting on the infrastructure side, letting
developers channelise their energies
towards building applications that solve
real customer problems.
QWhat are the vital challenges
you face while serving
various cloud solutions in India?
There are certain nuances to setting
up a data centre facility in India. But
the fact that we are able to provide an
infrastructure experience to software
developers in the country that matches
the quality of our services in New York
or Singapore speaks of the developments
that India has seen over the years.
Despite our operational costs
being a little higher in India compared
to other locations where we operate
our data centres, we are maintaining
a single pricing plan across all our
regions worldwide. This means that our
SSD-enabled cloud servers (known as
Droplets) as well as all other services,
such as load balancers, have identical
pricing across geographies.
QDo you see any growth
potential for a cloud
solutions provider like
DigitalOcean in the country?
Absolutely. In fact, India is the fastest
growing international market for
DigitalOcean. Our value proposition
of simplicity, transparent pricing and
robust performance resonates with Indian
With the number of
software developers
throughout India
expected to grow to
over five million over
the next couple of
years, India is poised
to become the largest
developer market in
the world.
For U & MeInterview
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 21
Using Ansible for Managing
VMware Infrastructure
This article is an introduction to different Ansible modules, which can be
used to manage various VMware objects in VMware infrastructure.
A
nsible is an IT automation tool. It can configure
systems, deploy software and orchestrate
advanced IT tasks such as continuous deployments
or zero downtime rolling updates. Many of you already
know that you can manage your VMware infrastructure
using Ansible.
A recent development branch of Ansible, i.e., 2.4-devel
(https://github.com/ansible/ansible/tree/devel), has
brought in a lot of improvements in both its performance
and its reliability.
Managing the ESXi host with different tools
The vSphere Client and the vSphere Web Client provide
simple ways to manage your ESXi host and operate its
virtual machines.
Another way of managing this is the
Virtualisation Management Object Management
Infrastructure’s (VMOMI) network exposed API.
VMOMI can be used by various programming
language bindings like PyVmomi (https://github.com/
vmware/pyvmomi).
Getting started with Ansible
You can read more about Ansible official
documentation at http://docs.ansible.com. Also, Open
Source For You has covered various Ansible related
topics in past editions.
Let us discuss a few Ansible VMware modules
that are essential for managing and administrating
various VMware objects.
Admin How To
22 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 23
AdminHow To
Managing virtual machines
vmware_guest: This module is required in order to manage
a virtual machine in your vCenter or standalone ESXi
environment. The module can create, modify, rename and
remove a virtual machine. It can also power on, power off,
restart and suspend a virtual machine.
The following Ansible Playbook example shows how to
create a virtual machine:
- name: Example Playbook for creating virtual machine
hosts: localhost
tasks:
- name: Create a virtual machine with name testvm01
vmware_guest:
datacenter: datacenter01
esxi_hostname: esxi_host_01
hostname: 127.0.0.1
name: testvm01
guest_id: centos64guest
username: user
password: pass@123
state: present
disk:
- size_gb: 1
type: thin
datastore: LocalDS_0
hardware:
memory_mb: 512
num_cpus: 1
osid: centos64guest
scsi: paravirtual
You can read more about this module at http://docs.
ansible.com/ansible/latest/vmware_guest_module.html.
vmware_guest_facts: You often want to get details
about a virtual machine like its IP address, folder path, MAC
address, etc. This module does exactly that. vmware_guest_
facts gives you all the vital information about a virtual
machine. You can chain the information received from this
module to various other VMware modules.
---
- name: Example playbook to get facts about virtual machine
hosts: localhost
tasks:
- name: get list of facts about virtual machines
vmware_guest_facts:
validate_certs: False
hostname: esxi_hostname_01
username: user
password: pass@123
datacenter: datacenter_01
name: testvm01
folder: /vm
register: guest_facts_0001
- debug: msg=”{{ guest_facts_0001 }}”
You can read more about this module at http://docs.
ansible.com/ansible/latest/vmware_guest_facts_module.html.
vmware_guest_find: This module provides information
about the folder path in which the virtual machine is located.
This information is required in various other VMware modules.
The following example will find the folder path related to
a virtual machine.
---
- name: Example playbook to find the details of folder related
to virtual machine
hosts: localhost
tasks:
- name: Get folder path for virtual machine
vmware_guest_find:
validate_certs: false
hostname: 127.0.0.1
username: user
password: pass
name: testvm01
datacenter: datacenter_01
register: folder_details
- debug: msg=”{{ folder_details }}”
You can read more about this module at https://github.
com/ansible/ansible/blob/devel/lib/ansible/modules/cloud/
vmware/vmware_guest_find.py.
vmware_guest_snapshot: When we want to preserve
the state of the virtual machine at a given point of time, we
take a snapshot of the virtual machine. This module provides
the functionality to manage various operations related to
a snapshot such as create, delete, revert and restore. This
module requires information on the folder path along with
the virtual machine name. Here, we can use the information
provided by vmware_guest_find on the folder path.
The following playbook example will show how to take a
simple snapshot of a virtual machine:
---
- name: Example to take a snapshot of virtual machine
hosts: localhost
tasks:
- name: Take a snapshot
vmware_guest_snapshot:
hostname: esxi_hostname_01
username: root
password: esxi@123
name: testvm01
folder: /vm
snapshot_name: my_secure_stable_snapshot
register: snap_state_001
- debug: msg=”{{ snap_state_001 }}”
24 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
Admin How To
You can read more about this module at http://docs.ansible.
com/ansible/latest/vmware_guest_snapshot_module.html.
Managing clusters
vmware_cluster: This module allows you to manage a cluster
in your VMware infrastructure. It also allows you to set
various cluster properties such as HA, vSAN and DRS.
The following example will add a sample cluster in a
given VMware infrastructure:
---
- name: Example playbook to add a cluster
hosts: localhost
tasks:
- name: Add cluster
vmware_cluster:
validate_certs: false
hostname: esxi_hostname_01
username: root
password: esxi@123
datacenter_name: datacenter_01
cluster_name: esx_cluster_002
register: new_cluster_details
- debug: msg=new_cluster_details
You can read more about this module at http://docs.
ansible.com/ansible/latest/vmware_cluster_module.html.
Managing data centres
vmware_datacenter: This module allows you to manage a
data centre in your VMware infrastructure. You can read more
about this module at http://docs.ansible.com/ansible/latest/
vmware_datacenter_module.html.
[1] https://github.com/ansible/ansible/tree/devel
[2] http://docs.ansible.com/ansible/latest/vmware_guest_
module.html
[3] http://docs.ansible.com/ansible/latest/vmware_guest_
facts_module.html
[4] https://github.com/ansible/ansible/blob/devel/lib/
ansible/modules/cloud/vmware/vmware_guest_find.py
[5] http://docs.ansible.com/ansible/latest/vmware_guest_
snapshot_module.html
[6] http://docs.ansible.com/ansible/latest/vmware_cluster_
module.html
[7] http://docs.ansible.com/ansible/latest/vmware_
datacenter_module.html
[8] http://docs.ansible.com/ansible/latest/list_of_cloud_
modules.html#vmware
[9] https://github.com/ansible/ansible/blob/devel/hacking/
README.md
References
By: Abhijeet Kasurde
The author works at Red Hat and is a FOSS evangelist. He loves
to explore new technologies and software. You can contact him
at abhijeetkasurde21@gmail.com.
Managing VMware networks
You can manage various VMware network objects such
as a distributed virtual switch, virtual switch, port group,
distributed virtual switch port group, etc.
You can read more about these various modules at
http://docs.ansible.com/ansible/latest/list_of_cloud_modules.
html#vmware.
Ansible VMware modules are undergoing heavy
development; you can take active part in this by developing
or testing various modules. You can read more about hacking
Ansible modules at https://github.com/ansible/ansible/blob/
devel/hacking/README.md.
MONTH THEME
March 2017 Open Source Firewall, Network security and Monitoring
April 2017 Databases management and Optimisation
May 2017 Open Source Programming (Languages and tools)
June 2017 Open Source and IoT
July 2017 Mobile App Development and Optimisation
August 2017 Docker and Containers
September 2017 Web and desktop app Development
October 2017 Artificial Intelligence, Deep learning and Machine Learning
November 2017 Open Source on Windows
December 2017 BigData, Hadoop, PaaS, SaaS, Iaas and Cloud
January 2018 Data Security, Storage and Backup
February 2018 Best in the world of Open Source (Tools and Services)
OSFY Magazine Attractions During 2017-18
Admin How To
26 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
L
inux and Windows are two of the most popular operating
systems in the market. One can say that these two OSs
have become essentials because of their continuous
development and feature enhancements. Many people prefer
one over the other. Yet, people who use Linux sometimes
need the Windows operating system, and vice versa. For faster
development and more security, people prefer to use Linux over
Windows. So these people need Linux alongside Windows.
A common solution for this problem is to use a dual boot,
which basically installs the entire operating system. However,
due to boot loader changes (like UEFI mode), configuring
dual boot becomes difficult.
This article is about running Linux on Windows, without
using the dual boot technique. There are different ways to do
so, one of the most popular being using a virtual machine.
Virtual machines
Virtualisation is fairly old technology now. It was started
around 1980 by IBM. So, currently, this technology is pretty
stable. We can create Linux virtual machines in Windows
using software like Virtual Box, VMware Player, and
VMware Workstation.
If you would like to run Linux on Windows and have never used a virtual machine, this
tutorial explains how you can do so in a few simple steps.
A virtual machine provides the same functionality as
a physical computer, but it is an emulation of a physical
computer. The virtual machine can be created or destroyed
at any moment and it will not impact the actual operating
system, which is the best part about using it.
To install Linux on Windows, we just require two things
— the software to create a virtual machine which is Virtual
Box (free software) and an ISO file of the operating system.
The installation process is pretty simple, like installing
any software in Windows. The steps for installing Ubuntu (a
favourite Linux flavour) inside Windows are given below.
The first step is to enable virtualisation technology in the
BIOS. If you have already enabled it, you can skip this step.
You need to power on the system and go to the BIOS
setup by pressing F2, Del or the Enter key, depending upon
your computer model.
After that, under CPU Configuration -> System
Configuration -> Advanced or Security Tab, we need to find
Virtualization Technology or Intel Virtualization Technology.
If the option is disabled, then it must be enabled. If it’s
already enabled, skip this step.
If you get any of the following error messages at any point
Using a Virtual Machine
to Run Linux on Windows
Admin How To
28 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
of time, it means that virtualisation technology is not enabled
for you and you need to enable it:
ƒ VT-x/AMD-V hardware acceleration is not available on
your system
ƒ This host supports Intel VT-x, but Intel VT-x is disabled
ƒ The processor on this computer is not compatible with
Hyper-V
If you have not installed Virtual Box, then you can go
to the links https://www.virtualbox.org/wiki/Downloads
and http://download.virtualbox.org/virtualbox/5.1.28/
VirtualBox-5.1.28-117968-Win.exe, and download and
install it. The steps are very straightforward; hence, I am not
mentioning them here.
Open the Virtual Box application once it is installed. It
will look like what’s shown in the snapshot in Figure 1.
Click on the New button and select the OS category before
providing the appropriate name to the virtual machine.
Assign RAM as per your requirements. Ubuntu can run
on 512MB, which is the minimum requirement to run Linux
smoothly on Windows. Since I have 8GB RAM in my laptop,
I have chosen 2048MB (2GB) RAM.
Figure 1: Virtual machine home Figure 3: Assigning RAM
Figure 2: Creating a virtual machine Figure 4: Select virtual hard disk
Figure 5: Select virtual hard disk type
The next option is to select the virtual hard disk. Since we
are creating a new virtual machine, we will use the ‘Create
virtual hard disk now’ option.
Here we need to select the virtual hard disk type. Since
Admin How To
30 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
By: Maulik Parekh
The author has an M. Tech degree in cloud computing
from VIT University, Chennai. He can be reached at
maulikparekh2@gmail.com. Website: https://www.linkedin.
com/in/maulikparekh2.
[1] https://www.virtualbox.org/wiki/Downloads
Reference
Figure 6: Disk space
Figure 9: Install Ubuntu like any normal OSFigure 7: Selecting the ISO file
Figure 8: Installation started
we are using Virtual Box, we will use VDI which is a
Virtual Box disk image.
There are two options here — we can either use a fixed
size or a dynamic size. It is better to opt for the latter so that
the size can be increased if required.
Allocate the disk space as per your requirement.
Once it is done, go to the virtual machine that you have
created, right-click on it and go to the settings of that machine.
Now we must attach the ISO file so that while we run the VM,
it should know the location of the Ubuntu ISO file. As shown in
the snapshot (Figure 7), click on the DISK button and browse
the .ISO file of Ubuntu OS. The ISO file is now attached.
Next, go to the virtual machine, right-click on it and start it.
You will get the Ubuntu installation screen, which is
similar to installing any operating system that you have chosen.
The remaining steps are similar to the installation of any OS.
If you want to close the virtual machine window, you can
do one of three things.
1. Save the machine: This is like hibernate. The system will
resume from wherever you left off, the next time when you
start — it will show you the same task at which you paused.
2. Send the ‘Shutdown’signal: This is like pressing the power
button. It will allow normal shutdown of the virtual machine.
3. Power off the machine: This is like pulling a power cable.
It is for a hard shutdown which is required in scenarios
where a VM gets hung or is not working properly.
At any time, if you want to destroy the virtual machine
you created, right-click and select the Remove option. This
will remove all the related files.
In this article, we have seen the basic operations of
a virtual machine. We can explore other options in a
subsequent one.
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 31
AdminHow To
P
rovisioning is the first step in an application’s
deployment process. In a cloud environment, software
can be run from a Docker container, virtual machine
or bare metal, and Ansible can be used for provisioning such
systems. In this article, we explore how to use Ansible to
launch Docker containers and provision virtual machines.
Setting it up
Let’s create an Ansible playbook for the ‘Get started
with Docker Compose’ composetest example available
at https://docs.docker.com/compose/gettingstarted/. The
Ansible version used on the host system (Ubuntu x86_64)
is 2.2.0.0. You will need to install Docker CE and docker-
compose on Ubuntu. Follow the installation guide provided
at https://docs.docker.com/engine/ installation/linux/
docker-ce/ubuntu/#install-using-the-repository to install
Docker CE. You can then install docker-compose using the
APT package manager:
$ sudo apt-get install docker-compose
The composetest/ folder consists of the following files:
composetest/app.py
composetest/docker-compose.yml
composetest/Dockerfile
composetest/provision.yml
DevOps Series:
Provisioning with Ansible
Ansible is the simplest way to automate apps and IT infrastructure. It meshes well with
DevOps to deploy apps. In this ninth article in the series on DevOps, we explore the use
of Ansible for launching Docker containers and provisioning virtual machines.
composetest/requirements.txt
The app.py file contains a basic Flask application that
communicates with a backend Redis database server. Its file
contents are as follows:
from flask import Flask
from redis import Redis
app = Flask(__name__)
redis = Redis(host=’redis’, port=6379)
@app.route(‘/’)
def hello():
count = redis.incr(‘hits’)
return ‘Hello World! I have been seen {} times.n’.
format(count)
if __name__ == “__main__”:
app.run(host=”0.0.0.0”, debug=True)
An HTTP request to the Flask application returns the text
string ‘Hello World! I have been seen N times.’ This will be
run inside a Docker container. The requirements.txt file is
provided to list the dependencies required for the project:
flask
Loonycorn
Some of our recent courses:
On Udemy:
 Building Voice-Enabled Apps with Amazon Alexa
 Building ChatBots with Amazon Lex
 GCP: Complete Google Data Engineer and Cloud Architect
Guide
On Pluralsight:
 Unsupervised Machine Learning with TensorFlow
 Classification Models in TensorFlow
 Understanding the Foundations of TensorFlow
LoonycornOur Content:
 The Ultimate Computer Science Bundle
9 courses | 139 hours
 The Complete Machine Learning Bundle
10 courses | 63 hours
 The Complete Computer Science Bundle
8 courses | 78 hours
 The Big Data Bundle
9 courses | 64 hours
 The Complete Web Programming Bundle
8 courses | 61 hours
 The Complete Finance & Economics Bundle
9 courses | 56 hours
 The Scientific Essentials Bundle
7 courses | 41 hours
 ~30 courses on Pluralsight
~80 on StackSocial
~75 on Udemy
About Us:
 ex-Google | Stanford | INSEAD
 80,000+ students
34 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
Admin How To
redis
Now let’s provision a minimalistic Docker container
that has support for Python and is based on Alpine (a
security-oriented, lightweight GNU/Linux distribution). The
Dockerfile for the application is provided below for reference:
FROM python:3.4-alpine
ADD . /code
WORKDIR /code
RUN pip install -r requirements.txt
CMD [“python”, “app.py”]
The Docker-compose.yml file is used to create the images
and will also be used by Ansible. It defines the services that
will be deployed in the containers:
version: ‘2’
services:
web:
build: .
ports:
- “5000:5000”
redis:
image: “redis:alpine”
ports:
- “6379:6379”
Provisioning
The Python Web application will be running on port 5000,
whereas the Redis database server will be listening on
port 6379. We will first build the application using the
following code:
$ docker-compose up
Creating composetest_web_1
Creating composetest_redis_1
Attaching to composetest_web_1, composetest_redis_1
redis_1 | 1:C 05 Oct 11:40:49.067 # oO0OoO0OoO0Oo Redis is
starting oO0OoO0OoO0Oo
redis_1 | 1:C 05 Oct 11:40:49.067 # Redis version=4.0.2,
bits=64, commit=00000000, modified=0, pid=1, just started
redis_1 | 1:C 05 Oct 11:40:49.067 # Warning: no config file
specified, using the default config. In order to specify a
config file use redis-server /path/to/redis.conf
redis_1 | 1:M 05 Oct 11:40:49.070 * Running mode=standalone,
port=6379.
redis_1 | 1:M 05 Oct 11:40:49.070 # WARNING: The TCP backlog
setting of 511 cannot be enforced because /proc/sys/net/core/
somaxconn is set to the lower value of 128.
redis_1 | 1:M 05 Oct 11:40:49.070 # Server initialized
redis_1 | 1:M 05 Oct 11:40:49.070 # WARNING overcommit_
memory is set to 0! Background save may fail under low memory
condition. To fix this issue add ‘vm.overcommit_memory = 1’ to
/etc/sysctl.conf and then reboot or run the command ‘sysctl
vm.overcommit_memory=1’ for this to take effect.
redis_1 | 1:M 05 Oct 11:40:49.070 # WARNING you have
Transparent Huge Pages (THP) support enabled in your kernel.
This will create latency and memory usage issues with Redis.
To fix this issue run the command ‘echo never > /sys/kernel/
mm/transparent_hugepage/enabled’ as root, and add it to your
/etc/rc.local in order to retain the setting after a reboot.
Redis must be restarted after THP is disabled.
redis_1 | 1:M 05 Oct 11:40:49.070 * Ready to accept
connections
web_1 | * Running on http://0.0.0.0:5000/ (Press CTRL+C
to quit)
web_1 | * Restarting with stat
web_1 | * Debugger is active!
web_1 | * Debugger PIN: 100-456-831
If you start a browser on the host system and open the
URL http://0.0.0.0:5000, you will see the text from the
Flask application. You can continue to refresh the page
making requests to the application, and you will see the
count increasing in the text: ‘Hello World! I have been seen
N times.’ Pressing Ctrl+c in the above terminal will stop
the application. Let’s now create an Ansible playbook to
launch these containers:
- name: Provision Flask application
hosts: localhost
connection: local
become: true
gather_facts: true
tags: [setup]
tasks:
- docker_service:
project_name: composetest
definition:
version: ‘2’
services:
web:
build: “{{ playbook_dir }}/.”
ports:
- “5000:5000”
redis:
image: “redis:alpine”
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 35
AdminHow To
register: output
- debug:
var: output
- assert:
that:
- “web.composetest_web_1.state.running”
- “redis.composetest_redis_1.state.running”
The above playbook can be invoked as follows:
$ sudo ansible-playbook provision.yml --tags setup
The docker_service module is used to compose the
services—a Web application and a Redis database server. The
output of launching the containers is stored in a variable and
is used to ensure that both the backend services are up and
running. You can verify that the containers are running using
the docker ps command output as shown below:
$ docker ps
CONTAINER ID IMAGE COMMAND
CREATED STATUS PORTS
NAMES
03f6f6a3d48f composetest_web “python app.py”
18 seconds ago Up 17 seconds 0.0.0.0:5000->5000/
tcp composetest_web_1
fa00c70da13a redis:alpine “docker-
entrypoint...” 18 seconds ago Up 17 seconds
6379/tcp composetest_redis_1
Scaling
You can use the docker_service Ansible module to increase
the number of Web services to two, as shown in the following
Ansible playbook:
- name: Scale the web services to 2
hosts: localhost
connection: local
become: true
gather_facts: true
tags: [scale]
tasks:
- docker_service:
project_src: “/home/guest/composetest”
scale:
web: 2
register: output
- debug:
var: output
- name: Start container two
docker_container:
name: composetest_web_2
image: composetest_web
state: started
ports:
- “5001:5000”
network_mode: bridge
networks:
- name: composetest_default
ipv4_address: “172.19.0.12”
The above playbook can be invoked as follows:
$ sudo ansible-playbook provision.yml --tags scale
The execution of the playbook will create one more Web
application server, and this will listen on Port 5001. You can
verify the running containers as follows:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED
STATUS PORTS NAMES
66b59eb163c3 composetest_web “python app.py” 9 seconds ago
Up 8 seconds 0.0.0.0:5001->5000/tcp composetest_web_2
4e8a37344598 redis:alpine “docker-entrypoint...” 11
seconds ago Up 10 seconds 0.0.0.0:6379->6379/tcp
composetest_redis_1
03f6f6a3d48f composetest_web “python app.py” 55 seconds ago
Up 54 seconds 0.0.0.0:5000->5000/tcp composetest_web_1
You can open another tab in the browser with the URL
http://localhost:5001 on the host system, and the text count will
continue to increase if you keep refreshing the page repeatedly.
Cleaning up
You can stop and remove all the running instances. First, stop
the newly created Web application, as follows:
$ docker stop 66b
You can use the following Ansible playbook to stop the
containers that were started using Docker compose:
- name: Stop all!
hosts: localhost
connection: local
become: true
gather_facts: true
tags: [stop]
tasks:
- docker_service:
project_name: composetest
36 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
Admin How To
project_src: “{{ playbook_dir }}/.”
state: absent
The above playbook can be invoked using the
following command:
$ sudo ansible-playbook provision.yml --tags stop
You can also verify that there are no containers running in
the system, as follows:
$ docker ps
CONTAINER ID IMAGE COMMAND CREATED
STATUS PORTS NAMES
Refer to the Ansible docker_service module’s
documentation at http://docs.ansible.com/ansible/ latest/
docker_service_module.html for more examples and options.
Vagrant and Ansible
Vagrant is free and open source software (FOSS) that helps
to build and manage virtual machines. It allows you to create
machines using different backend providers such as VirtualBox,
Docker, libvirt, etc. It is developed by HashiCorp and is written
in the Ruby programming language. It was first released in
2010 under an MIT licence. The Vagrantfile describes the
virtual machine using a Ruby DSL, and an Ansible playbook
can be executed as part of the provisioning process.
The following dependencies need to be installed on the
host Ubuntu system:
$ sudo apt-get build-dep vagrant ruby-libvirt
$ sudo apt-get install qemu libvirt-bin ebtables dnsmasq
virt-manager
$ sudo apt-get libxslt-dev libxml2-dev libvirt-dev zlib1g-dev
ruby-dev
Vagrant 1.8.7 is then installed on Ubuntu using a .deb
package obtained from the https://www.vagrantup.com/
website. Issue the following command to install the vagrant-
libvirt provider:
$ vagrant plugin install vagrant-libvirt
The firewalld daemon is then started on the host
system, as follows:
$ sudo systemctl start firewalld
A simple Vagrantfile is created inside a test directory to
launch an Ubuntu guest system. Its file contents are given
below for reference:
# -*- mode: ruby -*-
# vi: set ft=ruby :
Vagrant.configure(“2”) do |config|
config.vm.define :test_vm do |test_vm|
test_vm.vm.box = “sergk/xenial64-minimal-libvirt”
end
config.vm.provision “ansible” do |ansible|
ansible.playbook = “playbook.yml”
end
end
When provisioning the above Vagrantfile, a minimalistic
Xenial 64-bit Ubuntu image is downloaded, started and the
Ansible playbook is executed after the instance is launched.
The contents of the playbook.yml file are as follows:
---
- hosts: all
become: true
gather_facts: no
pre_tasks:
- name: Install python2
raw: sudo apt-get -y install python-simplejson
tasks:
- name: Update apt cache
apt: update_cache=yes
- name: Install Apache
apt: name=apache2 state=present
The minimal Ubuntu machine has Python 3 by default,
and the Ansible that we use requires Python 2. Hence, we
install Python 2, update the APT repository and install the
Apache Web server. A sample debug execution of the above
playbook from the test directory is given below:
$ VAGRANT_LOG=debug sudo vagrant up --provider=libvirt
Bringing machine ‘test_vm’ up with ‘libvirt’ provider...
==> test_vm: Creating image (snapshot of base box volume).
==> test_vm: Creating domain with the following settings...
==> test_vm: -- Name: vagrant-libvirt-test_
test_vm
==> test_vm: -- Domain type: kvm
==> test_vm: -- Cpus: 1
==> test_vm: -- Feature: acpi
==> test_vm: -- Feature: apic
==> test_vm: -- Feature: pae
==> test_vm: -- Memory: 512M
==> test_vm: -- Management MAC:
==> test_vm: -- Loader:
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 37
AdminHow To
==> test_vm: -- Base box: sergk/xenial64-minimal-
libvirt
==> test_vm: -- Storage pool: default
==> test_vm: -- Image: /var/lib/libvirt/images/
vagrant-libvirt-test_test_vm.img (100G)
==> test_vm: -- Volume Cache: default
==> test_vm: -- Kernel:
==> test_vm: -- Initrd:
==> test_vm: -- Graphics Type: vnc
==> test_vm: -- Graphics Port: 5900
==> test_vm: -- Graphics IP: 127.0.0.1
==> test_vm: -- Graphics Password: Not defined
==> test_vm: -- Video Type: cirrus
==> test_vm: -- Video VRAM: 9216
==> test_vm: -- Sound Type:
==> test_vm: -- Keymap: en-us
==> test_vm: -- TPM Path:
==> test_vm: -- INPUT: type=mouse, bus=ps2
==> test_vm: Creating shared folders metadata...
==> test_vm: Starting domain.
==> test_vm: Waiting for domain to get an IP address...
==> test_vm: Waiting for SSH to become available...
test_vm:
test_vm: Vagrant insecure key detected. Vagrant will
automatically replace
test_vm: this with a newly generated keypair for better
security.
test_vm:
test_vm: Inserting generated public key within guest...
test_vm: Removing insecure key from the guest if it’s
present...
test_vm: Key inserted! Disconnecting and reconnecting
using new SSH key...
==> test_vm: Configuring and enabling network interfaces...
==> test_vm: Running provisioner: ansible...
test_vm: Running ansible-playbook...
PLAY ********************************************************
TASK [Install python2] **************************************
ok: [test_vm]
TASK [Update apt cache] *************************************
ok: [test_vm]
TASK [Install Apache] ***************************************
changed: [test_vm]
PLAY RECAP **************************************************
test_vm : ok=3 changed=1 unreachable=0 failed=0
Since you have installed virt-manager, you can now open
up the Virtual Machine Manager to see the instance running.
You can also log in to the instance using the following
command from the test directory:
$ vagrant ssh
After logging into the guest machine, you will find its
IP address using the ifconfig command. You can then open a
browser on the host system with this IP address to see the default
Apache Web server home page, as shown in Figure 1.
Figure 1: Apache Web server page
By: Shakthi Kannan
The author is a free software enthusiast and blogs at
shakthimaan.com.
Rajarshi Bhattacharyya,
country head, SUSE India
(Srilanka, Bangladesh and Nepal)
“THE ACCEPTANCE
OF OPEN SOURCE
AMONG INDIAN
ENTERPRISES
HAS BEEN
REMARKABLE”
What are the roadblocks to the success of an open
source platform in India? Rajarshi Bhattacharyya,
country head, SUSE India, answers this question
in an exclusive conversation with Jagmeet Singh of
OSFY. Edited excerpts...
QHow has SUSE grown
in India?
Completing 25 successful years feels
great! Founded in 1992, SUSE has come
a long way in the Linux market. We are
constantly involved with the open source
community and have many ‘firsts’ to
our credit. We were the first enterprise
OpenStack Cloud distribution, the first
Linux on the mainframe, and also the
first Linux to make KVM and Xen
available. Besides, we are the primary
sponsor of the community-supported
openSUSE Project, which develops the
openSUSE Linux distribution.
Gone are the days when SUSE was
known merely as a distro used by a
group of edgy techies. SUSE is now a
common name in the IT industry, and
that has not happened overnight. The
combination of a clear strategy, a strong
and buzzing community, innovation
beyond what anyone imagined and the
conviction to make it big, have made
SUSE a success story.
In India, we are growing by double
digits, and with open source being at
the heart of the Indian government’s IT
Policy, we are expanding at a significant
rate. SUSE powers the ‘Make in India’
initiative established by the government,
by enabling cloud services and value-
added service providers with cutting-
edge, enterprise-class open source
technologies. Moreover, adoption of
open solutions from SUSE allows these
organisations to build products and
solutions that are comparable to their
foreign counterparts.
QDo you see any notable
differences between India
and developed regions like the
US and UK, as an open source
solutions provider?
India has a very distinct IT policy
which is governed by open standards
and actively promotes adoption of
open source. So, being an open source
For U & Me Interview
38 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
Interview
company, we have significant support
from the authorities. Apart from the
government, enterprises in India
are going global, and in a fiercely
competitive environment, organisations
look for tremendous cost-effectiveness,
as well as flexibility and reliability as
the key deciding factors when it comes
to technology adoption. Open source
is the perfect choice to help enterprises
overcome all such hurdles.
QWhat are the major challenges
for an open source company
like SUSE to operate profitably in
the Indian market?
Today, the major challenge that an open
source organisation faces in India is the
unavailability of skilled resources. Open
source organisations such as SUSE have
been making huge efforts to popularise
the adoption of open source right from
the elementary school to a higher level of
educations. There are a lot of universities,
school boards and technical education
centres nowadays that are adopting open
source education as a part of their ICT
curriculum.
QHow do you overcome those
challenges?
SUSE invests heavily in developing
course content on cutting-edge
new technologies. There are online
academies as well as on-demand
training available to master these newer
technologies. On top of these, YouTube
releases by experts help individuals to
master the available technologies.
There is a unique programme
wherein SUSE enables academic
institutions to subscribe to all its course
materials at zero cost. These materials
are regularly updated. Also, students and
individuals can get themselves certified
on technologies like OpenStack and
software defined storage.
QWhat are your prime
strategies to enable
developer engagement around
your offerings?
We have SUSE Studio that allows
developers to build applications on
well-defined tiering system among our
channels and have a wide network of both
Tier-1 and Tier-2 to cater to the needs of
various markets and customers across
India. Recently, we collaborated with
70-80 partners, and it is a constantly
growing network in the country. Channel
expansion is of great strategic importance
to our business.
QWhat makes SUSE Linux
a distinct option in the
growing space of open source
distributions?
SUSE Linux is reliable, highly scalable
and includes cutting-edge technology.
Moreover, it comes with best-in-class
support.
QDo Indian enterprises view
Linux as a part of their IT
deployments nowadays? Is there
any difference from the past?
The acceptance of open source among
Indian enterprises has been remarkable.
Looking back at Linux adoption just
five years ago — almost 60 per cent of
servers were on proprietary OSs, and
only 35 per cent used to be on Linux in
the data centre space. Now, the mix has
changed dramatically, and Linux has
taken over proprietary systems.
In the computing space, organisations
are looking at an alternative option,
because most of the applications are Web
enabled and need a browser to access
them. They do not see the need to pay
for a browser. Application software like
LibreOffice, which is a complete office
suite, does everything that Microsoft
Office does. This is exactly why large
customers like the government of India
have consciously decided to embrace
open source. Neither government
organisations nor enterprises want
vendor lock-in. Also, with a proprietary
system, you lose the freedom of choice.
QWhat are the key drivers
enhancing Linux adoption in
developing markets like India?
Adoption of OpenStack Cloud and
software defined storage (SDS) are the
most disruptive technology trends in the
open source technologies. Recently, the
company has also released a Container-as-
a-Service (CaaS) to cater to the developer
community. The new model is the way
forward for DevOps across India.
Also, SUSE encourages the
developer community by bringing in
a straightforward ISV (independent
software vendor) certification process,
which allows ISVs to get their
products certified easily on SUSE. As a
community programme, Open SUSE is
a huge success.
QDo you believe community
support is important to grow
an open source product?
Indeed it is! Open source communities
encourage innovation through
collaboration. They provide a platform
for developers to keep improving the
programs or code in line with the latest
technological advancements.
Without open source, many of the
technologies we enjoy today would
never have been developed or would be
restricted from being widely used because
of the patent law. But thanks to open
source communities, those technologies
have developed at a breakneck pace over
the past few decades.
QHow do you manage to
market the entire SUSE
portfolio to Indian customers?
We are a 100 per cent channel-driven
company, and our partners are the key
to our success. They are valued the most
within the organisation. We have separate
teams for managing large, medium and
small channels. We also maintain a
In India, we are
growing by double
digits, and with
open source at the
heart of the Indian
government's IT Policy,
we are expanding at a
significant rate.
For U & MeInterview
www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 39
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017
Open source for you - November 2017

More Related Content

What's hot

Docker for the Internet of Things (IoT): An Introduction
Docker for the Internet of Things (IoT): An IntroductionDocker for the Internet of Things (IoT): An Introduction
Docker for the Internet of Things (IoT): An Introductionmsyukor
 
presentation @ docker meetup
presentation @ docker meetuppresentation @ docker meetup
presentation @ docker meetupDaniël van Gils
 
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM BluemixOPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM BluemixDA SILVA, MBA
 
Docker Container As A Service - JAX 2016
Docker Container As A Service - JAX 2016Docker Container As A Service - JAX 2016
Docker Container As A Service - JAX 2016Patrick Chanezon
 
Docker cloud hybridation & orchestration
Docker cloud hybridation & orchestrationDocker cloud hybridation & orchestration
Docker cloud hybridation & orchestrationAdrien Blind
 
Docker: A New Way to Turbocharging Your Apps Development
Docker: A New Way to Turbocharging Your Apps DevelopmentDocker: A New Way to Turbocharging Your Apps Development
Docker: A New Way to Turbocharging Your Apps Developmentmsyukor
 
PaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer Demand
PaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer DemandPaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer Demand
PaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer DemandCisco IT
 
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2UCloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2USufyaan Kazi
 
Beyond the Operating System: Red Hat's Open Strategy for the Modern Enterprise
Beyond the Operating System: Red Hat's Open Strategy for the Modern EnterpriseBeyond the Operating System: Red Hat's Open Strategy for the Modern Enterprise
Beyond the Operating System: Red Hat's Open Strategy for the Modern EnterpriseJames Falkner
 
Build a Cloud Day SF - Crash Course on Open Source Cloud Computing
Build a Cloud Day SF - Crash Course on Open Source Cloud ComputingBuild a Cloud Day SF - Crash Course on Open Source Cloud Computing
Build a Cloud Day SF - Crash Course on Open Source Cloud ComputingMark Hinkle
 
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...Patrick Chanezon
 
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...Daniel Oh
 
Tampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerTampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerSakari Hoisko
 
Future of Open Source in a Cloudy World
Future of Open Source in a Cloudy WorldFuture of Open Source in a Cloudy World
Future of Open Source in a Cloudy WorldBret Piatt
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)QAware GmbH
 
CI CD using Docker and Jenkins
CI CD  using Docker and JenkinsCI CD  using Docker and Jenkins
CI CD using Docker and JenkinsSukant Kumar
 
InteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud Computing
InteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud ComputingInteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud Computing
InteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud ComputingMark Hinkle
 
Docker Announces Open Source Compose for AWS ECS & Microsoft ACI
Docker Announces Open Source Compose for AWS ECS & Microsoft ACIDocker Announces Open Source Compose for AWS ECS & Microsoft ACI
Docker Announces Open Source Compose for AWS ECS & Microsoft ACI9 series
 

What's hot (20)

Docker for the Internet of Things (IoT): An Introduction
Docker for the Internet of Things (IoT): An IntroductionDocker for the Internet of Things (IoT): An Introduction
Docker for the Internet of Things (IoT): An Introduction
 
presentation @ docker meetup
presentation @ docker meetuppresentation @ docker meetup
presentation @ docker meetup
 
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM BluemixOPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
OPEN SOURCE TECHNOLOGY: Docker Containers on IBM Bluemix
 
Docker Container As A Service - JAX 2016
Docker Container As A Service - JAX 2016Docker Container As A Service - JAX 2016
Docker Container As A Service - JAX 2016
 
Docker cloud hybridation & orchestration
Docker cloud hybridation & orchestrationDocker cloud hybridation & orchestration
Docker cloud hybridation & orchestration
 
Docker: A New Way to Turbocharging Your Apps Development
Docker: A New Way to Turbocharging Your Apps DevelopmentDocker: A New Way to Turbocharging Your Apps Development
Docker: A New Way to Turbocharging Your Apps Development
 
PaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer Demand
PaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer DemandPaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer Demand
PaaS Lessons: Cisco IT Deploys OpenShift to Meet Developer Demand
 
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2UCloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
Cloud Foundry vs Docker vs Kubernetes - http://bit.ly/2rzUM2U
 
Beyond the Operating System: Red Hat's Open Strategy for the Modern Enterprise
Beyond the Operating System: Red Hat's Open Strategy for the Modern EnterpriseBeyond the Operating System: Red Hat's Open Strategy for the Modern Enterprise
Beyond the Operating System: Red Hat's Open Strategy for the Modern Enterprise
 
Build a Cloud Day SF - Crash Course on Open Source Cloud Computing
Build a Cloud Day SF - Crash Course on Open Source Cloud ComputingBuild a Cloud Day SF - Crash Course on Open Source Cloud Computing
Build a Cloud Day SF - Crash Course on Open Source Cloud Computing
 
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
Docker 之道 Modernize Traditional Applications with 无为 Create New Cloud Native ...
 
Open source
Open sourceOpen source
Open source
 
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
Red Hhat Summit 2017 : Love Containers, Love Devops, Love Openshift, Where's ...
 
Tampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday DockerTampere Docker meetup - Happy 5th Birthday Docker
Tampere Docker meetup - Happy 5th Birthday Docker
 
Future of Open Source in a Cloudy World
Future of Open Source in a Cloudy WorldFuture of Open Source in a Cloudy World
Future of Open Source in a Cloudy World
 
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
Kubernetes One-Click Deployment: Hands-on Workshop (Mainz)
 
CI CD using Docker and Jenkins
CI CD  using Docker and JenkinsCI CD  using Docker and Jenkins
CI CD using Docker and Jenkins
 
DockerCon EU 2017 Recap
DockerCon EU 2017 RecapDockerCon EU 2017 Recap
DockerCon EU 2017 Recap
 
InteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud Computing
InteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud ComputingInteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud Computing
InteropNY/CloudConnect 2014 - Quick Crash Course in Open Source Cloud Computing
 
Docker Announces Open Source Compose for AWS ECS & Microsoft ACI
Docker Announces Open Source Compose for AWS ECS & Microsoft ACIDocker Announces Open Source Compose for AWS ECS & Microsoft ACI
Docker Announces Open Source Compose for AWS ECS & Microsoft ACI
 

Viewers also liked

VMworld 2017 - Top 10 things to know about vSAN
VMworld 2017 - Top 10 things to know about vSANVMworld 2017 - Top 10 things to know about vSAN
VMworld 2017 - Top 10 things to know about vSANDuncan Epping
 
VSAN – Architettura e Design
VSAN – Architettura e DesignVSAN – Architettura e Design
VSAN – Architettura e DesignVMUG IT
 
VMworld 2017 vSAN Network Design
VMworld 2017 vSAN Network Design VMworld 2017 vSAN Network Design
VMworld 2017 vSAN Network Design Cormac Hogan
 
VMware Site Recovery Manager
VMware Site Recovery ManagerVMware Site Recovery Manager
VMware Site Recovery ManagerJürgen Ambrosi
 
Výhody Software Defined Storage od VMware
Výhody Software Defined Storage od VMwareVýhody Software Defined Storage od VMware
Výhody Software Defined Storage od VMwareMarketingArrowECS_CZ
 
VMware virtual SAN 6 overview
VMware virtual SAN 6 overviewVMware virtual SAN 6 overview
VMware virtual SAN 6 overviewsolarisyougood
 
VMware Esx Short Presentation
VMware Esx Short PresentationVMware Esx Short Presentation
VMware Esx Short PresentationBarcamp Cork
 

Viewers also liked (9)

VMworld 2017 - Top 10 things to know about vSAN
VMworld 2017 - Top 10 things to know about vSANVMworld 2017 - Top 10 things to know about vSAN
VMworld 2017 - Top 10 things to know about vSAN
 
VSAN – Architettura e Design
VSAN – Architettura e DesignVSAN – Architettura e Design
VSAN – Architettura e Design
 
VMworld 2017 vSAN Network Design
VMworld 2017 vSAN Network Design VMworld 2017 vSAN Network Design
VMworld 2017 vSAN Network Design
 
VMware Horizon - news
VMware Horizon - newsVMware Horizon - news
VMware Horizon - news
 
VMware Site Recovery Manager
VMware Site Recovery ManagerVMware Site Recovery Manager
VMware Site Recovery Manager
 
Výhody Software Defined Storage od VMware
Výhody Software Defined Storage od VMwareVýhody Software Defined Storage od VMware
Výhody Software Defined Storage od VMware
 
VMware virtual SAN 6 overview
VMware virtual SAN 6 overviewVMware virtual SAN 6 overview
VMware virtual SAN 6 overview
 
VMware Esx Short Presentation
VMware Esx Short PresentationVMware Esx Short Presentation
VMware Esx Short Presentation
 
VMware Workspace One
VMware Workspace OneVMware Workspace One
VMware Workspace One
 

Similar to Open source for you - November 2017

Built Cross-Platform Application with .NET Core Development.pdf
Built Cross-Platform Application with .NET Core Development.pdfBuilt Cross-Platform Application with .NET Core Development.pdf
Built Cross-Platform Application with .NET Core Development.pdfI-Verve Inc
 
Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)湯米吳 Tommy Wu
 
Docker Seattle Meetup, May 2017
Docker Seattle Meetup, May 2017Docker Seattle Meetup, May 2017
Docker Seattle Meetup, May 2017Stephen Walli
 
Microsoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New UpdateMicrosoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New UpdateAdam John
 
Delphi XE7 Datasheet - The fastest way to build connected apps for Windows, O...
Delphi XE7 Datasheet - The fastest way to build connected apps for Windows, O...Delphi XE7 Datasheet - The fastest way to build connected apps for Windows, O...
Delphi XE7 Datasheet - The fastest way to build connected apps for Windows, O...Embarcadero Technologies
 
O futuro do .NET : O que eu preciso saber
O futuro do .NET : O que eu preciso saberO futuro do .NET : O que eu preciso saber
O futuro do .NET : O que eu preciso saberDanilo Bordini
 
Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017Patrick Chanezon
 
A Linux Enthusiast's Perspective on Microsoft OSS & Azure
A Linux Enthusiast's Perspective on Microsoft OSS & AzureA Linux Enthusiast's Perspective on Microsoft OSS & Azure
A Linux Enthusiast's Perspective on Microsoft OSS & AzureMicheal Colhoun
 
Cloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewCloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewAndy Piper
 
Future of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows PlatformsFuture of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows PlatformsAniruddha Chakrabarti
 
The Ultimate List of Opensource Software for #docker #decentralized #selfhost...
The Ultimate List of Opensource Software for #docker #decentralized #selfhost...The Ultimate List of Opensource Software for #docker #decentralized #selfhost...
The Ultimate List of Opensource Software for #docker #decentralized #selfhost...Panagiotis Galinos
 
What is the next generation of .Net?
What is the next generation of  .Net?What is the next generation of  .Net?
What is the next generation of .Net?Faiyneen Shaikh
 
20 Most Helpful Node.JS Open Source Projects.pdf
20 Most Helpful Node.JS Open Source Projects.pdf20 Most Helpful Node.JS Open Source Projects.pdf
20 Most Helpful Node.JS Open Source Projects.pdfiDataScientists
 
AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...
AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...
AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...AWS Summits
 
Asp.net Web Development.pdf
Asp.net Web Development.pdfAsp.net Web Development.pdf
Asp.net Web Development.pdfAbanti Aazmin
 
Android architecture
Android architectureAndroid architecture
Android architectureHari Krishna
 
Software Developer's Journal - 02/2012
Software Developer's Journal - 02/2012Software Developer's Journal - 02/2012
Software Developer's Journal - 02/2012Ricardo Peres
 

Similar to Open source for you - November 2017 (20)

.NET Core on Mac
.NET Core on Mac.NET Core on Mac
.NET Core on Mac
 
Built Cross-Platform Application with .NET Core Development.pdf
Built Cross-Platform Application with .NET Core Development.pdfBuilt Cross-Platform Application with .NET Core Development.pdf
Built Cross-Platform Application with .NET Core Development.pdf
 
Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)Cloud development technology sharing (BlueMix premier)
Cloud development technology sharing (BlueMix premier)
 
Docker Seattle Meetup, May 2017
Docker Seattle Meetup, May 2017Docker Seattle Meetup, May 2017
Docker Seattle Meetup, May 2017
 
Microsoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New UpdateMicrosoft .NET 6 -What's All About The New Update
Microsoft .NET 6 -What's All About The New Update
 
Delphi XE7 Datasheet - The fastest way to build connected apps for Windows, O...
Delphi XE7 Datasheet - The fastest way to build connected apps for Windows, O...Delphi XE7 Datasheet - The fastest way to build connected apps for Windows, O...
Delphi XE7 Datasheet - The fastest way to build connected apps for Windows, O...
 
O futuro do .NET : O que eu preciso saber
O futuro do .NET : O que eu preciso saberO futuro do .NET : O que eu preciso saber
O futuro do .NET : O que eu preciso saber
 
Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017Moby Open Source Summit North America 2017
Moby Open Source Summit North America 2017
 
Top Things to Know about .NET 6
Top Things to Know about .NET 6Top Things to Know about .NET 6
Top Things to Know about .NET 6
 
A Linux Enthusiast's Perspective on Microsoft OSS & Azure
A Linux Enthusiast's Perspective on Microsoft OSS & AzureA Linux Enthusiast's Perspective on Microsoft OSS & Azure
A Linux Enthusiast's Perspective on Microsoft OSS & Azure
 
Cloud Foundry Introduction and Overview
Cloud Foundry Introduction and OverviewCloud Foundry Introduction and Overview
Cloud Foundry Introduction and Overview
 
Future of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows PlatformsFuture of .NET - .NET on Non Windows Platforms
Future of .NET - .NET on Non Windows Platforms
 
The Ultimate List of Opensource Software for #docker #decentralized #selfhost...
The Ultimate List of Opensource Software for #docker #decentralized #selfhost...The Ultimate List of Opensource Software for #docker #decentralized #selfhost...
The Ultimate List of Opensource Software for #docker #decentralized #selfhost...
 
What is the next generation of .Net?
What is the next generation of  .Net?What is the next generation of  .Net?
What is the next generation of .Net?
 
20 Most Helpful Node.JS Open Source Projects.pdf
20 Most Helpful Node.JS Open Source Projects.pdf20 Most Helpful Node.JS Open Source Projects.pdf
20 Most Helpful Node.JS Open Source Projects.pdf
 
Delphi XE8 Datasheet
Delphi XE8 DatasheetDelphi XE8 Datasheet
Delphi XE8 Datasheet
 
AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...
AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...
AWS Summit Singapore 2019 | Latest Trends for Cloud-Native Application Develo...
 
Asp.net Web Development.pdf
Asp.net Web Development.pdfAsp.net Web Development.pdf
Asp.net Web Development.pdf
 
Android architecture
Android architectureAndroid architecture
Android architecture
 
Software Developer's Journal - 02/2012
Software Developer's Journal - 02/2012Software Developer's Journal - 02/2012
Software Developer's Journal - 02/2012
 

More from Heart Disk

Linux Format - Get Into Linux Today
Linux Format - Get Into Linux TodayLinux Format - Get Into Linux Today
Linux Format - Get Into Linux TodayHeart Disk
 
BBC knowledge December 2017
BBC knowledge   December 2017BBC knowledge   December 2017
BBC knowledge December 2017Heart Disk
 
BBC good food Christmas 2017 uk
BBC good food   Christmas 2017  ukBBC good food   Christmas 2017  uk
BBC good food Christmas 2017 ukHeart Disk
 
BBC Wildlife (Why Owls are not wise)
BBC Wildlife (Why Owls are not wise)BBC Wildlife (Why Owls are not wise)
BBC Wildlife (Why Owls are not wise)Heart Disk
 
BBC Earth - Blue Planet II
BBC Earth - Blue Planet IIBBC Earth - Blue Planet II
BBC Earth - Blue Planet IIHeart Disk
 
Codex Seraphinianus
Codex SeraphinianusCodex Seraphinianus
Codex SeraphinianusHeart Disk
 

More from Heart Disk (7)

Linux Format - Get Into Linux Today
Linux Format - Get Into Linux TodayLinux Format - Get Into Linux Today
Linux Format - Get Into Linux Today
 
BBC knowledge December 2017
BBC knowledge   December 2017BBC knowledge   December 2017
BBC knowledge December 2017
 
BBC good food Christmas 2017 uk
BBC good food   Christmas 2017  ukBBC good food   Christmas 2017  uk
BBC good food Christmas 2017 uk
 
BBC Wildlife (Why Owls are not wise)
BBC Wildlife (Why Owls are not wise)BBC Wildlife (Why Owls are not wise)
BBC Wildlife (Why Owls are not wise)
 
BBC Earth - Blue Planet II
BBC Earth - Blue Planet IIBBC Earth - Blue Planet II
BBC Earth - Blue Planet II
 
Codex Seraphinianus
Codex SeraphinianusCodex Seraphinianus
Codex Seraphinianus
 
Book of soyga
Book of soygaBook of soyga
Book of soyga
 

Recently uploaded

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningLars Bell
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxLoriGlavin3
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationSlibray Presentation
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersRaghuram Pandurangan
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxLoriGlavin3
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfAddepto
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxLoriGlavin3
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsRizwan Syed
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLScyllaDB
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxBkGupta21
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxLoriGlavin3
 

Recently uploaded (20)

Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
DSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine TuningDSPy a system for AI to Write Prompts and Do Fine Tuning
DSPy a system for AI to Write Prompts and Do Fine Tuning
 
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptxThe Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
The Role of FIDO in a Cyber Secure Netherlands: FIDO Paris Seminar.pptx
 
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Connect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck PresentationConnect Wave/ connectwave Pitch Deck Presentation
Connect Wave/ connectwave Pitch Deck Presentation
 
Generative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information DevelopersGenerative AI for Technical Writer or Information Developers
Generative AI for Technical Writer or Information Developers
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptxThe Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
The Fit for Passkeys for Employee and Consumer Sign-ins: FIDO Paris Seminar.pptx
 
Gen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdfGen AI in Business - Global Trends Report 2024.pdf
Gen AI in Business - Global Trends Report 2024.pdf
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptxA Deep Dive on Passkeys: FIDO Paris Seminar.pptx
A Deep Dive on Passkeys: FIDO Paris Seminar.pptx
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Scanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL CertsScanning the Internet for External Cloud Exposures via SSL Certs
Scanning the Internet for External Cloud Exposures via SSL Certs
 
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Developer Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQLDeveloper Data Modeling Mistakes: From Postgres to NoSQL
Developer Data Modeling Mistakes: From Postgres to NoSQL
 
unit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptxunit 4 immunoblotting technique complete.pptx
unit 4 immunoblotting technique complete.pptx
 
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptxDigital Identity is Under Attack: FIDO Paris Seminar.pptx
Digital Identity is Under Attack: FIDO Paris Seminar.pptx
 

Open source for you - November 2017

  • 1. Volume: 06 | Issue: 02 | Pages: 116 | November 2017 ISSN-2456-4885 `120 a sneak peek Into All That Happened What’s New In Java 9 Wine: A Great Tool To Run Windows Programs On Linux Open Source Software That Partners With MS Windows Electron: Building Cross-platform Desktop Apps With Web Technologies Open Source Productivity Tools That Run On Windows WindoWs Tools for
  • 2.
  • 3. { }
  • 4. ISSN-2456-4885NOVEMBER 2017 ADMIN 22 Using Ansible for Managing VMware Infrastructure 31 DevOps Series: Provisioning with Ansible 41 The Current Popularity and the Future of Docker 50 Analyse Big Data With Apache Storm DEVELOPERS 54 Creating a Web Application Using Azure App Services 57 Electron: Building Cross- platform Desktop Apps with Web Technologies 60 Yarn: A Quick, Reliable and Safe Way to Share Code 64 Developing a Simple Android Application Using Kotlin 67 Using PhaserJS to Speed Up 2D Game Development 72 Get Started with Jenkins 2.0: Pipeline as Code 75 What’s New in Java 9? 88 Deep Learning: Using Algorithms to Make Machines Think FOR U & ME 96 Open Source Software That Can Partner with MS Windows 98 The Story Behind the All-pervasive AI 100 Key Open Source Software That Can Boost Business Productivity 107 Evolving Careers and Skills in the IT Industry OPENGURUS 108 Developing ARM Targets Using GNU MCU Eclipse COLUMNS 15 CodeSport POST SHOW REPORT 82 Post Show Report Using a Virtual Machine to Run Linux on Windows Open Source Productivity Tools that Run on Windows 08 FossBytes 18 New Products 112 Tips & Tricks REGULAR FEATURES 26 92 Wine: A Great Tool for Running Windows Programs on Linux 46 CONTENTS 4 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
  • 5.
  • 6. Indian e-commerce startup Fynd contributes back to the open source community Note:Anyobj ectionablematerial,iffoundonthe disc, is unintended, and should be attributedtothecomplexnatureof Internetdata. IncasethisDVD does notworkproperly,writetousatsupport@efy.inforafreereplacement. A bootable DVD with a collection of GNU/Linux software, automatic hardware detection, and support for many graphics cards, sound cards, SCSI and USB devices, as well as other peripherals. One of the most versatile live operating system November 2017 Knoppix 8.1 CD Team e-mail:cdteam@efy.in Recommende dSystem Requirements:P4,1GBRAM,DVD-ROMDrive Try the latest version of KNOPPIX, the versatile Linux distro. • KNOPPIX 8.1 DVD OF THE MONTH 20 114 38 44 Rajarshi Bhattacharyya, country head, SUSE India “The acceptance of open source among Indian enterprises has been remarkable” 78 Tony Wasserman, American computer scientist Jayakumar, country manager, DigitalOcean Harsh Shah, co-founder, GoFynd.io “Software has already become pervasive in the developed and the developing worlds” “DigitalOcean is built on a foundation of open source” CONTENTS EDITOR RAHUL CHOPRA EDITORIAL, SUBSCRIPTIONS & ADVERTISING DELHI (HQ) D-87/1, Okhla Industrial Area, Phase I, New Delhi 110020 Ph: (011) 26810602, 26810603; Fax: 26817563 E-mail: info@efy.in MISSING ISSUES E-mail:support@efy.in BACK ISSUES Kits‘n’Spares NewDelhi110020 Ph:(011)26371661, 26371662 E-mail:info@kitsnspares.com NEWSSTAND DISTRIBUTION Ph:011-40596600 E-mail:efycirc@efy.in ADVERTISEMENTS MUMBAI Ph:(022)24950047,24928520 E-mail:efymum@efy.in BENGALURU Ph:(080)25260394,25260023 E-mail:efyblr@efy.in PUNE Ph:08800295610/09870682995 E-mail:efypune@efy.in GUJARAT Ph:(079)61344948 E-mail:efyahd@efy.in JAPAN TandemInc.,Ph:81-3-3541-4166 E-mail:japan@efy.in SINGAPORE PublicitasSingaporePteLtd Ph:+65-68362272 E-mail:singapore@efy.in TAIWAN J.K.Media,Ph:886-2-87726780ext.10 E-mail:taiwan@efy.in UNITED STATES E&TechMedia Ph:+18605366677 E-mail:usa@efy.in Printed, published and owned by Ramesh Chopra. Printed atTara Art Printers Pvt Ltd, A-46,47, Sec-5, Noida, on 28th of the previous month, and published from D-87/1, Okhla Industrial Area, Phase I, New Delhi 110020. Copyright © 2017. All articles in this issue, except for interviews, verbatim quotes, or unless otherwise explicitly mentioned, will be released under Creative Commons Attribution-NonCommercial 3.0 Unported License a month after the date of publication. Refer to http://creativecommons.org/licenses/by-nc/3.0/ for a copy of the licence. Although every effort is made to ensure accuracy, no responsi- bility whatsoever is taken for any loss due to publishing errors. Articles that cannot be used are returned to the authors if accompanied by a self-addressed and sufficiently stamped envelope. But no responsibility is taken for any loss or delay in returning the material. Disputes, if any, will be settled in a New Delhi court only. SUBSCRIPTION RATES Year Newstand Price You Pay Overseas (`) (`) Five 7200 4320 — Three 4320 3030 — One 1440 1150 US$ 120 Kindly add ` 50/- for outside Delhi cheques. Please send payments only in favour of EFY Enterprises Pvt Ltd. Non-receipt of copies may be reported to support@efy.in—do mention your subscription number. 6 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
  • 7.
  • 8. Apple open sources kernel of iOS and macOS for ARM processors Apple has open sourced the kernel code of the latest macOS X and iOS updates. The company always shares the kernels of macOS and iOS on GitHub, but it has this time enabled the experience for ARM chips. One of the reasons why Apple open sources a portion of macOS and iOS each year is because of its indirect dependence on the BSD project. There is no way to let developers use the open source codebase published by Apple to compile their own OS. However, the kernel guides coders to begin with macOS and iOS kernels. Notably, the ARM-based source code of Apple’s kernel doesn’t mean much but gives Apple a way to give back to the open source community. Some open source experts are predicting that the iPhone maker could be working on a version of macOS that runs on ARM chips. Oracle develops Fn to enter serverless computing world Oracle is all set to step into the nascent space of serverless computing by developing an all-new open source, cloud-agnostic platform called Fn. The new open source development can be run either on-premise or in the cloud and works with Docker containers. “The Fn project is a container-native Apache 2.0 licensed serverless platform that you can run anywhere — on any cloud or on-premise,” said Shaun Smith, product management director at Oracle, in a blog post. Oracle’s Fn has a command line interface that helps developers build, test and deploy functions using orchestration tools such as Kubernetes, Mesosphere and Docker Swarm. There is a built- in smart load balancer that routes traffic directly to functions to enhance the experience. You can use Fn with functions written in Java at the initial stage. But there are also plans to expand the platform by adding support for Go, Ruby, Python, PHP and Node.js over time. Along with the other features, the Fn project allows developers to take AWS Lambda functions and run them platform agnostically. You need to use the lambda- node-4 runtime to begin with Lambda functions on Fn. Kotlin 1.2 beta comes with support for Java 9 Kotlin 1.2 beta has arrived. With the new release, developers can build some interesting modern multi-platform applications. The experimental multi-platform Compiled by: Jagmeet SinghFOSSBYTES Google launches Cloud Firestore to help developers store app data easily To enhance developer engagements around its Firebase application development platform, Google has launched Cloud Firestore. The latest innovation brings a fully-managed NoSQL document database that can store and sync app data at a global scale. “We’ve aimed for the simplicity and ease-of-use that is always top priority for Firebase, while making sure that Cloud Firestore can scale to power even the largest apps,” said Alex Dufetel, product manager for Firebase at Google, in a blog post. Available in beta, Cloud Firestore is designed to help developers hold documents and collections on the cloud with querying support. The database comes with iOS, Android and Web SDKs. It also supports offline data access and enables real-time data synchronisation. Additionally, developers can leverage the built-in automatic, multi-region data replication feature to get better cloud access. The client-side SDKs of Cloud Firestore enable serverless development and provide offline data access with local database support for the Web as well as Android and iOS platforms. Developers can pick the Cloud Firestore SDKs for Java, Go, Python and Node.js. Google’s Cloud Firestore hasn’t been developed from scratch, but built as an upgrade to the existing Firebase Realtime Database, which offers the developer community a real-time database — managed and scaled by Google. Key limitations such as data structuring, querying and scaling have all been addressed in this upgrade. You can get started with the public beta of Cloud Firestore by visiting the database tab in your Firebase console. 8 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
  • 9. FOSSBYTES projects option lets developers reuse code between JVM and JavaScript, for which the code is first placed in a common module. In addition to the option to reuse code, Kotlin 1.2 beta produces the code for both common and platform-specific parts during the compilation of the project. There is also a way for developers to express dependencies of common code on platform-specific parts via expected and actual declarations. If the declaration specifies an API, you need to type the alias that refers to an existing implementation of the API in an external library. The standard library of Kotlin 1.2 features a kotlin.math package for mathematical operations in cross- platform code. The math package also offers better precision for math polyfills for JavaScript. It is worth noting the compatibility with Java 9 module forest split packages in the new version. This version also removes the deprecated declarations in the kotlin.reflect package from the kotlin-reflect library. Kotlin 1.2 also supports an array of literals in annotations and simplifies coding. The new version uses a more consistent syntax. Oracle leverages open source to develop enterprise-focused blockchain technology Oracle has finally planned to enter the growing blockchain space by launching its enterprise-centric Oracle BlockChain Cloud Service. The new distributed ledger cloud platform is based on the open source Hyperledger Fabric project, which has been hosted by the Linux Foundation and receives contributions from a group of companies, including Oracle. “Oracle Blockchain Cloud Service provides enterprise-grade blockchain capabilities and is able to accelerate innovation for on-premise ERP, cloud- based SaaS (Software-as-a-Service) and PaaS (platform-as-a-service) customers,” said Amit Zavery, senior vice president, Oracle Cloud Platform. The new blockchain platform is a part of Oracle Cloud Platform — touted to deliver enterprise-grade resilience, scalability and security. It also helps enterprise customers streamline operations and expand their market reach by using open source developments and maintaining open standards. Oracle has developed an applications integration toolkit that comes with integrated applications, sample code, templates and design patterns to help enterprises rapidly deploy blockchain applications to Oracle SaaS and on-premise application suites. The platform also works with real-time information-sharing across existing Oracle ERP Cloud, Oracle SCM Cloud, Netsuite SuiteCloud Platform or custom blockchain application integration. There is REST API support to let enterprises invoke blockchain services directly or with some pre-built integrations from Oracle Cloud. Oracle has also provided an API management service to enable easy app development in the cloud or on-premise. Kubernetes 1.8 is all about enhancing security Kubernetes 1.8 is now out with the prime focus on enhancing its security. The new version upgrades the existing networking support and includes role-based features to deliver a more secure experience. First in the list of new features in Kubernetes 1.8 is role-based access control (RABC) that lets an admin define access permissions to various resources. RABC comes with permission access for resources like pods and secrets that can be granted to one or more users. The orchestration framework already included a provision for networking. But with the new version, developers have been provided beta support for filtering outbound traffic as well. However, the beta package limits filtering in both directions, and only supports some destination ports and peers at the initial stage. The Google team behind Kubernetes has upgraded the automatic TLS certificate rotation for Kubelet to beta. This helps to automatically generate unique certifications for Kubelet when a current one expires. The latest version promotes auditing features from the alpha to the beta stage. This includes formatting tools for audit logs and features to control users of each element of the cluster. Another feature that has been promoted from alpha to beta is the set of workload APIs. This provides a way to orchestrate applications based on their overall behaviour. Workload APIs can also be used to monitor the production status. You can find the latest Kubernetes release on its official GitHub page. www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 9
  • 10. FOSSBYTES Companies like Accenture, Infosys and Intel have partnered with Oracle to start deploying the newly launched Oracle Blockchain Cloud Service. “Our collaboration with Oracle is aimed at developing a blockchain cloud service for enterprises that helps to advance the privacy of blockchain transactions and improves the interoperability of traditional databases and blockchains,” said Raejeanne Skillern, vice president of the data centre group and GM, cloud service provider group, Intel. F# functional programming debuts on ASP.Net Core through Giraffe Micro Web framework Giraffe has brought F# functional-style programming to ASP.Net Core. The latest development also includes interesting features like higher-order functions that have been much awaited on ASP.Net Core for years. Giraffe offers a different technical philosophy that uses F# features like F# types, higher order functions and partial application of arguments. ASP.Net developers will benefit a lot by using the framework as it enables the development of Web API routes in a functional style. F# is already supported in ASP.Net Core MVC. Developers need to plug Giraffe into the ASP.Net Core pipeline using middleware. Microsoft has published a detailed guide to help you use Giraffe to build a Web service with F# and the .NET Core 2.0 development platform. You might encounter some bugs since the framework is currently available in a beta stage. Having said that, the Giraffe team is working to improve the routing model for the framework. Giraffe is known for its capabilities to build rich Web applications that are based on advanced F# features. Notably, the core of Giraffe is built on top of ASP.Net. Microsoft maintains F# as the open source functional-first language. The language is designed to address complex computing problems using simple code. Digitalisation and technological innovation lead to changing role of CIOs: Gartner With the swift growth in the technology world, the nature of a chief information officer’s (CIO) job has changed. A survey by Gartner has revealed that the CIO role is transitioning from being a delivery executive to a business executive, moving from controlling cost and engineering processes to driving revenue and exploiting data. The survey, dubbed the 2018 Gartner CIO Agenda Survey, conducted with a record number of 3,160 CIO respondents across all major industries in 98 countries, highlights that 95 per cent of CIOs expect their jobs to change due to digitalisation. Respondents consider that world class IT delivery management and digitalisation are the two biggest transformations in the CIO role, followed by assuming increased and broader responsibilities and capabilities. “The CIO’s role must grow and develop as digital business spreads, and disruptive technologies, including intelligent machines and advanced analytics, reach the masses,” said Andy Rowsell-Jones, vice president and distinguished analyst at Gartner. Mozilla pays half a million dollars to support open source projects Mozilla has announced that it has paid a total of US$ 539,000 for supporting open source projects. The company runs the Mozilla Open Source Support (MOSS) programme to support open source developments around the globe. “At Mozilla, we were born out of, and remain a part of, the open source and free software movement. Through the Mozilla Open Source Support (MOSS) programme, we recognise, celebrate and support open source projects that contribute to our work and to the health of the Internet,” said Gervase Markham, policy engineer, Mozilla Corporation, in a blog post. Amongst other major open source projects, Mozilla awarded the biggest amount of US$ 194,000 to Ushahidi, which is an open source software platform for crowdsourcing, monitoring, visualising and responding to reports from people suffering during times of political turmoil and subject to governmental or vigilante abuse. The Mountain View, California based company has also supported projects like WebAssembly backer Webpack, email security platform RiseUp, HTML5 game engine Phaser and Apache module Mod_md. In August this year, Mozilla launched its ‘Global Mission Partners: India’ initiative, which allocated Rs 10 million for Indian open source projects that promoted Mozilla’s mission. The company also ran several audits on codebases of open source developments such as expat (an XML parser) and GNU libmicrohttpd (an embedded HTTP server) through the Secure Open Source arm of MOSS. 10 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
  • 11. FOSSBYTES “While delivery is still a part of the job, much greater emphasis is being placed on attaining a far broader set of business objectives,” Rowsell-Jones added. The survey shows that a majority of CIO respondents believe that technology trends such as cyber security and artificial intelligence are set to significantly change their jobs in the near future. Moreover, around 35 per cent of the total respondents said that they have already invested and deployed some aspect of digital security, while 36 per cent are planning to implement some form of digital security. Despite the positivity towards the change in their role, Rowsell-Jones believes that organisational culture could be a roadblock to success. “CIOs need to identify the cultural behaviours that currently exist and what the future vision is. In doing so, they must recognise existing cultural strengths and position cultural change as ‘the next chapter’, rather than a massive overhaul, to respect employees’ contributions and invite them to come along on the journey,” said Rowsell-Jones. At least 84 per cent of top CIOs surveyed have responsibility for areas of the business outside traditional IT. The ideal balance, as per the responses, is 56 per cent related to business outcomes, such as revenue growth, business margins and influencing business strategy, and 44 per cent related to IT delivery. Respondents to the survey were categorised as top, typical and trailing performers in digitalisation. Some CIOs favour a separate digital team to boost their enterprise’s digital business while others consider digitalisation part of their job. Microsoft joins Open Source Initiative as ‘Premium’ sponsor Microsoft has joined the Open Source Initiative (OSI) as a ‘Premium’ sponsor. The new development has happened months after the Redmond company entered the membership agreement with the Linux Foundation and is another significant effort to ensure a feeling of good faith with open source contributors. “This is a significant milestone for the OSI and the open source software movement more broadly,” said Patrick Masson, general manager and board director, OSI. The relationship between OSI and Microsoft is not a new one. In fact, the two organisations have been in touch for more than a decade, dating back to 2005. The Windows maker even opted for an open source licence when releasing .NET in 2014, a move that explicitly demonstrated the firm’s interest in the community-driven space. “As Microsoft engages with open source communities more broadly and deeply, we are excited to support the Open Source Initiative’s efforts,” said Jeff McAffer, director of Microsoft’s open source programs office. Since the release of the open source .NET Core back in November 2014, Microsoft has become part of a list of open source communities and organisations such as Open Source Eclipse Foundation, Cloud Native Computing Foundation and Cloud Foundry Foundation. In November 2016, the company joined the Linux Foundation to prove its support for Linux, something that CEO Satya Nadella has often mentioned at enterprise-focused events in the past. Microsoft has joined Facebook, Google, GitHub and IBM by sponsoring the OSI. The corporate sponsorship gives the non-profit organisation a way to Microsoft expands its portfolio of machine learning tools Microsoft has launched a new range of machine learning tools at its annual Ignite conference. With the new launch, the Windows maker wants to enable developers to utilise easy artificial intelligence (AI) based tools to build new advancements. The new tools are the Azure Machine Learning Workbench, Azure Machine Learning Experimentation Service and the Azure Machine Learning Model Management Service. These are designed to help developers working on new AI models, as well as those who simply want to use pre-existing models. The Azure Machine Learning Experimentation Service is designed to help developers deploy ML experiments. Microsoft has added support for open source frameworks like Caffe2, PyTorch, TensorFlow, CNTK and Cahiner. The experimentation service is designed to scale from local machines to hundreds of GPUs in the cloud. Machine Learning Workbench, on the other hand, is a desktop client for Windows and Mac. The tool can act as a control panel for your development life cycle. Lastly, the Azure Machine Learning Model Management Service uses Docker containers. Developers can manage and deploy their models to any Docker container using the service. The company has also included its own Kubernetes-based Azure Container Service within the learning workbench to enhance the coverage of its native development. All the new machine learning developments are a part of Microsoft’s AI platform, which the company claims serves over 650,000 sessions per week. www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 11
  • 12. FOSSBYTES continue its initiatives, which are dedicated to promoting and protecting open source software and its communities. Intel releases Clear Containers 3.0 with Go language construction Intel’s Clear Linux has launched a new generation of its containers project Clear Containers. Debuted as the Clear Containers 3.0, the new version brings support for leveraging code used for namespace-based containers and improves integration in the container ecosystem. The most significant change in Clear Containers 3.0 is its Go language build. Intel’s Clear Linux team has finally decided to switch from C language to Go. The new Clear Containers version also comes with a new agent based on the libcontainer library. Users can use the library to apply policies and filters such as SELinux and Seccomp within the Clear Container guest mode. In addition to the major improvements to Clear Containers, Intel has upgraded CC-runtime that now includes compatibility with the OCI runtime specification and Docker engine. Users can also run the platform using Kubernetes through CRI-O. This new development enables users to run both trusted and untrusted workloads in a Kubernetes cluster on bare metal. Clear Containers 3.0 can be downloaded from its GitHub repository. Huawei and SUSE to build mission-critical server for SAP applications Huawei and SUSE have expanded their ongoing partnership, and will be developing a mission-critical server that runs SAP applications. The announcement has come months after the two companies agreed to make SUSE Enterprise Server compatible with KunLun RAS 2.0. The new solution will be based on Huawei’s 16-/32-socket and run SUSE Linux Enterprise Server. Supporting 8, 16 and 32 bit Intel processors with up to 32TB of onboard storage, sources claim that the KunLun mission-critical server can achieve a 3,000 per cent improvement in reliability. It will have technologies such as kPar physical partitioning, memory module hot swap and predictive failure analysis. “This solution will ensure continuous, stable running of enterprise, business-critical applications and reduce unplanned downtime. Supporting memory online maintenance, it reduces unplanned system outages caused by memory faults to almost zero, thereby boosting the reliability of enterprise critical applications,” said Qiu Long, president of the Huawei IT server product line, in a joint statement. SUSE has enabled its platform with enterprise-class Linux OS kernels, along Yahoo open sources its Big Data supported search tech Months after being acquired by Verizon, Yahoo has decided to open source its Big Data processing and serving engine called Vespa. The technology was used exclusively for search queries on key Yahoo products, including Yahoo News and Flickr, among others. Verizon-owned Oath, which serves as the parent company of Yahoo, claims that Vespa processes and serves content and ads almost 90,000 times every second, with latencies in the tens of milliseconds. It is even supposed to handle keyword and image searches on a huge scale, with a few hundred queries per second on tens of billions of images. Developer teams can leverage Vespa to pick content through SQL- like queries and text search, organise matches and generate data-driven pages, as well as write data in real- time. The technology is capable of distributing data and computation over several machines at once. “By releasing Vespa, we are making it easy for anyone to build applications that can compute responses to user requests, over large data sets, in real-time and at Internet scale — capabilities that up until now have been within the reach of only a few large companies,” Vespa’s distinguished architect Jon Bratseth wrote in a blog post. Vespa can be run on-premise or in the cloud and comes both in Docker images and rpm packages. Its code is available in a GitHub repository along with detailed documentation. 12 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
  • 13. FOSSBYTES with a bottom-layer firmware provided by KunLun. The Linux operating system includes integration with the optimised KunLun BIOS process that can automate the experience with user-mode tools. “Having support and coordination from the bottom-layer hardware structural design and BIOS software sides is integral to SUSE’s innovations around the OS RAS features,” said Ralf Flaxa, president of engineering, SUSE. In addition to the partnership with SUSE, Huawei has collaborated with others to solve issues related to disaster recovery, high availability and backup. This will make the new server a competitive model for enterprises. SUSE has natively tied up with SAP to bring SUSE OpenStack Cloud and SUSE Enterprise Storage to the SAP Cloud Platform. Facebook relicenses React to continue to charm devs Weeks after facing criticism from the open source community, Facebook has decided to relicense its projects, including React, Jest, Flow and Immutable.js. The company is set to switch the developments from the existing BSD + Patents licence, and relicense them under the MIT licence. React faced criticism due to its availability under the BSD + Patents licence. Several developers even switched to some close alternatives of the React system, which ultimately impacted the company in the fast- growing world of open source. “We’re relicensing these projects because React is the foundation of a broad ecosystem of open source software for the Web, and we don’t want to hold back forward progress for non-technical reasons,” Facebook’s engineering director Adam Wolff said in a blog post. Facebook believes that the issuance of BSD + Patents licence provides “some benefits” to developers deploying its projects. However, the community is not on the same track and wants an unrestricted licence. Among the leading critics was the Apache Software Foundation. The non-profit organisation even marked the Facebook BSD + Patents licence under its Category X, and restricted access to React across its entire open source portfolio. “We’re sorry for the churn,” asserted Wolff, adding that Facebook doesn’t want to leave the door open for developers to move to any alternatives now. React 16 will be the first open source project by Facebook to include the licence update. This new version is a year-long effort of Facebook’s development team and is completely rewritten. Even though Facebook has moved React and the other major projects to the MIT licence, it continues to keep the BSD + Patents licence for now. Wolff mentioned that since each project is different, alternative licensing options will depend on a variety of factors. Baidu develops open source deep learning framework for smartphones Chinese Internet giant Baidu aims to get bigger in the world of artificial intelligence (AI) by launching its open source mobile deep learning framework. Called Mobile www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 13
  • 14. FOSSBYTES For more news, visit www.opensourceforu.com Deep Learning (MDL), this convolution-based neural network uses the image sensor on Android and iOS mobile devices to recognise objects. MDL’s neural network has low complexity and high speed. Interestingly, the new model is also designed to use the GPU on iOS devices to enable calculations through the network. This takes Apple devices a step ahead of the Android models. A couple of demonstrations put up by Baidu on the GitHub repository show its different features. The first demonstration reveals that MDL is capable of recognising an object in less than a second. The second demo shows the project’s ability to identify an object from an image and find suitable matches from the Web. While MDL does support developments made on UC Berkeley’s deep learning framework Caffe, Baidu recommends that developers use its PaddlePaddle platform that was launched last year. Users can convert their existing PaddlePaddle model to an MDL project using simple Python skills. Baidu has also given support for projects such as MobileNet, SqueezeNet and GoogLeNet. MDL is available on GitHub under the MIT licence. Infosys picks SUSE OpenStack to build private cloud solution Infosys has launched a private cloud solution by partnering with open source pioneer Micro Focus SUSE. The latest development leverages SUSE OpenStack to help businesses move towards their digital transformation journey. The new announcement bolsters the existing relationship between the two companies, and positions Infosys as a strategic Global Platinum partner for Micro Focus SUSE, backed by more than 500 architects and consultants with data centre transformation and migration capabilities. “We believe that this collaboration will impact businesses positively and help them propel their digital strategy especially in sectors such as financial services, life sciences, retail, manufacturing, energy and utilities,” said Ravi Kumar, president and deputy chief operating officer, Infosys, in a joint statement. Infosys and Micro Focus SUSE have jointly invested in a centre of excellence to develop validated reference architectures, accelerators and factory-based migration solutions. The new partnership will give a boost to that centre and enhance private cloud adoption among enterprise customers. “System integrators like Infosys are critical in bridging legacy IT with emerging cloud-native technologies using SUSE OpenStack Cloud,” said Ronald de Jong, president, sales, Micro Focus SUSE, in a statement. Infosys is set to enhance its presence in Europe and generate new business and insights through SUSE OpenStack adoption. In March this year, the Bengaluru- headquartered company expanded its focus towards open source by joining the Open Invention Network (OIN). That decision will help the company persuade clients outside India and make the newly launched private cloud solution successful over time. 32 February 2017 | electronics For you www.eFymag.com Fig. 5: Endotronix wireless health monitoring Fig. 6: Golden Gopher Magnetic Biosensing system Fig. 7: Electronic Aspirin congestive heart failure and other cardiac ailments. Golden Gopher Magnetic Biosensing system. This portable, low-cost and easy-to-use device detects biomarkers in human serum and urine, as well as heavy metals in lake water. Known as Z-lab, this highly-sensitive sensor is now in development for smaller, more port- able models. Electronic Aspirin. For people who suffer from migraines, clus- ter headaches and other causes of chronic, excruciating head or facial pain, the ‘take two aspirins and call me in the morning’ method is use- less. Doctors have long associated the most severe, chronic forms of headache with sphenopalatine gan- glion (SPG), a facial nerve bundle, but have not yet found a treatment that has a long-term effect on SPG. Electronic Aspirin is a patient- powered tool for blocking SPG signals at the first sign of a head- ache, and involves the permanent implant of a small nerve-stimulating device in the upper gum on the side of the head normally affected by headache. Lead tip of the implant connects with the SPG bundle, and when a patient senses the onset of a headache, he or she places a handheld remote controller on the cheek nearest to the implant. Resulting signals stimulate SPG nerves and block pain-causing neurotransmitters. Google smart contact lenses. Google has created smart contact lenses made for people who suffer from diabetes and those who sim- ply wear glasses. The technology is engineered to take the tears in a person’s eye and measure glucose levels. For people who wear glasses, the lens would be engineered to what the companies say is ‘to restore the eye’s natural autofocus.’Fig. 8: Google’s smart contact lenses Chip and antenna receive power and send information Sensor detects glucose in tears Soft contact lens encapsulates electronics implanted during a routine cath- eterisation procedure. It requires no leads or implanted batteries, and sends data to a secure Web platform. The sensor is designed to improve the quality of life and medical outcomes, as well as lower costs for those who suffer from • www.lulu.com • www.magzter.com • Createspace.com • www.readwhere.com biotech 14 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
  • 15. CODE SPORT Sandya Mannarswamy www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 15 A s we have been doing over the last couple of months, we will continue to discuss a few more interview questions in this month’s column as well, focusing on topics in machine learning. Let us start off with a simple question. 1. Let us assume that you have a neural network in which there is only an input layer (with a single input X being a number) and an output layer with a single output neuron. There are no hidden layers. You can assume any kind of output layer activation, be it linear, sigmoid, softmax, tanh or relU. The output needs to be 0 for X < 6 and 1 for X > 6. How would you design your neural network? 2. Is it possible for a classifier to have both high bias and high variance? In that case, would the training set error be greater than the test set error or vice versa? How can you recognise such a situation —whether it is possible for a classifier to have both high bias and high variance? 3. You are working on developing a part of a large image classification system of indoor household images taken from different cameras placed inside the house. Such a system can be part of a smart home project or for home security considerations. Since many of your customers have pet cats, your system needs to be able to recognise cats. You have designed a machine learning system that can recognise cat images from non-cat images. Note that the household cameras being used in the setup are quite cheap, and can end up producing poor quality images due to variations in lighting, camera motion, etc. Since there are zillions of cat images on the Internet, you have decided to train your system using pet images from the Internet, which are typically high quality. You have downloaded 100,000 labelled pet images from the Internet to train your cat-recognition classifier. You have also obtained 5000 home-camera generated images, which may include cat images as well. You are planning to use 2500 of these 5000 images as the validation set for tuning the hyper- parameters. The remaining 2500 images would be used as the test set for final evaluation. After you have finished developing the initial model and are about to start the next step, which is the hyper- parameter tuning exercise, your friends tell you that your methodology is incorrect because your training set and validation set come from different data distributions and, hence, it is likely that your chosen model would perform badly on the test set. Would you agree with them? If not, explain why. If yes, explain how you would change your methodology. Note that you cannot increase the amount of indoor household camera image data, which is only 5000 images, of which a few hundred are cat images. 4. You are designing a classifier which will analyse data relating to Bengaluru traffic fines and build a classification system which will predict whether the fine for a particular violation will be paid or not. The input data set has information on the offender, such as the name, residential street name, house number, locality pin code, whether the person is a repeat offender, age, gender, information regarding what type of traffic violation occurred, the date of violation, where it happened, information regarding the fine such as the amount, any late fee, administrative charges, etc. Note that the different variables in the input data set are of different data types, with the type of traffic violation represented in string format, the residential street number being a numerical quantity, and the amount of the fine being a floating point number. The target variable you are predicting is a binary variable which is 1 if the fine will be paid, or 0 if the fine will not be paid. You have carefully analysed the data In this month’s column, we discuss a few more questions on machine learning and deep learning.
  • 16. CodeSport Guest Column 16 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com By: Sandya Mannarswamy The author is an expert in systems software and is currently working as a research scientist at Conduent Labs India (formerly Xerox India Research Centre). Her interests include compilers, programming languages, file systems and natural language processing. If you are preparing for systems software interviews, you may find it useful to visit Sandya’s LinkedIn group ‘Computer Science Interview Training India’ at http://www. linkedin.com/groups?home=HYPERLINK “http://www.linkedin. com/groups?home=&gid=2339182”&HYPERLINK “http://www. linkedin.com/groups?home=&gid=2339182”gid=2339182 set, and have included both the age of the offender and the residential street number as features in your classifier. Remember that both of these are numeric quantities. While you are confident of your system working well, your friends suggest that using the ‘street number’ as the numeric feature is incorrect. They suggest that it has to be combined with the ‘street name’ and the combined quantity needs to be encoded as a ‘categorical’ variable. Do you agree with your friends? If yes, explain why. If not, explain why you believe their reasoning is incorrect. 5. Let us consider Question (3) from above. You decided to add 3000 images from the indoor cameras to the training set of 100,000 Internet pet images. You then decided to use 1000 images from the indoor cameras as the validation/development set for hyper-parameter tuning. The remaining 1000 indoor camera images will be used as the test set. Given that you have only 3000 images in your training set which are actually from the application, for which you are building your classifier, you still have the issue of training and validation/test data distributions being different. If your trained model does not do well on the validation/development data set, how would you find out whether it is because of under-fitting or not being able to generalise well? Essentially, can you come up with a method of splitting your input data set so that you can find and fix the issue of the classifier under-fitting to the training data? 6. One way to address the issue mentioned in Question (5) above is to split the training set into two parts, with one part being used for training and the other part known as the training-dev set, which will be used to evaluate whether the classifier can fit well with the data coming from the same distribution as the training data. Note that this split of ‘training-dev’ data set is needed only when the training data distribution and validation/test data distribution are different. The purpose of the ‘training-dev’ data set is to help determine whether the classifier can generalise well to unseen held-out data coming from the same distribution as the training data. You are told that the training error is 4 per cent and training- dev error is 9 per cent. You have built your classifier using an ‘N layer feed forward’ neural network. Now how would you improve the performance of the classifier on the training-dev set? Would you choose to increase the number of hidden layers or would you choose to increase the size of the training data? Explain the rationale behind your choice. 7. In last month’s column, we had discussed full-batch gradient descent, mini-batch gradient descent and stochastic gradient descent for the optimisation of the cost function of the neural networks. In stochastic gradient descent and mini-batch gradient descent, the optimisation process can lead to local oscillations as it tries to move towards the minimum. This can result in the algorithm taking a larger number of steps towards convergence. One way of addressing this issue is to modify the gradient descent algorithm to include momentum. Gradient descent algorithms with momentum ‘RMSProp’ and ‘Adam’ are all different variants which address this issue. Basically, instead of updating the parameters using only the gradients computed in the current iteration, a weighted average of the gradients from previous iterations as well is used for the update. Do you need gradient descent with momentum if you are told that your cost function is convex? 8. You are planning to consider using mini-batch gradient descent with momentum. Should you keep the momentum term larger or smaller during the initial part of the training? Explain the rationale behind your choice. 9. Consider the data set presented in question (4) about the Bengaluru traffic fine payment prediction problem. This data set has a number of features which are on different scales. Your friends suggest that you should normalise the inputs first. Can you explain the process of input normalisation? Does it improve prediction accuracy? If yes, explain how. If not, what is the reason behind normalising the inputs to a neural network? We all know that weights W in a feed forward neural network should not be initialised to zero. Can you explain why? Given this constraint, how would you decide the initialisation of the weights? Can you use any random values? 10. You have been asked to set up a deep learning system that can recognise faces of employees and send signals to open the entrance gate to the laboratory, as the employee approaches the gate. You have heard a lot about the advantages of end-to-end deep learning. In this case, if you decide to go with the end-to-end deep learning approach, you only provide the image of the employee approaching the door and the neural network provides an open/close signal output which can be used to drive the entrance gate. The alternative is to employ a pipeline approach, wherein the first phase identifies the ‘face part’ from the image and puts a bounding box around it. The next phase does the face match recognition to check if the approaching person is a validated employee of the company. Which approach would you choose and explain the rationale behind your choice. If you have any favourite programming questions/ software topics that you would like to discuss on this forum, please send them to me, along with your solutions and feedback, at sandyasm_AT_yahoo_DOT_com.
  • 17. Are you facing these issues at your workplace? Business Critical Apps Secured, Transparently Know more about our next generation solutions Visit www.instasafe.com Email sales@instasafe.com Call +918880220044 Enable users to work faster with a highly secure, yet simple to use secure access solution. We’ve got you covered! Hardware free, zero configuration, self-service Manage remote access securely Domain joining simplified MPLS failover made easy Control Cloud Applications: Google, MS O365, ZOHO, Salesforce, etc.
  • 18. 18 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com Hewlett Packard, a global leader in the printer, laptop and PC space, has launched a palm-sized printer in India – the Sprocket. This tiny printer allows users to take physical copies of photographs stored in their mobile phones. Smartphones are now the default and instantly available device for taking pictures of most important events, trips and memorable moments. The Sprocket enables users to take print copies of images from their smartphones – anywhere and at any time. It is compatible with both Android and iOS devices, and can be connected via Bluetooth. Apart from printing pictures, the device can also be fun for kids as it can convert images into funky stickers. The device uses a special zinc technology photo paper, which easily Address: Motorola Solutions India Pvt Ltd, 415/2, Mehrauli Gurgaon Road, Sector 14, Near Maharana Pratap Chowk, Gurugram, Haryana 122001 NEW PRODUCTS Palm-sized pocket printer from Hewlett Packard Affordable and light Bluetooth headphones from Motorola Indian electronics manufacturer Ambrane has officially announced the launch of a new and affordable smartwatch – the ASW11. It looks like a regular watch, but the ASW11 turns into a smartwatch and fitness tracker once connected with a smartphone or a tablet via Bluetooth. The device offers a premium range of technologies, and has an LCD display with a high resolution and good visibility. The multi-functional watch allows users to accept or reject calls or snooze alarms. It also enables the user to create short reminders and to-do lists to manage hectic schedules. The feature-loaded smartwatch offers text messages, email alerts, fitness tracking as well as sleep monitoring. Ambrane launches pocket-friendly smartwatch Motorola has introduced its latest Bluetooth headphones in India, called the Motorola Pulse Escape. The light and pocket-friendly headphones offer the latest features in this price segment. Designed with 40mm oversized drivers, the headphones offer an effective noise isolation and immersive music experience. The foldable ear-cup design enables users to carry them with comfort and style. On the battery front, the device offers 10 hours of playtime on a single charge, and up to two hours of playtime with just a 30-minute charge. The headphones feature A2DP (Advanced Audio Distribution Profile), HFP (Hands Free Protocol) and AVRCP (Audio/Video Remote Control) profiles. They are compatible with all Android and Apple smartphones and tablets, and support the related voice assistants. They also come with integrated multi- point technology that allows them to be connected to up to two smartphones at the same time. The device offers an 18.2 metre range, Bluetooth 4.2 connectivity and a 3.5mm headphone jack. The Motorola Pulse Escape headphones are available in black and white, online and at retail stores. Address: Ambrane India, C-91/7, Wazirpur Industrial Area, Delhi 110052; Ph: 011-48089900 fits into the printer for 5cm x 7.6cm (2 inch x 3 inch) photos. Thus the printer allows users to turn their memories and events into brightly coloured, durable, smudge-proof, water-resistant and tear- resistant photos. The Sprocket is available in black, white and red, online and at HP stores. Address: HP India Sales Pvt Ltd, 6th Floor, Tower D, Global Business Park, Mehrauli-Gurgaon Road, Gurugram, Haryana 122002; Ph: 088266-13522 Price: ` 1,999 Apart from these features, the watch can also be used to manage music, and comes with an inbuilt pedometer and ‘sedentary reminder’. The Ambrane ASW11 is available in ‘universal black’ online and at retail stores. Price: ` 8,999 Price: ` 2,999
  • 19. www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 19 Portronics launches multi-functional portable projector The prices, features and specifications are based on information provided to us, or as available on various websites and portals. OSFY cannot vouch for their accuracy. Compiled by: Aashima Sharma Digisol’s wireless security camera A provider of digital and portable solutions, Portronics has launched its latest projector, called Progenie. The device is a 100-lumen multimedia portable LED projector offering a 203cm (80 inch) screen and an 854 x 480 pixels resolution. It uses Texas Instruments’ DLP technology to ensure excellent picture quality. Address: Portronics Digital Private Limited, 4E/14, Azad Bhavan, Jhandewalan, New Delhi 110055; Ph: 09555245245 Address: Digisol Systems Ltd, Smartlink House, Plot No. 5, Bandra-Kurla Complex Road, Santa Cruz (E), Mumbai 400098 A subsidiary of Smartlink Network Systems Ltd and a leading player in the networking and CCTV surveillance space, Digisol has launched a new wireless pan/tilt IP camera – the DG-SC3600W. The camera comes with all the mounting accessories needed for easy installation on walls and ceilings. The plug-and-play camera uses an application on a smartphone which connects with existing Wi-Fi/Internet connections, via which the surveillance can be done online through the cloud. It has a microSD card slot for storage of up to 64GB, on which the recordings are stored and can be retrieved using the application. Price: ` 4,999 With an extremely portable size of just over 7.6cm x 7.6cm x 3.8cm (3” x 3” x 1.5”), the device can project crystal clear multimedia content from a variety of sources. It is useful for homes, offices as well as gaming due to its screen size. It can easily be connected to a DVD player, microSD card, USB drive and HDMI enabled device like laptops, streaming dongles, etc. The device comes with a multi-functional remote control with the usual functions like play, pause, stop, zoom, freeze, etc, for comfortable and hassle-free usage. The projector works on 110V-240V 50/60Hz AC power and comes with a built-in fan that keeps Price: ` 25,599 the temperature under control. With the LED’s life span going up to 20,000 hours, the Progenie allows the user to charge 5V devices like Android, iOS or Windows smartphones, cameras, etc, from a USB port. Weighing just 200g, the user can easily carry the printer around in a small handbag or a laptop bag. The Portronics Progenie is packed with an HDMI cable, AVI cable and a tripod. It is available at both online and offline stores. Apart from these features, the camera comes with IR LED technology for clear night vision up to a 10-metre distance, enabling the camera to ‘see’ in absolute darkness. The pan/tilt function gives maximum coverage of the area under surveillance. The highly flexible camera allows users to remotely monitor areas from a computer and smartphone. Additionally, the camera comes with 1 megapixel resolution support, a free app for Apple iOS and Android for cloud viewing, a built-in microphone and speaker for two-way audio, email/app alerts and motion based recording. The Digisol DG-SC3600W is available at retail stores.
  • 20. Prabhakar Jayakumar, country manager, DigitalOcean “DIGITALOCEAN IS BUILT ON A FOUNDATION OF OPEN SOURCE” As open source is making things significantly better for developers, cloud service providers have started using the power of the open source community to grow their presence. DigitalOcean, a New York-headquartered company, founded in June 2011, is among the leading hosting companies worldwide and is one of the few cloud providers to have deployed open source-based technologies predominantly. In an exclusive conversation with Jagmeet Singh of OSFY, Prabhakar Jayakumar, country manager, DigitalOcean, highlights the key open source initiatives of the company. Edited excerpts: QWhat does DigitalOcean have for developers around the globe? DigitalOcean gives developers better software and tools to launch and scale any application in the cloud. By offering the simplest platform, the most transparent pricing and an elegant user interface, we reduce complexity so developers can build great software – faster. QFrom the available portfolio, what are the major open source-focused developments by DigitalOcean? DigitalOcean is built on a foundation of open source. Whether you look at our hypervisors that are running kernel-based virtual machines (KVM) or our Rails apps running on our Kubernetes clusters, they are all open source-powered stacks. On top of that, our users are deploying open source based solutions to our platform every single day. One of our core values as a company is that our community is bigger than us. We provide hosting credits to many open source projects, host several meetups in our office and even support them across the world. We are also members of organisations such as the Cloud Native Foundation and Ruby Together to help support the technologies we use. Additionally, Hacktoberfest is a yearly initiative we produce in partnership with GitHub to generate excitement around contributing to open source in the month of October. The aim of this initiative is to inspire developers to contribute back to the projects they use. Last year, over 10,000 people completed the challenge opening up over 92,000 pull-requests to over 29,000 repos. QDo you feel it is difficult to support open source being a cloud service provider? No, it is not difficult. For U & Me Interview 20 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com Interview
  • 21. QWhat was the idea behind bringing DigitalOcean to a market that already has Amazon Web Services, Google Cloud and Microsoft Azure? When we launched back in 2012, the other cloud providers were neglecting the software developer and focused on the enterprise/legacy customers. Prices were too high, the offerings were too complex to navigate and the UI was unnecessarily complex. We wanted to provide an experience for developers around the cloud that was simple and intuitive, at the best price-to-performance value. QHow is the marketing model adopted by DigitalOcean different from the ones opted by market leaders like Amazon, Google and Microsoft? As a company, we are focused on collaborating and contributing to developer communities around the world. We drive activities ranging from workshops and hackathons, to coding contests, webinars and conferences to engage with the developer community. Our meetup chapters are operational across more than 60 cities globally, and the local developer communities use these forums to share best practices and learn from subject matter experts on a wide range of technical topics, including but not limited to the cloud and DevOps. Our community site also provides extensive tutorials and guides for developers learning to work with Linux and those seeking to create complex set- ups within their infrastructures. QWhy does DigitalOcean primarily focus on developers instead of targeting enterprises? As a company that predominantly comprises software developers, we understand and empathise with the pain points of the developer community. When we started in 2012, we found a market gap that had to be addressed. Developers wanted to be relieved of the burdens around infrastructure management, and have the complexity of wrestling with complicated bills and unwieldy APIs developers as much as it does for their counterparts in other parts of the globe. QHow do you manage to fulfil the ever-growing cloud demand in the Indian market? Not only do we plan and commission our infrastructure to meet the growing demand of our customers but we also work towards making our latest offerings, such as block storage and load balancers, available in our India data centre. QWhat are the prime hindrances for Indian developers opting for cloud-first platforms? While the cloud is the new reality and developers are already aware of the benefits that a cloud platform could bring to their business, there are some misconceptions around security and platform availability (up times). However, these are unfounded concerns and these misconceptions have largely been debunked. QWhat are the key skills a developer requires to pick a solution from DigitalOcean? At DigitalOcean, our mission is to simplify infrastructure and create an experience that developers love. There are no technical prerequisites for using our platform. In fact, we have customers with little to no knowledge of technology, using our platform to perform a variety of tasks including hosting their websites or blogs. For those who need help, we have thousands of tutorials that provide detailed instructions on using our platform for a wide range of use cases. QWhat do you think about the future of the cloud in India? India is home to the fastest growing ecosystem for startups and entrepreneurs. With the number of software developers throughout India expected to grow to over five million over the next couple of years, India is poised to become the largest developer market in the world. We’re focused on making it easier than ever before for professional developers from India, and around the world, to deploy and scale their businesses. removed from their development process. Moreover, we focus on doing the heavy- lifting on the infrastructure side, letting developers channelise their energies towards building applications that solve real customer problems. QWhat are the vital challenges you face while serving various cloud solutions in India? There are certain nuances to setting up a data centre facility in India. But the fact that we are able to provide an infrastructure experience to software developers in the country that matches the quality of our services in New York or Singapore speaks of the developments that India has seen over the years. Despite our operational costs being a little higher in India compared to other locations where we operate our data centres, we are maintaining a single pricing plan across all our regions worldwide. This means that our SSD-enabled cloud servers (known as Droplets) as well as all other services, such as load balancers, have identical pricing across geographies. QDo you see any growth potential for a cloud solutions provider like DigitalOcean in the country? Absolutely. In fact, India is the fastest growing international market for DigitalOcean. Our value proposition of simplicity, transparent pricing and robust performance resonates with Indian With the number of software developers throughout India expected to grow to over five million over the next couple of years, India is poised to become the largest developer market in the world. For U & MeInterview www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 21
  • 22. Using Ansible for Managing VMware Infrastructure This article is an introduction to different Ansible modules, which can be used to manage various VMware objects in VMware infrastructure. A nsible is an IT automation tool. It can configure systems, deploy software and orchestrate advanced IT tasks such as continuous deployments or zero downtime rolling updates. Many of you already know that you can manage your VMware infrastructure using Ansible. A recent development branch of Ansible, i.e., 2.4-devel (https://github.com/ansible/ansible/tree/devel), has brought in a lot of improvements in both its performance and its reliability. Managing the ESXi host with different tools The vSphere Client and the vSphere Web Client provide simple ways to manage your ESXi host and operate its virtual machines. Another way of managing this is the Virtualisation Management Object Management Infrastructure’s (VMOMI) network exposed API. VMOMI can be used by various programming language bindings like PyVmomi (https://github.com/ vmware/pyvmomi). Getting started with Ansible You can read more about Ansible official documentation at http://docs.ansible.com. Also, Open Source For You has covered various Ansible related topics in past editions. Let us discuss a few Ansible VMware modules that are essential for managing and administrating various VMware objects. Admin How To 22 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com
  • 23. www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 23 AdminHow To Managing virtual machines vmware_guest: This module is required in order to manage a virtual machine in your vCenter or standalone ESXi environment. The module can create, modify, rename and remove a virtual machine. It can also power on, power off, restart and suspend a virtual machine. The following Ansible Playbook example shows how to create a virtual machine: - name: Example Playbook for creating virtual machine hosts: localhost tasks: - name: Create a virtual machine with name testvm01 vmware_guest: datacenter: datacenter01 esxi_hostname: esxi_host_01 hostname: 127.0.0.1 name: testvm01 guest_id: centos64guest username: user password: pass@123 state: present disk: - size_gb: 1 type: thin datastore: LocalDS_0 hardware: memory_mb: 512 num_cpus: 1 osid: centos64guest scsi: paravirtual You can read more about this module at http://docs. ansible.com/ansible/latest/vmware_guest_module.html. vmware_guest_facts: You often want to get details about a virtual machine like its IP address, folder path, MAC address, etc. This module does exactly that. vmware_guest_ facts gives you all the vital information about a virtual machine. You can chain the information received from this module to various other VMware modules. --- - name: Example playbook to get facts about virtual machine hosts: localhost tasks: - name: get list of facts about virtual machines vmware_guest_facts: validate_certs: False hostname: esxi_hostname_01 username: user password: pass@123 datacenter: datacenter_01 name: testvm01 folder: /vm register: guest_facts_0001 - debug: msg=”{{ guest_facts_0001 }}” You can read more about this module at http://docs. ansible.com/ansible/latest/vmware_guest_facts_module.html. vmware_guest_find: This module provides information about the folder path in which the virtual machine is located. This information is required in various other VMware modules. The following example will find the folder path related to a virtual machine. --- - name: Example playbook to find the details of folder related to virtual machine hosts: localhost tasks: - name: Get folder path for virtual machine vmware_guest_find: validate_certs: false hostname: 127.0.0.1 username: user password: pass name: testvm01 datacenter: datacenter_01 register: folder_details - debug: msg=”{{ folder_details }}” You can read more about this module at https://github. com/ansible/ansible/blob/devel/lib/ansible/modules/cloud/ vmware/vmware_guest_find.py. vmware_guest_snapshot: When we want to preserve the state of the virtual machine at a given point of time, we take a snapshot of the virtual machine. This module provides the functionality to manage various operations related to a snapshot such as create, delete, revert and restore. This module requires information on the folder path along with the virtual machine name. Here, we can use the information provided by vmware_guest_find on the folder path. The following playbook example will show how to take a simple snapshot of a virtual machine: --- - name: Example to take a snapshot of virtual machine hosts: localhost tasks: - name: Take a snapshot vmware_guest_snapshot: hostname: esxi_hostname_01 username: root password: esxi@123 name: testvm01 folder: /vm snapshot_name: my_secure_stable_snapshot register: snap_state_001 - debug: msg=”{{ snap_state_001 }}”
  • 24. 24 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com Admin How To You can read more about this module at http://docs.ansible. com/ansible/latest/vmware_guest_snapshot_module.html. Managing clusters vmware_cluster: This module allows you to manage a cluster in your VMware infrastructure. It also allows you to set various cluster properties such as HA, vSAN and DRS. The following example will add a sample cluster in a given VMware infrastructure: --- - name: Example playbook to add a cluster hosts: localhost tasks: - name: Add cluster vmware_cluster: validate_certs: false hostname: esxi_hostname_01 username: root password: esxi@123 datacenter_name: datacenter_01 cluster_name: esx_cluster_002 register: new_cluster_details - debug: msg=new_cluster_details You can read more about this module at http://docs. ansible.com/ansible/latest/vmware_cluster_module.html. Managing data centres vmware_datacenter: This module allows you to manage a data centre in your VMware infrastructure. You can read more about this module at http://docs.ansible.com/ansible/latest/ vmware_datacenter_module.html. [1] https://github.com/ansible/ansible/tree/devel [2] http://docs.ansible.com/ansible/latest/vmware_guest_ module.html [3] http://docs.ansible.com/ansible/latest/vmware_guest_ facts_module.html [4] https://github.com/ansible/ansible/blob/devel/lib/ ansible/modules/cloud/vmware/vmware_guest_find.py [5] http://docs.ansible.com/ansible/latest/vmware_guest_ snapshot_module.html [6] http://docs.ansible.com/ansible/latest/vmware_cluster_ module.html [7] http://docs.ansible.com/ansible/latest/vmware_ datacenter_module.html [8] http://docs.ansible.com/ansible/latest/list_of_cloud_ modules.html#vmware [9] https://github.com/ansible/ansible/blob/devel/hacking/ README.md References By: Abhijeet Kasurde The author works at Red Hat and is a FOSS evangelist. He loves to explore new technologies and software. You can contact him at abhijeetkasurde21@gmail.com. Managing VMware networks You can manage various VMware network objects such as a distributed virtual switch, virtual switch, port group, distributed virtual switch port group, etc. You can read more about these various modules at http://docs.ansible.com/ansible/latest/list_of_cloud_modules. html#vmware. Ansible VMware modules are undergoing heavy development; you can take active part in this by developing or testing various modules. You can read more about hacking Ansible modules at https://github.com/ansible/ansible/blob/ devel/hacking/README.md. MONTH THEME March 2017 Open Source Firewall, Network security and Monitoring April 2017 Databases management and Optimisation May 2017 Open Source Programming (Languages and tools) June 2017 Open Source and IoT July 2017 Mobile App Development and Optimisation August 2017 Docker and Containers September 2017 Web and desktop app Development October 2017 Artificial Intelligence, Deep learning and Machine Learning November 2017 Open Source on Windows December 2017 BigData, Hadoop, PaaS, SaaS, Iaas and Cloud January 2018 Data Security, Storage and Backup February 2018 Best in the world of Open Source (Tools and Services) OSFY Magazine Attractions During 2017-18
  • 25.
  • 26. Admin How To 26 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com L inux and Windows are two of the most popular operating systems in the market. One can say that these two OSs have become essentials because of their continuous development and feature enhancements. Many people prefer one over the other. Yet, people who use Linux sometimes need the Windows operating system, and vice versa. For faster development and more security, people prefer to use Linux over Windows. So these people need Linux alongside Windows. A common solution for this problem is to use a dual boot, which basically installs the entire operating system. However, due to boot loader changes (like UEFI mode), configuring dual boot becomes difficult. This article is about running Linux on Windows, without using the dual boot technique. There are different ways to do so, one of the most popular being using a virtual machine. Virtual machines Virtualisation is fairly old technology now. It was started around 1980 by IBM. So, currently, this technology is pretty stable. We can create Linux virtual machines in Windows using software like Virtual Box, VMware Player, and VMware Workstation. If you would like to run Linux on Windows and have never used a virtual machine, this tutorial explains how you can do so in a few simple steps. A virtual machine provides the same functionality as a physical computer, but it is an emulation of a physical computer. The virtual machine can be created or destroyed at any moment and it will not impact the actual operating system, which is the best part about using it. To install Linux on Windows, we just require two things — the software to create a virtual machine which is Virtual Box (free software) and an ISO file of the operating system. The installation process is pretty simple, like installing any software in Windows. The steps for installing Ubuntu (a favourite Linux flavour) inside Windows are given below. The first step is to enable virtualisation technology in the BIOS. If you have already enabled it, you can skip this step. You need to power on the system and go to the BIOS setup by pressing F2, Del or the Enter key, depending upon your computer model. After that, under CPU Configuration -> System Configuration -> Advanced or Security Tab, we need to find Virtualization Technology or Intel Virtualization Technology. If the option is disabled, then it must be enabled. If it’s already enabled, skip this step. If you get any of the following error messages at any point Using a Virtual Machine to Run Linux on Windows
  • 27.
  • 28. Admin How To 28 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com of time, it means that virtualisation technology is not enabled for you and you need to enable it: ƒ VT-x/AMD-V hardware acceleration is not available on your system ƒ This host supports Intel VT-x, but Intel VT-x is disabled ƒ The processor on this computer is not compatible with Hyper-V If you have not installed Virtual Box, then you can go to the links https://www.virtualbox.org/wiki/Downloads and http://download.virtualbox.org/virtualbox/5.1.28/ VirtualBox-5.1.28-117968-Win.exe, and download and install it. The steps are very straightforward; hence, I am not mentioning them here. Open the Virtual Box application once it is installed. It will look like what’s shown in the snapshot in Figure 1. Click on the New button and select the OS category before providing the appropriate name to the virtual machine. Assign RAM as per your requirements. Ubuntu can run on 512MB, which is the minimum requirement to run Linux smoothly on Windows. Since I have 8GB RAM in my laptop, I have chosen 2048MB (2GB) RAM. Figure 1: Virtual machine home Figure 3: Assigning RAM Figure 2: Creating a virtual machine Figure 4: Select virtual hard disk Figure 5: Select virtual hard disk type The next option is to select the virtual hard disk. Since we are creating a new virtual machine, we will use the ‘Create virtual hard disk now’ option. Here we need to select the virtual hard disk type. Since
  • 29.
  • 30. Admin How To 30 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com By: Maulik Parekh The author has an M. Tech degree in cloud computing from VIT University, Chennai. He can be reached at maulikparekh2@gmail.com. Website: https://www.linkedin. com/in/maulikparekh2. [1] https://www.virtualbox.org/wiki/Downloads Reference Figure 6: Disk space Figure 9: Install Ubuntu like any normal OSFigure 7: Selecting the ISO file Figure 8: Installation started we are using Virtual Box, we will use VDI which is a Virtual Box disk image. There are two options here — we can either use a fixed size or a dynamic size. It is better to opt for the latter so that the size can be increased if required. Allocate the disk space as per your requirement. Once it is done, go to the virtual machine that you have created, right-click on it and go to the settings of that machine. Now we must attach the ISO file so that while we run the VM, it should know the location of the Ubuntu ISO file. As shown in the snapshot (Figure 7), click on the DISK button and browse the .ISO file of Ubuntu OS. The ISO file is now attached. Next, go to the virtual machine, right-click on it and start it. You will get the Ubuntu installation screen, which is similar to installing any operating system that you have chosen. The remaining steps are similar to the installation of any OS. If you want to close the virtual machine window, you can do one of three things. 1. Save the machine: This is like hibernate. The system will resume from wherever you left off, the next time when you start — it will show you the same task at which you paused. 2. Send the ‘Shutdown’signal: This is like pressing the power button. It will allow normal shutdown of the virtual machine. 3. Power off the machine: This is like pulling a power cable. It is for a hard shutdown which is required in scenarios where a VM gets hung or is not working properly. At any time, if you want to destroy the virtual machine you created, right-click and select the Remove option. This will remove all the related files. In this article, we have seen the basic operations of a virtual machine. We can explore other options in a subsequent one.
  • 31. www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 31 AdminHow To P rovisioning is the first step in an application’s deployment process. In a cloud environment, software can be run from a Docker container, virtual machine or bare metal, and Ansible can be used for provisioning such systems. In this article, we explore how to use Ansible to launch Docker containers and provision virtual machines. Setting it up Let’s create an Ansible playbook for the ‘Get started with Docker Compose’ composetest example available at https://docs.docker.com/compose/gettingstarted/. The Ansible version used on the host system (Ubuntu x86_64) is 2.2.0.0. You will need to install Docker CE and docker- compose on Ubuntu. Follow the installation guide provided at https://docs.docker.com/engine/ installation/linux/ docker-ce/ubuntu/#install-using-the-repository to install Docker CE. You can then install docker-compose using the APT package manager: $ sudo apt-get install docker-compose The composetest/ folder consists of the following files: composetest/app.py composetest/docker-compose.yml composetest/Dockerfile composetest/provision.yml DevOps Series: Provisioning with Ansible Ansible is the simplest way to automate apps and IT infrastructure. It meshes well with DevOps to deploy apps. In this ninth article in the series on DevOps, we explore the use of Ansible for launching Docker containers and provisioning virtual machines. composetest/requirements.txt The app.py file contains a basic Flask application that communicates with a backend Redis database server. Its file contents are as follows: from flask import Flask from redis import Redis app = Flask(__name__) redis = Redis(host=’redis’, port=6379) @app.route(‘/’) def hello(): count = redis.incr(‘hits’) return ‘Hello World! I have been seen {} times.n’. format(count) if __name__ == “__main__”: app.run(host=”0.0.0.0”, debug=True) An HTTP request to the Flask application returns the text string ‘Hello World! I have been seen N times.’ This will be run inside a Docker container. The requirements.txt file is provided to list the dependencies required for the project: flask
  • 32. Loonycorn Some of our recent courses: On Udemy:  Building Voice-Enabled Apps with Amazon Alexa  Building ChatBots with Amazon Lex  GCP: Complete Google Data Engineer and Cloud Architect Guide On Pluralsight:  Unsupervised Machine Learning with TensorFlow  Classification Models in TensorFlow  Understanding the Foundations of TensorFlow
  • 33. LoonycornOur Content:  The Ultimate Computer Science Bundle 9 courses | 139 hours  The Complete Machine Learning Bundle 10 courses | 63 hours  The Complete Computer Science Bundle 8 courses | 78 hours  The Big Data Bundle 9 courses | 64 hours  The Complete Web Programming Bundle 8 courses | 61 hours  The Complete Finance & Economics Bundle 9 courses | 56 hours  The Scientific Essentials Bundle 7 courses | 41 hours  ~30 courses on Pluralsight ~80 on StackSocial ~75 on Udemy About Us:  ex-Google | Stanford | INSEAD  80,000+ students
  • 34. 34 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com Admin How To redis Now let’s provision a minimalistic Docker container that has support for Python and is based on Alpine (a security-oriented, lightweight GNU/Linux distribution). The Dockerfile for the application is provided below for reference: FROM python:3.4-alpine ADD . /code WORKDIR /code RUN pip install -r requirements.txt CMD [“python”, “app.py”] The Docker-compose.yml file is used to create the images and will also be used by Ansible. It defines the services that will be deployed in the containers: version: ‘2’ services: web: build: . ports: - “5000:5000” redis: image: “redis:alpine” ports: - “6379:6379” Provisioning The Python Web application will be running on port 5000, whereas the Redis database server will be listening on port 6379. We will first build the application using the following code: $ docker-compose up Creating composetest_web_1 Creating composetest_redis_1 Attaching to composetest_web_1, composetest_redis_1 redis_1 | 1:C 05 Oct 11:40:49.067 # oO0OoO0OoO0Oo Redis is starting oO0OoO0OoO0Oo redis_1 | 1:C 05 Oct 11:40:49.067 # Redis version=4.0.2, bits=64, commit=00000000, modified=0, pid=1, just started redis_1 | 1:C 05 Oct 11:40:49.067 # Warning: no config file specified, using the default config. In order to specify a config file use redis-server /path/to/redis.conf redis_1 | 1:M 05 Oct 11:40:49.070 * Running mode=standalone, port=6379. redis_1 | 1:M 05 Oct 11:40:49.070 # WARNING: The TCP backlog setting of 511 cannot be enforced because /proc/sys/net/core/ somaxconn is set to the lower value of 128. redis_1 | 1:M 05 Oct 11:40:49.070 # Server initialized redis_1 | 1:M 05 Oct 11:40:49.070 # WARNING overcommit_ memory is set to 0! Background save may fail under low memory condition. To fix this issue add ‘vm.overcommit_memory = 1’ to /etc/sysctl.conf and then reboot or run the command ‘sysctl vm.overcommit_memory=1’ for this to take effect. redis_1 | 1:M 05 Oct 11:40:49.070 # WARNING you have Transparent Huge Pages (THP) support enabled in your kernel. This will create latency and memory usage issues with Redis. To fix this issue run the command ‘echo never > /sys/kernel/ mm/transparent_hugepage/enabled’ as root, and add it to your /etc/rc.local in order to retain the setting after a reboot. Redis must be restarted after THP is disabled. redis_1 | 1:M 05 Oct 11:40:49.070 * Ready to accept connections web_1 | * Running on http://0.0.0.0:5000/ (Press CTRL+C to quit) web_1 | * Restarting with stat web_1 | * Debugger is active! web_1 | * Debugger PIN: 100-456-831 If you start a browser on the host system and open the URL http://0.0.0.0:5000, you will see the text from the Flask application. You can continue to refresh the page making requests to the application, and you will see the count increasing in the text: ‘Hello World! I have been seen N times.’ Pressing Ctrl+c in the above terminal will stop the application. Let’s now create an Ansible playbook to launch these containers: - name: Provision Flask application hosts: localhost connection: local become: true gather_facts: true tags: [setup] tasks: - docker_service: project_name: composetest definition: version: ‘2’ services: web: build: “{{ playbook_dir }}/.” ports: - “5000:5000” redis: image: “redis:alpine”
  • 35. www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 35 AdminHow To register: output - debug: var: output - assert: that: - “web.composetest_web_1.state.running” - “redis.composetest_redis_1.state.running” The above playbook can be invoked as follows: $ sudo ansible-playbook provision.yml --tags setup The docker_service module is used to compose the services—a Web application and a Redis database server. The output of launching the containers is stored in a variable and is used to ensure that both the backend services are up and running. You can verify that the containers are running using the docker ps command output as shown below: $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 03f6f6a3d48f composetest_web “python app.py” 18 seconds ago Up 17 seconds 0.0.0.0:5000->5000/ tcp composetest_web_1 fa00c70da13a redis:alpine “docker- entrypoint...” 18 seconds ago Up 17 seconds 6379/tcp composetest_redis_1 Scaling You can use the docker_service Ansible module to increase the number of Web services to two, as shown in the following Ansible playbook: - name: Scale the web services to 2 hosts: localhost connection: local become: true gather_facts: true tags: [scale] tasks: - docker_service: project_src: “/home/guest/composetest” scale: web: 2 register: output - debug: var: output - name: Start container two docker_container: name: composetest_web_2 image: composetest_web state: started ports: - “5001:5000” network_mode: bridge networks: - name: composetest_default ipv4_address: “172.19.0.12” The above playbook can be invoked as follows: $ sudo ansible-playbook provision.yml --tags scale The execution of the playbook will create one more Web application server, and this will listen on Port 5001. You can verify the running containers as follows: $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES 66b59eb163c3 composetest_web “python app.py” 9 seconds ago Up 8 seconds 0.0.0.0:5001->5000/tcp composetest_web_2 4e8a37344598 redis:alpine “docker-entrypoint...” 11 seconds ago Up 10 seconds 0.0.0.0:6379->6379/tcp composetest_redis_1 03f6f6a3d48f composetest_web “python app.py” 55 seconds ago Up 54 seconds 0.0.0.0:5000->5000/tcp composetest_web_1 You can open another tab in the browser with the URL http://localhost:5001 on the host system, and the text count will continue to increase if you keep refreshing the page repeatedly. Cleaning up You can stop and remove all the running instances. First, stop the newly created Web application, as follows: $ docker stop 66b You can use the following Ansible playbook to stop the containers that were started using Docker compose: - name: Stop all! hosts: localhost connection: local become: true gather_facts: true tags: [stop] tasks: - docker_service: project_name: composetest
  • 36. 36 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com Admin How To project_src: “{{ playbook_dir }}/.” state: absent The above playbook can be invoked using the following command: $ sudo ansible-playbook provision.yml --tags stop You can also verify that there are no containers running in the system, as follows: $ docker ps CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES Refer to the Ansible docker_service module’s documentation at http://docs.ansible.com/ansible/ latest/ docker_service_module.html for more examples and options. Vagrant and Ansible Vagrant is free and open source software (FOSS) that helps to build and manage virtual machines. It allows you to create machines using different backend providers such as VirtualBox, Docker, libvirt, etc. It is developed by HashiCorp and is written in the Ruby programming language. It was first released in 2010 under an MIT licence. The Vagrantfile describes the virtual machine using a Ruby DSL, and an Ansible playbook can be executed as part of the provisioning process. The following dependencies need to be installed on the host Ubuntu system: $ sudo apt-get build-dep vagrant ruby-libvirt $ sudo apt-get install qemu libvirt-bin ebtables dnsmasq virt-manager $ sudo apt-get libxslt-dev libxml2-dev libvirt-dev zlib1g-dev ruby-dev Vagrant 1.8.7 is then installed on Ubuntu using a .deb package obtained from the https://www.vagrantup.com/ website. Issue the following command to install the vagrant- libvirt provider: $ vagrant plugin install vagrant-libvirt The firewalld daemon is then started on the host system, as follows: $ sudo systemctl start firewalld A simple Vagrantfile is created inside a test directory to launch an Ubuntu guest system. Its file contents are given below for reference: # -*- mode: ruby -*- # vi: set ft=ruby : Vagrant.configure(“2”) do |config| config.vm.define :test_vm do |test_vm| test_vm.vm.box = “sergk/xenial64-minimal-libvirt” end config.vm.provision “ansible” do |ansible| ansible.playbook = “playbook.yml” end end When provisioning the above Vagrantfile, a minimalistic Xenial 64-bit Ubuntu image is downloaded, started and the Ansible playbook is executed after the instance is launched. The contents of the playbook.yml file are as follows: --- - hosts: all become: true gather_facts: no pre_tasks: - name: Install python2 raw: sudo apt-get -y install python-simplejson tasks: - name: Update apt cache apt: update_cache=yes - name: Install Apache apt: name=apache2 state=present The minimal Ubuntu machine has Python 3 by default, and the Ansible that we use requires Python 2. Hence, we install Python 2, update the APT repository and install the Apache Web server. A sample debug execution of the above playbook from the test directory is given below: $ VAGRANT_LOG=debug sudo vagrant up --provider=libvirt Bringing machine ‘test_vm’ up with ‘libvirt’ provider... ==> test_vm: Creating image (snapshot of base box volume). ==> test_vm: Creating domain with the following settings... ==> test_vm: -- Name: vagrant-libvirt-test_ test_vm ==> test_vm: -- Domain type: kvm ==> test_vm: -- Cpus: 1 ==> test_vm: -- Feature: acpi ==> test_vm: -- Feature: apic ==> test_vm: -- Feature: pae ==> test_vm: -- Memory: 512M ==> test_vm: -- Management MAC: ==> test_vm: -- Loader:
  • 37. www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 37 AdminHow To ==> test_vm: -- Base box: sergk/xenial64-minimal- libvirt ==> test_vm: -- Storage pool: default ==> test_vm: -- Image: /var/lib/libvirt/images/ vagrant-libvirt-test_test_vm.img (100G) ==> test_vm: -- Volume Cache: default ==> test_vm: -- Kernel: ==> test_vm: -- Initrd: ==> test_vm: -- Graphics Type: vnc ==> test_vm: -- Graphics Port: 5900 ==> test_vm: -- Graphics IP: 127.0.0.1 ==> test_vm: -- Graphics Password: Not defined ==> test_vm: -- Video Type: cirrus ==> test_vm: -- Video VRAM: 9216 ==> test_vm: -- Sound Type: ==> test_vm: -- Keymap: en-us ==> test_vm: -- TPM Path: ==> test_vm: -- INPUT: type=mouse, bus=ps2 ==> test_vm: Creating shared folders metadata... ==> test_vm: Starting domain. ==> test_vm: Waiting for domain to get an IP address... ==> test_vm: Waiting for SSH to become available... test_vm: test_vm: Vagrant insecure key detected. Vagrant will automatically replace test_vm: this with a newly generated keypair for better security. test_vm: test_vm: Inserting generated public key within guest... test_vm: Removing insecure key from the guest if it’s present... test_vm: Key inserted! Disconnecting and reconnecting using new SSH key... ==> test_vm: Configuring and enabling network interfaces... ==> test_vm: Running provisioner: ansible... test_vm: Running ansible-playbook... PLAY ******************************************************** TASK [Install python2] ************************************** ok: [test_vm] TASK [Update apt cache] ************************************* ok: [test_vm] TASK [Install Apache] *************************************** changed: [test_vm] PLAY RECAP ************************************************** test_vm : ok=3 changed=1 unreachable=0 failed=0 Since you have installed virt-manager, you can now open up the Virtual Machine Manager to see the instance running. You can also log in to the instance using the following command from the test directory: $ vagrant ssh After logging into the guest machine, you will find its IP address using the ifconfig command. You can then open a browser on the host system with this IP address to see the default Apache Web server home page, as shown in Figure 1. Figure 1: Apache Web server page By: Shakthi Kannan The author is a free software enthusiast and blogs at shakthimaan.com.
  • 38. Rajarshi Bhattacharyya, country head, SUSE India (Srilanka, Bangladesh and Nepal) “THE ACCEPTANCE OF OPEN SOURCE AMONG INDIAN ENTERPRISES HAS BEEN REMARKABLE” What are the roadblocks to the success of an open source platform in India? Rajarshi Bhattacharyya, country head, SUSE India, answers this question in an exclusive conversation with Jagmeet Singh of OSFY. Edited excerpts... QHow has SUSE grown in India? Completing 25 successful years feels great! Founded in 1992, SUSE has come a long way in the Linux market. We are constantly involved with the open source community and have many ‘firsts’ to our credit. We were the first enterprise OpenStack Cloud distribution, the first Linux on the mainframe, and also the first Linux to make KVM and Xen available. Besides, we are the primary sponsor of the community-supported openSUSE Project, which develops the openSUSE Linux distribution. Gone are the days when SUSE was known merely as a distro used by a group of edgy techies. SUSE is now a common name in the IT industry, and that has not happened overnight. The combination of a clear strategy, a strong and buzzing community, innovation beyond what anyone imagined and the conviction to make it big, have made SUSE a success story. In India, we are growing by double digits, and with open source being at the heart of the Indian government’s IT Policy, we are expanding at a significant rate. SUSE powers the ‘Make in India’ initiative established by the government, by enabling cloud services and value- added service providers with cutting- edge, enterprise-class open source technologies. Moreover, adoption of open solutions from SUSE allows these organisations to build products and solutions that are comparable to their foreign counterparts. QDo you see any notable differences between India and developed regions like the US and UK, as an open source solutions provider? India has a very distinct IT policy which is governed by open standards and actively promotes adoption of open source. So, being an open source For U & Me Interview 38 | NOVEMBER 2017 | OPEN SOURCE FOR YOU | www.OpenSourceForU.com Interview
  • 39. company, we have significant support from the authorities. Apart from the government, enterprises in India are going global, and in a fiercely competitive environment, organisations look for tremendous cost-effectiveness, as well as flexibility and reliability as the key deciding factors when it comes to technology adoption. Open source is the perfect choice to help enterprises overcome all such hurdles. QWhat are the major challenges for an open source company like SUSE to operate profitably in the Indian market? Today, the major challenge that an open source organisation faces in India is the unavailability of skilled resources. Open source organisations such as SUSE have been making huge efforts to popularise the adoption of open source right from the elementary school to a higher level of educations. There are a lot of universities, school boards and technical education centres nowadays that are adopting open source education as a part of their ICT curriculum. QHow do you overcome those challenges? SUSE invests heavily in developing course content on cutting-edge new technologies. There are online academies as well as on-demand training available to master these newer technologies. On top of these, YouTube releases by experts help individuals to master the available technologies. There is a unique programme wherein SUSE enables academic institutions to subscribe to all its course materials at zero cost. These materials are regularly updated. Also, students and individuals can get themselves certified on technologies like OpenStack and software defined storage. QWhat are your prime strategies to enable developer engagement around your offerings? We have SUSE Studio that allows developers to build applications on well-defined tiering system among our channels and have a wide network of both Tier-1 and Tier-2 to cater to the needs of various markets and customers across India. Recently, we collaborated with 70-80 partners, and it is a constantly growing network in the country. Channel expansion is of great strategic importance to our business. QWhat makes SUSE Linux a distinct option in the growing space of open source distributions? SUSE Linux is reliable, highly scalable and includes cutting-edge technology. Moreover, it comes with best-in-class support. QDo Indian enterprises view Linux as a part of their IT deployments nowadays? Is there any difference from the past? The acceptance of open source among Indian enterprises has been remarkable. Looking back at Linux adoption just five years ago — almost 60 per cent of servers were on proprietary OSs, and only 35 per cent used to be on Linux in the data centre space. Now, the mix has changed dramatically, and Linux has taken over proprietary systems. In the computing space, organisations are looking at an alternative option, because most of the applications are Web enabled and need a browser to access them. They do not see the need to pay for a browser. Application software like LibreOffice, which is a complete office suite, does everything that Microsoft Office does. This is exactly why large customers like the government of India have consciously decided to embrace open source. Neither government organisations nor enterprises want vendor lock-in. Also, with a proprietary system, you lose the freedom of choice. QWhat are the key drivers enhancing Linux adoption in developing markets like India? Adoption of OpenStack Cloud and software defined storage (SDS) are the most disruptive technology trends in the open source technologies. Recently, the company has also released a Container-as- a-Service (CaaS) to cater to the developer community. The new model is the way forward for DevOps across India. Also, SUSE encourages the developer community by bringing in a straightforward ISV (independent software vendor) certification process, which allows ISVs to get their products certified easily on SUSE. As a community programme, Open SUSE is a huge success. QDo you believe community support is important to grow an open source product? Indeed it is! Open source communities encourage innovation through collaboration. They provide a platform for developers to keep improving the programs or code in line with the latest technological advancements. Without open source, many of the technologies we enjoy today would never have been developed or would be restricted from being widely used because of the patent law. But thanks to open source communities, those technologies have developed at a breakneck pace over the past few decades. QHow do you manage to market the entire SUSE portfolio to Indian customers? We are a 100 per cent channel-driven company, and our partners are the key to our success. They are valued the most within the organisation. We have separate teams for managing large, medium and small channels. We also maintain a In India, we are growing by double digits, and with open source at the heart of the Indian government's IT Policy, we are expanding at a significant rate. For U & MeInterview www.OpenSourceForU.com | OPEN SOURCE FOR YOU | NOVEMBER 2017 | 39