0% found this document useful (0 votes)
89 views49 pages

Cloud Computing Lab Record

The document outlines the steps to configure Hadoop 2.x on a system. It involves setting up the Java environment, creating a dedicated Hadoop user, enabling SSH access, extracting and installing Hadoop files, and modifying configuration files such as core-site.xml, hdfs-site.xml and yarn-site.xml to configure the NameNode and DataNode. Environmental variables are set in files like .bashrc and hadoop-env.sh to point to the Hadoop home directory and Java path.

Uploaded by

Nithishkumar V
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
89 views49 pages

Cloud Computing Lab Record

The document outlines the steps to configure Hadoop 2.x on a system. It involves setting up the Java environment, creating a dedicated Hadoop user, enabling SSH access, extracting and installing Hadoop files, and modifying configuration files such as core-site.xml, hdfs-site.xml and yarn-site.xml to configure the NameNode and DataNode. Environmental variables are set in files like .bashrc and hadoop-env.sh to point to the Hadoop home directory and Java path.

Uploaded by

Nithishkumar V
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 49

SAVEETHA SCHOOL OF ENGINEERIING

DEPARTMENT OF COMPUTER SCIENCE AND ENGINEERING

CSA15 – CLOUD COMPUTING AND BIG DATA ANALYTICS


LABORATORY

INDEX
S.N DATE EXPERIMENT NAME MARK SIGN
O S
1. Create a simple cloud software application and provide it as
a service using any Cloud Service Provider to demonstrate
Software as a Service (SaaS).
2. Create a Virtual Machine with 1 vCPU, 2GB RAM and
15GB storage disk using a Type 2 Virtualization Software
3. Create a Virtual Hard Disk and allocate the storage using
VM ware Workstation
4. Create a Snapshot and Cloning of a VM and Test it by
loading the Previous Version/Cloned VM
5. Demonstrate Infrastructure as a Service (IaaS) by Creating a
Virtual Machine using a Public Cloud Service Provider
(Azure/GCP/AWS), configure with minimum CPU, RAM,
and Storage and Launch the VM image.
6. Create a Simple Web Application using Java or Python and
host it in any Public Cloud Service Provider
(Azure/GCP/AWS) to demonstrate Platform as a Service
(PaaS)
7. Create a Storage service using any Public Cloud Service
Provider (Azure/GCP/AWS) and check the public
accessibility of the stored file to demonstrate Storage as a
Service
8. Create a SQL storage service and perform a basic query
using any Public Cloud Service Provider (Azure/GCP/AWS)
to demonstrate Database as a Service (DaaS)
9. Perform the basic configuration setup for Installing Hadoop
2.x like Creating the HDUSER and SSH localhost
10. Install Hadoop 2.x and configure the Name Node and Data
Node.
11. Launch the Hadoop 2.x and perform MapReduce Program
for a Word Count problem
EXP NO 1: CREATE A SIMPLE CLOUD SOFTWARE APPLICATION AND
PROVIDE IT AS A SERVICE USING ANY CLOUD SERVICE PROVIDER TO
DEMONSTRATE SOFTWARE AS A SERVICE (SAAS).
DATE:
AIM:

PROCEDURE:

IMPLEMENTATION:
STEP1: GOTO ZOHO.COM
STEP 2: LOGINTOTHE ZOHO.COM

STEP 3: SELECT ONE APPLICATION

STEP 4: ENTER APPLICATION NAME


STEP 5: CREATED NEW APPLICATION

STEP 6: SELECT ONE FORM

STEP 7: THE SOFTWARE HASE BEEN CREATED.


RESULT:
EXPNO 2: CREATE A VIRTUAL MACHINE WITH 1 VCPU, 2GB RAM AND 15GB
STORAGE DISK USING A TYPE 2 VIRTUALIZATION SOFTWARE
DATE:
AIM:

PROCEDURE:

IMPLEMENTATION:
STEP 1:
DOWLOAD VMWARE WORKSTATION AND INSTALLED AS TYPE 2
HYPERVISOR
STEP2: DOWLOAD UBUNTU OR TINY OS AS ISO IMAGE FILE

STEP 3: IN VMWARE WORKSTATION->CREATE NEW VM

STEP 4: DO THE BASIC CONFIGURATION SETTINGS.


STEP 4: CREATED TINYOS VIRTUAL MACHINE

STEP 5: LAUNCH THE VM

RESULT
EXP 3: CREATE A VIRTUAL HARD DISK AND ALLOCATE THE STORAGE
USING VM WARE WORKSTATION
DATE:
AIM:

PROCEDURE:

IMPLEMENTATION:
STEP 1:
GOTO VM WARE WORKSTATION

STEP2: RIGHT CLICK THE VM AND GOTO THE SETTINGS


STEP 3: ADD HARDWARE WIZARD AND SELECT SCSI AND CLICK NEXT

STEP 4: CREATE NEW VIRTUAL DISK


STEP 5: SELCT THE DISK SIZE AS 2.0. AND SELCT SPLIT VIRTUAL DISK INTO
MULTIFILES.

STEP 6: GIVE NAME AND CLICK THE FINISH


RESULT:
EXPNO 4: CREATE A SNAPSHOT AND CLONING OF A VM AND TEST IT BY
LOADING THE PREVIOUS VERSION/CLONED VM
DATE:
AIM:

PROCEDURE:

IMPLEMENTATION:
STEP 1: GOTO VMWARE WORKSTATION

STEP 2: CREATE FILES ON DESKTOP


STEP 2: CLICK ON VM AND SELECTS SNAPSHOT-> TAKE SNAPSHOT.
STEP 4: SNAPSHOT IS BEING DONE

CLONING OF A VM
STEP 1: GO TO VM AND GOTO MANAGE AND CLICK CLONE
STEP 2: CLICK CLONE

STEP 3: SELECT THE FULL CLONE


STEP 4: AFTER CLONE AGAIN OR VM IS OPENED.

RESULT:
5.DEMONSTRATE INFRASTRUCTURE AS A SERVICE(IAAS) BY CREATING A
VIRTUAL MACHINE USING A PUBLIC CLOUD SERVICE
PROVIDER(AZURE/GCP/AWS) CONFIGURE WITH MINIMUM CPU,RAM AND
STORAGE AND LAUNCH THE VM IMAGE.
AIM:

Procedure:

Implementation:
STEP1:CREATE AN ACCOUNT IN MICROSOFT AZURE.

STEP2: GOTO RESOURCE GROUP AND CREATE A RESOURCE GROUP.


STEP3: GIVE NECESSARY THINGS FOR RESOURCE GROUP.
STEP4: CREATE A VIRTUAL NETWORK FOR TO CREATE A VIRTUAL
MACHINE .

STEP5: NOW CREATE A VIRTUAL MACHINE WITH UR IP ADDRESS AN


USERNAME AND PASSWORD FOR YOUR VIRTUAL MACINE.
STEP6: AND YOUR VIRTUAL MACHINE IS DEPLOYED.

STEP7: NOW CONNECT THE VIRTUAL MACHINE AND DOWNLOAD THE RDP FILE
TO OPEN YOUR WINDOWS VIRTUAL MACHINE.
STEP8: CREATED A NEW WINDOWS VIRTUAL MACHINE.

RESULT:
6.CREATE A SIMPLE WEB SITE USING ANY PUBLIC CLOUD SERVICE
PROVIDER (AZURE/GCP/AWS) AND CHECK THE PUBLIC ACCESSIBILITY OF
THE STORED FILE TO DEMONSTRATE STORAGE AS A SERVICE
AIM:

Procedure:

IMPLEMENTATION:
STEP1: FIRSTLY GO TO APPSERVICE TO CREATE AN WEBAPP.
STEP2: ENTER THE RESOURCE GROUP AND WEBAPP NAME AND REGION
AND SELECT THE LINUX OS.

STEP3: AFTER ENTER THE ALL THE NECESSARY THINGS CLICK THE
REVIEW AND CREATE AND CLICK THE CREATE THE WEB APP.

STEP4: AND OUR DEPLOYMENT IS COMPLETED.


STEP5: GOTO WEBSITE URL LINK.

STEP6: THIS IS OUR WEBAPP SERVICE.


7.CREATE A STORAGE SERVICE USING ANY PUBLIC CLOUD SERVICE
PROVIDER (AZURE/GCP/AWS) AND CHECK THE PUBLIC ACCESSIBILITY OF
THE STORED FILE TO DEMONSTRATE STORAGE AS A SERVICE.
AIM:

PROCEDURE:

IMPLEMENTATION:

STEP1: OPEN AZURE AND GOTO STORAGE ACCOUNTS AND CREATE


STOROAGE ACCOUNT

STEP2: ENTER THE RESOURC GROUP AND AND STORAGE ACCOUNT NAME
AND REVIEW AND CREATE AND CLICK TH CREATE AND YOUR STORAGE
ACCOUNT WILL BE DEPLOYED SUCESSFULLY.
STP3: AND OUR STORAGE ACCOUNT IS CREATED.

STEP5: GOTO STATIC WEBSITE


STEP6: AND ENABLE AND ENTER YOUR INDEX AND ERROR HTML
FILESNAMES.
STEP7: AND GOTO STORAGE EXPLORR(REVIEW) AND AND GOTO BLOB
CONTAINERS AND WEB AND UPLOAD THE TWO HTML FILES INIT

STEP8: AND AGAIN RETURN TO STATIC WEBSITE AND OPEN THE PRIMARY
LINK AND YOUR WEB PAGE IS CREATED

RESULT:
8.CREATE A SQL STORAGE SERVICE AND PERFORM A BASIC QUERY USING
ANY PUBLIC CLOUD SERVICE PROVIDER (AZURE/GCP/AWS) TO
DEMONSTRATE DATABASE AS A SERVICE (DAAS)

AIM:

PROCEDURE:

IMPLEMENTATION:

STEP1: GOTO AZURE AND GOTO SQLDATABASE.

STEP 02:- Now Create a Sql Databse


STEP3: SELECT THE RESOURCE GROUP AND ENTER THE SERVERNAME
THAT APPLICABLE.

STEP4: IN NETWORKING SELECT ALLOW AZURE SERVICES AND


RESOURCES TO ACCESS THIS SERVER.

STEP5: IN ADDITIONAL SETTINGS SELECT SAMPLE.


STEP6:AND THE SQL DATABASE IS DEPLOYED.
STEP7:AND NOW GOTO QUERY EDITOR.

STEP8:AND NOW AGAIN LOGIN TO THE SQLDATADATABASE


STEP: AND OUR TABLES WILL SHOWN AND TYPE THE QUERY TO
EXCUTED.

STEP10: AND OUR OUTPUT IS READY.

RESULT:
EXP. 9: PERFORM THE BASIC CONFIGURATION SETUP FOR INSTALLING
HADOOP 2.X LIKE CREATING THE HDUSER AND SSH LOCALHOST

AIM:

PROCEDURE:
Step 1 – System Update
$ sudo apt-get update

Step 2 – Install Java and Set JAVA_HOME


//This first thing to do is to setup the webupd8 ppa on your system. Run the following
command and proceed.
$ sudo apt-add-repository ppa:webupd8team/java
$ sudo apt-get update
//After setting up the ppa repository, update the package cache as well.
//Install the Java 8 installer
$ sudo apt-get install oracle-java8-installer

// After the installation is finished, Oracle Java is setup. Run the java command again to
check the version and vendor.
[or]
$ sudo apt-get install default-jdk
$ java -version

Step 3 – Add a dedicated Hadoop user


$ sudo addgroup hadoop

$ sudo adduser --ingroup hadoop hduser

// Add hduser to sudo user group


$ sudo adduser hduser sudo

Step 4 – Install SSH and Create Certificates


$ sudo apt-get install ssh

$ su hduser
$ ssh-keygen -t rsa -P ""

// Set Environmental variables


$ cat $HOME/.ssh/id_rsa.pub >> $HOME/.ssh/authorized_keys

Step 5 – Check if SSH works


$ ssh localhost

Step 6 – Install Hadoop


// Extract Hadoop-2.7.2 
$ sudo tar xvzf hadoop-2.7.2.tar.gz

// Create a folder ‘hadoop’ in /usr/local


$ sudo mkdir –p /usr/local/hadoop

// Move the Hadoop folder to /usr/local/hadoop


$ sudo mv hadoop-2.7.2 /usr/local/hadoop

// Assigning read and write access to Hadoop folder


$ sudo chown –R hduser:hadoop /usr/local/hadoop

Implementation:
RESULT:
EXP. 10: INSTALL HADOOP 2.X AND CONFIGURE THE NAME NODE AND DATA
NODE.

AIM:

PROCEDURE:

Step 7 - Modify Hadoop config files


//Hadoop Environmental variable setting – The following files will be modified

1. ~/.bashrc
2. /usr/local/hadoop/hadoop-2.7.2/etc/hadoop/hadoop-env.sh
3. /usr/local/hadoop/hadoop-2.7.2/etc/hadoop/core-site.xml
4. /usr/local/hadoop/hadoop-2.7.2/etc/hadoop/hdfs-site.xml
5. /usr/local/hadoop/hadoop-2.7.2/etc/hadoop/yarn-site.xml
6. /usr/local/hadoop/hadoop-2.7.2/etc/hadoop/mapred-site.xml.template

$ sudo nano  ~/.bashrc

// Add the following lines at the end of the file

export JAVA_HOME=/usr/lib/jvm/java-8-oracle
export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin 
export PATH=$PATH:$HADOOP_HOME/sbin 
export HADOOP_MAPRED_HOME=$HADOOP_HOME 
export HADOOP_COMMON_HOME=$HADOOP_HOME 
export HADOOP_HDFS_HOME=$HADOOP_HOME 
export YARN_HOME=$HADOOP_HOME 
HADOOP_COMMON_LIB_NATIVE_DIR=$HADOOP_HOME/lib/native 
export HADOOP_OPTS="-D.java.library.path=$HADOOP_HOME/lib"
export PATH=$PATH:/usr/local/hadoop/hadoop-2.7.2/bin

// Configure Hadoop Files


$ cd /usr/local/hadoop/hadoop-2.7.2/etc/hadoop/
$ sudo nano hadoop-env.sh

// Add following line in hadoop-env.sh – Set JAVA variable in Hadoop

# The java implementation to use. 


export JAVA_HOME=/usr/lib/jvm/java-8-oracle 

// Create datanode and namenode


$ sudo mkdir –p /usr/local/hadoop_tmp/hdfs/namenode
$ sudo mkdir –p /usr/local/hadoop_tmp/hdfs/datanode
// Changing ownership to hadoop_tmp
$ sudo chown –R hduser:hadoop /usr/local/hadoop_tmp
// Edit hdfs-site.xml
$ sudo nano hdfs-site.xml
// Add the following lines between <configuration> …… </configuration>

<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:/usr/local/hadoop_tmp/hdfs/namenode</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:/usr/local/hadoop_tmp/hdfs/datanode</value>
</property>
</configuration>

// Edit core-site.xml
$ sudo nano core-site.xml
// Add the following lines between <configuration> …… </configuration>

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://localhost:9000</value>
</property>
</configuration>
// Edit yarn-site.xml
$ sudo nano yarn-site.xml
// Add the following lines between <configuration> …… </configuration>

<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>
<value>org.apache.hadoop.mapred.Shuffle-Handler</value>
</property>
</configuration>

// Edit mapred-site.xmsudo 
$ cp /usr/local/hadoop/hadoop-2.7.2/etc/hadoop/mapred-site.xml.template
/usr/local/hadoop/hadoop-2.7.2/etc/hadoop/mapred-site.xml
$ sudo nano mapred-site.xml
// Add the following lines between <configuration> …… </configuration>

<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>

Step-8 – Format Hadoop File System


$ cd  /usr/local/hadoop/hadoop-2.7.2/bin
$ hadoop namenode -format

Step 9 - Start Hadoop


$ cd /usr/local/hadoop/hadoop-2.7.2/sbin
// Starting dfs services
$ start-dfs.sh
// Starting mapreduce services
$ start-yarn.sh
$ jps
Step 10 - Check Hadoop through web UI
Go to browser type http://localhost:8088 – All Applications Hadoop Cluster

Go to browser type http://localhost:50070 – Hadoop Namenode

Step 11 - Stop Hadoop


$ stop-dfs.sh
$ stop-yarn.sh
IMPLEMENTAION:
RESULT:
EXP. 11 LAUNCH THE HADOOP 2.X AND PERFORM MAPREDUCE PROGRAM
FOR A WORD COUNT PROBLEM

AIM:

PROCEDURE:
Step 1 - Open Terminal
$ su hduser
Password:
Step 2 - Start dfs and mapreduce services
$ cd /usr/local/hadoop/hadoop-2.7.2/sbin
$ start-dfs.sh
$ start-yarn.sh
$ jps

Step 3 - Check Hadoop through web UI

// Go to browser type http://localhost:8088 – All Applications Hadoop Cluster

// Go to browser type http://localhost:50070 – Hadoop Namenode

Step 4 – Open New Terminal


$ cd Desktop/
$ mkdir inputdata
$ cd inputdata/
$ echo “Hai, Hello, How are you? How is your health?” >> hello.txt
$ cat >> hello.txt
Step 5 – Go back to old Terminal
$ hadoop fs –copyFromLocal /home/hduser/Desktop/inputdata/hello.txt /folder/hduser
// Check in hello.txt in Namenode using Web UI
Step 6 – Download and open eclipse by creating workspace
Create a new java project.
Step 7 – Add jar to the project
You need to remove dependencies by adding jar files in the hadoop source folder. Now Click
on Project tab and go to Properties.Under Libraries tab, click Add External JARs and select all the
jars in the folder (click on 1st jar, and Press Shift and Click on last jat to select all jars in between and
click ok) 
/usr/local/hadoop/hadoop-2.7.2/share/hadoop/commonand 

/usr/local/hadoop/hadoop-2.7.2/share/hadoop/mapreduce folders.

Step -8 – WordCount Program


Create 3 java files named
● WordCount.java
● WordCountMapper.java
● WordCountReducer.java

WordCount.java

import org.apache.hadoop.conf.Configured;
import org.apache.hadoop.fs.Path;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.mapred.FileInputFormat;
import org.apache.hadoop.mapred.FileOutputFormat;
import org.apache.hadoop.mapred.JobClient;
import org.apache.hadoop.mapred.JobConf;

import org.apache.hadoop.util.Tool;
import org.apache.hadoop.util.ToolRunner;
import org.apache.hadoop.io.Text;

public class WordCount extends Configured implements Tool {

@Override
public int run(String[] arg0) throws Exception {
// TODO Auto-generated method stub
if(arg0.length<2)
{
System.out.println("check the command line arguments");
}
JobConf conf=new JobConf(WordCount.class);
FileInputFormat.setInputPaths(conf, new Path(arg0[0]));
FileOutputFormat.setOutputPath(conf, new Path(arg0[1]));
conf.setMapperClass(WordMapper.class);
conf.setReducerClass(WordReducer.class);
conf.setOutputKeyClass(Text.class);
conf.setOutputValueClass(IntWritable.class);
conf.setOutputKeyClass(Text.class);
conf.setOutputValueClass(IntWritable.class);
JobClient.runJob(conf);

return 0;
}
public static void main(String args[]) throws Exception
{
int exitcode=ToolRunner.run(new WordCount(), args);
System.exit(exitcode);
}
}

WordCountMapper.java

import java.io.IOException;

import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.io.LongWritable;
import org.apache.hadoop.mapred.MapReduceBase;
import org.apache.hadoop.mapred.OutputCollector;
import org.apache.hadoop.mapred.Reporter;
import org.apache.hadoop.io.Text;
import org.apache.hadoop.mapred.Mapper;

public class WordCountMapper extends MapReduceBase implements


Mapper<LongWritable,Text,Text,IntWritable>
{
@Override
public void map(LongWritable arg0, Text arg1, OutputCollector<Text, IntWritable> arg2,
Reporter arg3)
throws IOException {
// TODO Auto-generated method stub

String s=arg1.toString();
for(String word:s.split(" "))
{
arg2.collect(new Text(word),new IntWritable(1));
}
}
}

WordCountReducer.java

import java.io.IOException;
import java.util.Iterator;
import org.apache.hadoop.io.IntWritable;
import org.apache.hadoop.mapred.JobConf;
import org.apache.hadoop.mapred.OutputCollector;
import org.apache.hadoop.mapred.Reducer;
import org.apache.hadoop.mapred.Reporter;
import org.apache.hadoop.io.Text;

public class WordCountReducer implements Reducer<Text,IntWritable,Text,IntWritable> {


@Override
public void configure(JobConf arg0) {
// TODO Auto-generated method stub
}
@Override
public void close() throws IOException {
// TODO Auto-generated method stub
}
@Override
public void reduce(Text arg0, Iterator<IntWritable> arg1, OutputCollector<Text, IntWritable>
arg2, Reporter arg3)
throws IOException {
// TODO Auto-generated method stub
int count=0;
while(arg1.hasNext())
{
IntWritable i=arg1.next();
count+=i.get();
}
arg2.collect(arg0,new IntWritable(count));

}
}

Step 9 - Creatr JAR file


Now Click on the Run tab and click Run-Configurations. Click on New Configuration button on the
left-top side and Apply after filling the following properties.
Step 10 - Export JAR file

 Now click on File tab and select Export. under Java, select Runnable Jar.

In Launch Config – select the config fie you created in Step 9  (WordCountConfig). 

⮚ Select an export destination (lets say desktop.) 


⮚ Under Library handling, select Extract Required Libraries into generated JAR and click
Finish.
⮚ Right-Click the jar file, go to Properties and under Permissionstab, Check Allow executing
file as a program. and give Read and Write access to all the users

Step 11 – Go back to old Terminal for Execution of WordCount Program

$hadoop jar wordcount.jar/usr/local/hadoop/input/usr/local/hadoop/output

Step 12 – To view results in old Terminal


$hdfs dfs -cat /usr/local/hadoop/output/part-r-00000   

Step 13 - To Remove folders created using hdfs

$ hdfs dfs -rm -R /usr/local/hadoop/output

RESULT:

You might also like