Cassandra - การติดตั้ง
Cassandra สามารถเข้าถึงได้โดยใช้ cqlsh รวมทั้งไดรเวอร์ของภาษาต่างๆ บทนี้อธิบายถึงวิธีการตั้งค่าสภาพแวดล้อม cqlsh และ java เพื่อทำงานกับ Cassandra
การตั้งค่าก่อนการติดตั้ง
ก่อนที่จะติดตั้ง Cassandra ในสภาพแวดล้อม Linux เราจำเป็นต้องตั้งค่า Linux โดยใช้ไฟล์ ssh(Secure Shell) ทำตามขั้นตอนด้านล่างเพื่อตั้งค่าสภาพแวดล้อม Linux
สร้างผู้ใช้
ในตอนต้นขอแนะนำให้สร้างผู้ใช้แยกต่างหากสำหรับ Hadoop เพื่อแยกระบบไฟล์ Hadoop ออกจากระบบไฟล์ Unix ทำตามขั้นตอนด้านล่างเพื่อสร้างผู้ใช้
เปิดรูทโดยใช้คำสั่ง “su”.
สร้างผู้ใช้จากบัญชีรูทโดยใช้คำสั่ง “useradd username”.
ตอนนี้คุณสามารถเปิดบัญชีผู้ใช้ที่มีอยู่โดยใช้คำสั่ง “su username”.
เปิดเทอร์มินัล Linux และพิมพ์คำสั่งต่อไปนี้เพื่อสร้างผู้ใช้
$ su
password:
# useradd hadoop
# passwd hadoop
New passwd:
Retype new passwd
การตั้งค่า SSH และการสร้างคีย์
จำเป็นต้องมีการตั้งค่า SSH เพื่อดำเนินการต่างๆบนคลัสเตอร์เช่นการเริ่มต้นการหยุดและการดำเนินการเชลล์ daemon แบบกระจาย ในการพิสูจน์ตัวตนผู้ใช้ Hadoop ที่แตกต่างกันจำเป็นต้องระบุคู่คีย์สาธารณะ / ส่วนตัวสำหรับผู้ใช้ Hadoop และแชร์กับผู้ใช้รายอื่น
คำสั่งต่อไปนี้ใช้สำหรับสร้างคู่ค่าคีย์โดยใช้ SSH -
- คัดลอกคีย์สาธารณะจากรูปแบบ id_rsa.pub ไปยัง Authorized_keys
- และจัดหาเจ้าของ
- อ่านและเขียนสิทธิ์ในไฟล์ Authorized_keys ตามลำดับ
$ ssh-keygen -t rsa
$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
$ chmod 0600 ~/.ssh/authorized_keys
- ตรวจสอบ ssh:
ssh localhost
การติดตั้ง Java
Java เป็นข้อกำหนดเบื้องต้นหลักสำหรับ Cassandra ก่อนอื่นคุณควรตรวจสอบการมีอยู่ของ Java ในระบบของคุณโดยใช้คำสั่งต่อไปนี้ -
$ java -version
หากทุกอย่างทำงานได้ดีจะให้ผลลัพธ์ดังต่อไปนี้
java version "1.7.0_71"
Java(TM) SE Runtime Environment (build 1.7.0_71-b13)
Java HotSpot(TM) Client VM (build 25.0-b02, mixed mode)
หากคุณไม่มี Java ในระบบของคุณให้ทำตามขั้นตอนด้านล่างเพื่อติดตั้ง Java
ขั้นตอนที่ 1
ดาวน์โหลด java (JDK <เวอร์ชันล่าสุด> - X64.tar.gz) จากลิงค์ต่อไปนี้:
Then jdk-7u71-linux-x64.tar.gz will be downloaded onto your system.
ขั้นตอนที่ 2
โดยทั่วไปคุณจะพบไฟล์ java ที่ดาวน์โหลดมาในโฟลเดอร์ดาวน์โหลด ตรวจสอบและแตกไฟล์jdk-7u71-linux-x64.gz ไฟล์โดยใช้คำสั่งต่อไปนี้
$ cd Downloads/
$ ls
jdk-7u71-linux-x64.gz
$ tar zxf jdk-7u71-linux-x64.gz
$ ls
jdk1.7.0_71 jdk-7u71-linux-x64.gz
ขั้นตอนที่ 3
เพื่อให้ผู้ใช้ทุกคนสามารถใช้งาน Java ได้คุณต้องย้ายไปที่ตำแหน่ง“ / usr / local /” เปิดรูทและพิมพ์คำสั่งต่อไปนี้
$ su
password:
# mv jdk1.7.0_71 /usr/local/
# exit
ขั้นตอนที่ 4
สำหรับการตั้งค่า PATH และ JAVA_HOME ตัวแปรเพิ่มคำสั่งต่อไปนี้ ~/.bashrc ไฟล์.
export JAVA_HOME = /usr/local/jdk1.7.0_71
export PATH = $PATH:$JAVA_HOME/bin
ตอนนี้ใช้การเปลี่ยนแปลงทั้งหมดในระบบที่กำลังทำงานอยู่
$ source ~/.bashrc
ขั้นตอนที่ 5
ใช้คำสั่งต่อไปนี้เพื่อกำหนดค่าทางเลือก java
# alternatives --install /usr/bin/java java usr/local/java/bin/java 2
# alternatives --install /usr/bin/javac javac usr/local/java/bin/javac 2
# alternatives --install /usr/bin/jar jar usr/local/java/bin/jar 2
# alternatives --set java usr/local/java/bin/java
# alternatives --set javac usr/local/java/bin/javac
# alternatives --set jar usr/local/java/bin/jar
ตอนนี้ใช้ไฟล์ java -version คำสั่งจากเทอร์มินัลตามที่อธิบายไว้ข้างต้น
การตั้งค่าเส้นทาง
กำหนดเส้นทางของเส้นทาง Cassandra ใน“ /.bashrc” ดังที่แสดงด้านล่าง
[hadoop@linux ~]$ gedit ~/.bashrc
export CASSANDRA_HOME = ~/cassandra
export PATH = $PATH:$CASSANDRA_HOME/bin
ดาวน์โหลด Cassandra
Apache Cassandra มีอยู่ที่Download Link Cassandra โดยใช้คำสั่งต่อไปนี้
$ wget http://supergsego.com/apache/cassandra/2.1.2/apache-cassandra-2.1.2-bin.tar.gz
คลายซิป Cassandra โดยใช้คำสั่ง zxvf ดังแสดงด้านล่าง
$ tar zxvf apache-cassandra-2.1.2-bin.tar.gz.
สร้างไดเร็กทอรีใหม่ชื่อ Cassandra และย้ายเนื้อหาของไฟล์ที่ดาวน์โหลดมาดังที่แสดงด้านล่าง
$ mkdir Cassandra
$ mv apache-cassandra-2.1.2/* cassandra.
กำหนดค่า Cassandra
เปิด cassandra.yaml: ซึ่งจะมีอยู่ในไฟล์ bin ไดเรกทอรีของ Cassandra
$ gedit cassandra.yaml
Note - หากคุณติดตั้ง Cassandra จากแพ็คเกจ deb หรือ rpm ไฟล์การกำหนดค่าจะอยู่ใน /etc/cassandra ไดเรกทอรีของ Cassandra
คำสั่งดังกล่าวเปิดไฟล์ cassandra.yamlไฟล์. ตรวจสอบการกำหนดค่าต่อไปนี้ ตามค่าเริ่มต้นค่าเหล่านี้จะถูกตั้งค่าเป็นไดเร็กทอรีที่ระบุ
data_file_directories “/var/lib/cassandra/data”
Commitlog_directory “/var/lib/cassandra/commitlog”
save_caches_directory “/var/lib/cassandra/saved_caches”
ตรวจสอบให้แน่ใจว่ามีไดเร็กทอรีเหล่านี้และสามารถเขียนถึงได้ดังที่แสดงด้านล่าง
สร้างไดเรกทอรี
ในฐานะผู้ใช้ขั้นสูงให้สร้างทั้งสองไดเรกทอรี /var/lib/cassandra และ /var./log/cassandra ซึ่ง Cassandra เขียนข้อมูล
[root@linux cassandra]# mkdir /var/lib/cassandra
[root@linux cassandra]# mkdir /var/log/cassandra
ให้สิทธิ์แก่โฟลเดอร์
ให้สิทธิ์ในการอ่าน - เขียนแก่โฟลเดอร์ที่สร้างขึ้นใหม่ดังที่แสดงด้านล่าง
[root@linux /]# chmod 777 /var/lib/cassandra
[root@linux /]# chmod 777 /var/log/cassandra
เริ่ม Cassandra
ในการเริ่มต้น Cassandra ให้เปิดหน้าต่างเทอร์มินัลไปที่ไดเรกทอรีบ้าน / โฮมของ Cassandra ซึ่งคุณได้คลายแพ็กเกจ Cassandra และรันคำสั่งต่อไปนี้เพื่อเริ่มเซิร์ฟเวอร์ Cassandra ของคุณ
$ cd $CASSANDRA_HOME
$./bin/cassandra -f
การใช้อ็อพชัน –f บอกให้คาสซานดราอยู่ในส่วนหน้าแทนที่จะรันเป็นกระบวนการเบื้องหลัง หากทุกอย่างเรียบร้อยดีคุณจะเห็นเซิร์ฟเวอร์ Cassandra เริ่มทำงาน
สภาพแวดล้อมการเขียนโปรแกรม
ในการตั้งค่า Cassandra โดยใช้โปรแกรมให้ดาวน์โหลดไฟล์ jar ต่อไปนี้ -
- slf4j-api-1.7.5.jar
- cassandra-driver-core-2.0.2.jar
- guava-16.0.1.jar
- metrics-core-3.0.2.jar
- netty-3.9.0.Final.jar
วางไว้ในโฟลเดอร์แยกต่างหาก ตัวอย่างเช่นเรากำลังดาวน์โหลดขวดเหล่านี้ไปยังโฟลเดอร์ที่ชื่อ“Cassandra_jars”.
ตั้งค่า classpath สำหรับโฟลเดอร์นี้ใน “.bashrc”ไฟล์ดังที่แสดงด้านล่าง
[hadoop@linux ~]$ gedit ~/.bashrc
//Set the following class path in the .bashrc file.
export CLASSPATH = $CLASSPATH:/home/hadoop/Cassandra_jars/*
สภาพแวดล้อม Eclipse
เปิด Eclipse และสร้างโปรเจ็กต์ใหม่ชื่อ Cassandra _Examples
คลิกขวาที่โครงการเลือก Build Path→Configure Build Path ดังแสดงด้านล่าง
มันจะเปิดหน้าต่างคุณสมบัติ ภายใต้แท็บไลบรารีให้เลือกAdd External JARs. ไปที่ไดเร็กทอรีที่คุณบันทึกไฟล์ jar ของคุณ เลือกไฟล์ jar ทั้งห้าไฟล์แล้วคลิกตกลงตามที่แสดงด้านล่าง
ภายใต้ไลบรารีอ้างอิงคุณสามารถดูไหที่จำเป็นทั้งหมดที่เพิ่มเข้ามาดังที่แสดงด้านล่าง -
การพึ่งพา Maven
ให้ด้านล่างนี้คือ pom.xml สำหรับสร้างโครงการ Cassandra โดยใช้ maven
<project xmlns = "http://maven.apache.org/POM/4.0.0"
xmlns:xsi = "http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation = "http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<build>
<sourceDirectory>src</sourceDirectory>
<plugins>
<plugin>
<artifactId>maven-compiler-plugin</artifactId>
<version>3.1</version>
<configuration>
<source>1.7</source>
<target>1.7</target>
</configuration>
</plugin>
</plugins>
</build>
<dependencies>
<dependency>
<groupId>org.slf4j</groupId>
<artifactId>slf4j-api</artifactId>
<version>1.7.5</version>
</dependency>
<dependency>
<groupId>com.datastax.cassandra</groupId>
<artifactId>cassandra-driver-core</artifactId>
<version>2.0.2</version>
</dependency>
<dependency>
<groupId>com.google.guava</groupId>
<artifactId>guava</artifactId>
<version>16.0.1</version>
</dependency>
<dependency>
<groupId>com.codahale.metrics</groupId>
<artifactId>metrics-core</artifactId>
<version>3.0.2</version>
</dependency>
<dependency>
<groupId>io.netty</groupId>
<artifactId>netty</artifactId>
<version>3.9.0.Final</version>
</dependency>
</dependencies>
</project>