Category Archives: Daily life

Setup Domain Name Server(Linux-Bind-DNS) untuk perusahaan ISP di Jawa Tengah

Saya dikontak adik nya teman saya yang pernah saya buatin Warnet tahun 2000 an di Pekalongan. Sekarang mereka merintis usaha Internet Service Provider di Batang, Jawa Tengah dimana masih proses Uji Laik Operasi (ULO) ke Kominfo.

Singkat cerita saya bantu remote ke server IBM yang sudah mereka siapkan dengan sistem operasi Linux Ubuntu 20.04.5 LTS jadi ada 2 DNS Server pertama untuk Primary dan Secondary.

Untuk ini yang reliable dan pernah saya setup di perusahaan ISP tempat saya bekerja tahun 2006 memakai BIND 9 Internet Systems Consortium.

-Setup Linux Bind 9 Round Robin (nameserver primary dan secondary).

-Setup Bind RPZ Domain Name Service Response Policy Zones (Trustpositif Kominfo).

-Linux hardening.

Project selesai dan sudah berhasil di testing di client2 mereka. Jika ada didaerah Batang yang tertarik memakai layanan internet mereka bisa kontak mereka di https://www.tujuhlangit.net

Kubernetes, Docker, Vagrant and Nginx.

Keep the history of Kubernetes, Docker, Vagrant, and Nginx.

hostnamectl set-hostname kubemaster.henrycloudlocal.id
vim /etc/hosts
free -m
swapoff -a
vim /etc/hosts
vim /etc/fstab
clear
setenforce 0
vim /etc/sysconfig/selinux
modprobe br_netfilter
echo “1” > /proc/sys/net/bridge/bridge-nf-call-iptables
curl -fsSL get.docker.com | sh
usermod -aG docker vagrant
id vagrant
vim /etc/yum.repos.d/kubernetes.repo
clear
yum install -y kubelet kubeadm kubectl
systemctl enable docker
systemctl enable kubelet
systemctl start docker
systemctl status docker
kubeadm init –apiserver-advertise-address=172.31.47.141 –pod-network-cidr=10.244.0.0/16
docker info | grep -i cgroup
vim /etc/docker/daemon.json
systemctl restart docker
vim /etc/docker/daemon.json
systemctl restart docker
vim /etc/docker/daemon.json
systemctl restart docker
systemctl status docker
cat /etc/docker/daemon.json
kubeadm reset
kubeadm init –apiserver-advertise-address=172.31.47.141 –pod-network-cidr=10.244.0.0/16
vim join.txt
su – vagrant
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
mkdir -p $HOME/.kube
sudo cp -i /etc/kubernetes/admin.conf
$HOME/.kube/config
sudo chown $(id -u):$(id -g)
$HOME/.kube/config
ls -ld /home/vagrant/.kube/
exit
kubectl apply -f https://docs.projectcalico.org/manifests/calico.yaml
kubectl get nodes
sudo cat /root/join.txt
cat /etc/docker/daemon.json
{ “exec-opts”: [“native.cgroupdriver=systemd”]
kubectl get nodes
kubectl create deployment nginx –image=nginx
kubectl get pods
kubectl get pods -o wide
kubectl scale deployment nginx –replicas=4
kubectl get pods -o wide
kubectl create namespace dev
kubectl create namespace test
kubectl create deployment
httpd-dev –image=httpd -n dev
kubectl create deployment
tomcat-dev –image=tomcat -n dev
kubectl create deployment
mongo-dev –image=mongo -n dev
kubectl create deployment
httpd-test –image=httpd -n test
kubectl create deployment
tomcat-test –image=tomcat -n test
kubectl create deployment
mongo-test –image=mongo -n test
kubectl get pods -n dev
kubectl get pods -n test
kubectl get pods –all-namespaces
kubectl get pods
kubectl get pod
nginx-6799fc88d8-8tk4t –show-labels
kubectl label pod
nginx-6799fc88d8-8tk4t version=v1
kubectl get pod nginx-6799fc88d8-8tk4t –show-labels
vi nginx-deployment.yaml
cat nginx-deployment.yaml
clear
kubectl create -f nginx-deployment.yaml
kubectl get pods
cat nginx-deployment.yaml
clear

Keep learning !

Tigergraph Installation with Docker

Let’s Connect, Analyze, and Learn from Data.!

TigerGraph is the world’s fastest graph analytics platform designed to unleash the power of interconnected data for deeper insights and better outcomes. The company supports applications such as IoT, AI, and machine learning to make sense of ever-changing big data.

TigerGraph’s massively parallel processing (MPP) architecture combined with an efficient query processing engine allow for analyzing entities and their relationships at scale. TigerGraph is fully ACID compliant, giving the ability to perform both transactional and analytic workloads on the same platform. As with data lakes, TigerGraph’s scalability and flexible schema allow the joining of diverse data sets.

This is my first time using and install the Tiger Graph. Prerequisites, my local setup:

-macOS Catalina 10.15.7

-Docker Desktop 3.6.0 on Mac

TigerGraph Enterprise Edition docker image

Step 1: Install Docker on Mac follow this link.

Step 2: Open Terminal on your Mac and follow these steps:

-Prepare a Shared Folder on Host OS to be shared with Docker Container:

henrygultom@MacBook-Pro ~ % mkdir tigergraph
henrygultom@MacBook-Pro ~ % cd tigergraph
henrygultom@MacBook-Pro tigergraph % mkdir data
henrygultom@MacBook-Pro tigergraph % chmod 777 data
henrygultom@MacBook-Pro tigergraph % ls
data

-Run TigerGraph Docker image as a daemon:

henrygultom@MacBook-Pro tigergraph % docker run -d -p 14022:22 -p 9000:9000 -p 14240:14240 –name tigergraph –ulimit nofile=1000000:1000000 -v ~/tigergraph/data:/home/tigergraph/mydata -t docker.tigergraph.com/tigergraph:latest
Unable to find image ‘docker.tigergraph.com/tigergraph:latest’ locally
latest: Pulling from tigergraph
528184910841: Pull complete
8a9df81d603d: Pull complete
636d9303bf66: Pull complete
672b5bdcef61: Pull complete
5d1235f9b296: Pull complete
819f1e6e507e: Pull complete
Digest: sha256:4f16402f6cece37de98911ff286d4b6c996e7a7dab0cab996f36a77ede304010
Status: Downloaded newer image for docker.tigergraph.com/tigergraph:latest
b3f33c6f7d7591b8c0a5a2fe13e94f37d48a55eb643171002357110ae1c40332
henrygultom@MacBook-Pro tigergraph %
henrygultom@MacBook-Pro tigergraph % docker ps
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
b3f33c6f7d75 docker.tigergraph.com/tigergraph:latest “/bin/sh -c ‘/usr/sb…” 48 minutes ago Up 48 minutes 0.0.0.0:9000->9000/tcp, :::9000->9000/tcp, 0.0.0.0:14240->14240/tcp, :::14240->14240/tcp, 0.0.0.0:14022->22/tcp, :::14022->22/tcp tigergraph
henrygultom@MacBook-Pro tigergraph %

henrygultom@MacBook-Pro tigergraph % uname -a
Darwin MacBook-Pro.local 19.6.0 Darwin Kernel Version 19.6.0: Tue Jun 22 19:49:55 PDT 2021; root:xnu-6153.141.35~1/RELEASE_X86_64 x86_64
henrygultom@MacBook-Pro tigergraph %

-Use SSH to connect to your container:

henrygultom@MacBook-Pro tigergraph % ssh -p 14022 tigergraph@localhost
The authenticity of host ‘[localhost]:14022 ([::1]:14022)’ can’t be established.
ECDSA key fingerprint is SHA256:yxJX13+vAPeEMuhhUE6Ni0qVMGzeUzci29Buv7qvZ6U.
Are you sure you want to continue connecting (yes/no/[fingerprint])? yes
Warning: Permanently added ‘[localhost]:14022’ (ECDSA) to the list of known hosts.
tigergraph@localhost’s password:
Connection closed by ::1 port 14022
henrygultom@MacBook-Pro tigergraph %
henrygultom@MacBook-Pro tigergraph % ssh -p 14022 tigergraph@localhost
tigergraph@localhost’s password:
Welcome to Ubuntu 16.04.7 LTS (GNU/Linux 5.10.47-linuxkit x86_64)

* Documentation: https://help.ubuntu.com
* Management: https://landscape.canonical.com
* Support: https://ubuntu.com/advantage
tigergraph@b3f33c6f7d75:~$

-Start TigerGraph:

tigergraph@b3f33c6f7d75:~$ gadmin start
[ Info] If no serviceID is specified, it only starts services excluding the infrastructure. Use ‘gadmin start all’ to start all services.
[ Info] Starting ZK ETCD DICT KAFKA ADMIN GSE NGINX GPE RESTPP KAFKASTRM-LL KAFKACONN TS3SERV GSQL TS3 GUI
[ Error] ConnectionClosed (Unable to talk to ctrl, are all infrastructure services up? You can start them by ‘gadmin start infra’)
tigergraph@b3f33c6f7d75:~$
tigergraph@b3f33c6f7d75:~$ gadmin start all
[ Info] Starting EXE
[ Info] Starting CTRL
[ Info] Starting ZK ETCD DICT KAFKA ADMIN GSE NGINX GPE RESTPP KAFKASTRM-LL KAFKACONN TS3SERV GSQL TS3 IFM GUI
tigergraph@b3f33c6f7d75:~$


tigergraph@b3f33c6f7d75:~$
tigergraph@b3f33c6f7d75:~$ gsql
Welcome to TigerGraph.
GSQL > show v
vertex values var
GSQL > alter
alter
GSQL > alter
alter
GSQL > ls
—- Global vertices, edges, and all graphs
Vertex Types:
Edge Types:

Graphs:
Jobs:

JSON API version: v2
Syntax version: v1

GSQL > quit


tigergraph@b3f33c6f7d75:~$
tigergraph@b3f33c6f7d75:~$ ls
gsql-graph-algorithms mydata tigergraph tutorial
tigergraph@b3f33c6f7d75:~$ cd tutorial
tigergraph@b3f33c6f7d75:~/tutorial$ ls
2.x 3.x
tigergraph@b3f33c6f7d75:~/tutorial$
tigergraph@b3f33c6f7d75:~/tutorial$ cd 2.x/
tigergraph@b3f33c6f7d75:~/tutorial/2.x$ ls
gsql101 gsql102
tigergraph@b3f33c6f7d75:~/tutorial/2.x$ cd gsql101
tigergraph@b3f33c6f7d75:~/tutorial/2.x/gsql101$ ls
friendship.csv gsql101.gsql person.csv README.md
tigergraph@b3f33c6f7d75:~/tutorial/2.x/gsql101$ vim README.md
tigergraph@b3f33c6f7d75:~/tutorial/2.x/gsql101$

tigergraph@b3f33c6f7d75:~/tutorial/2.x/gsql101$ gsql gsql101.gsql
Dropping all, about 1 minute …
Abort all active loading jobs
Resetting GPE…
Successfully reset GPE
Stopping GPE GSE
Successfully stopped GPE GSE in 0.495 seconds
Clearing graph store…
Successfully cleared graph store
Starting GPE GSE RESTPP
Successfully started GPE GSE RESTPP in 0.075 seconds
Everything is dropped.
The vertex type person is created.
The edge type friendship is created.
Stopping GPE GSE RESTPP
Successfully stopped GPE GSE RESTPP in 17.650 seconds
Starting GPE GSE RESTPP
Successfully started GPE GSE RESTPP in 0.071 seconds
The graph social is created.
Semantic Check Fails: File or directory ‘$HOME/tutorial/gsql101/person.csv’ does not exist!
Semantic Check Fails: The FILENAME = ‘m1:/home/tigergraph/tutorial/gsql101/person.csv’ is not in a valid path format.

The job load_social could not be created!
tigergraph@b3f33c6f7d75:~/tutorial/2.x/gsql101$
tigergraph@b3f33c6f7d75:~/tutorial/2.x/gsql101$

tigergraph@b3f33c6f7d75:~/tutorial/2.x/gsql101$ gsql version
GSQL version: 3.1
GSQL commit number: 06c9098c895d88a30daf3ee307a428ee38f0a7b4
GSQL commit date: 2021-07-19 09:18:25 -0700
Copyright (c) 2014-2021 TigerGraph. All rights reserved.
This product is protected by U.S. and international copyright and intellectual property laws.
tigergraph@b3f33c6f7d75:~/tutorial/2.x/gsql101$

Continue – next tutorial:  https://docs.tigergraph.com/start/gsql-101/parameterized-gsql-query

Mewujudkan kawasan Danau Toba berstatus zero blankspot akses internet

Saya diundang menjadi pembicara narasumber untuk acara Webinar dengan topic “Mewujudkan kawasan Danau Toba berstatus zero blankspot akses internet”

Kaldera Toba atau yang lebih dikenal sebagai Danau Toba ditetapkan sebagai UNESCO Global Geopark pada Sidang ke-209 Dewan Eksekutif UNESCO di Paris, Prancis (2/7/2020).

Ada 24 titik blankspot internet tersebar di 9 kecamatan di Kawasan Danau Toba. Ini harus segera di review dan ditingkatkan kembali agar bisa meningkatkan sebaran internet di Pulau Samosir. Perlu sinergi kerjasama dari stakeholder lokal dan penyedia layanan telekomunikasi dan internet di tanah air. Event2 internasional akan segera hadir di Danau Toba so kita harus membangun infrastruktur Telco dan Internet di Pulau Samosir.

#kominfo
#kemenparekraf
#telkomsel4g

#danautoba #samosir #palaparingbarat #googleballoon #thecalderatobanomadicescape

Contact me: henry.gultom@gmail.com

Selamat Bu Khofifah, Gubernur Jatim 2019-2024

Ada rasa bangga melihat Presiden Joko Widodo (Jokowi) resmi melantik Khofifah Indar Parawansa-Emil Elestianto Dardak sebagai pasangan gubernur dan wakil gubernur Jawa Timur (Jatim) periode 2019-2024. Sebagai salah satu tim IT/Medsos/War Room di timses beliau,  ikut membantu kurang lebih 6 bulan memenangkan beliau dalam pilgub Jatim 2018.

Selamat Bu! Semoga amanah dan berkah untuk rakyat Jawa Timur.

https://news.detik.com/berita/d-4426544/jokowi-resmi-lantik-khofifah-jadi-gubernur-jawa-timur

 

Proyek membantu tim medsos/IT Pilgub di Jawa Timur (Part 2)

Pada tulisan sebelumnya, saya diajak membantu menjadi bagian tim media oleh salah satu kandidat calon gubernur yang bertarung di PilguB Jatim 2018.

Setelah resmi ikut membantu menjadi bagian tim mereka.  Saya sudah mematangkan konsep dan strategi positif apa yang akan dipakai dan sudah disetujui pihak timsesnya. Saya membentuk tim yang membantu untuk standby bergantian mengelola tim medsos calon gubernur ini.

Dari riset saya, pemakai internet di Jawa Timur itu berkisar 10-15 juta orang :

Ini menjadi acuan target dalam pergerakan informasi di media sosial, khususunya menjangkau masyarakat Jawa timur pemakai internet yang didalamnya ada generasi milenial.

Beberapa strategi umum medsos yang bisa saya bagi di blog ini adalah :

-Masuk dalam tim media dan tim diseminasi cagub tersebut terhubung dengan tim lapangan yang ikut dalam setiap aktifitas cagub tersebut. Informasi yang didapat atau informasi penting bisa disebar di medsos atau di viral kan.
-Membuat/mengelola Akun baru resmi relawan/fans/sahabat di Facebook fan Pages, Instagram, Twitter, Youtube. Campaign promosi berbayar dan manual.
-Membuat/mengelola backlink website relawan.
-Menggunakan tool komersil seperti HootSuite for social media.
-Menggunakan Tool for strong Social Media Management untuk Analytics seperti fanpagekarma.
-Memonitor perkembangan media sosial paslon lain, dengan menggunakan software analytics dapat mengetahui perkembangan kampanye masing2 paslon.
-Counter attack untuk amplifikasi konten positif.
-Memonitor akun2 yang dijadikan black campaign, jika ditemukan di proses untuk di Take Down.
-Membuat database relawan, review Data Pemilih sementara(DPS)
-dsb.

Teknis detailnya tidak akan saya bahas disini, pekerjaan ini akan berlangsung sampai sebelum masa tenang dan pencoblosan pilkada pada 27 Juni 2018. Sebelum masa tenang menjadi penting dimana kordinasi dengan tim sukses akan lebih sering dalam menjalankan kampanye positif dan mencounter kampanye negatif.

Proyek membantu tim medsos/IT Pilgub di Jawa Timur (Part 1)

Tim sukses (timses) dari salah satu pasangan calon gubernur di Pilgub Jawa Timur 2018 menghubungi saya meminta waktu bertemu dan sedikit memberitahukan perihal strategi medsos untuk cagub ini pada pilkada Jatim 2018.

Dari hasil pertemuan tersebut, saya mendapat gambaran perihal keinginan mereka untuk mempromosikan pasangan calon ini di media sosial. Sisa waktu sekitar 4 bulan sebelum pilkada serentak 27 Juni 2018.

Dari beberapa pertemuan dengan timses dan saya juga pernah bertemu dengan cagub tersebut. Didapat scope of work untuk pekerjaan ini. Pesan kuat no black campaign dan menjaga komentar2 negatif muncul dan mempromosikan program dan visi misi serta segala kegiatan cagub tersebut. Saya juga melakukan riset dahulu melihat peta situasi kekuatan medsos cagub ini dan paslon lain.

Sampai saat ini saya mengumpulkan tim internal saya untuk membentuk cetak biru strategi apa yang akan di luncurkan akhir February ini. Bersambung.

Implementing Samba 4 Book

6580OS_Implementing Samba-4

Akhirnya buku yang saya ikut sebagai team reviewers keluar juga.

Implementing Samba 4
By: Marcelo Leal
Exploit the real power of Samba 4 Server by leveraging the benefits of an Active Directory Domain Controller.
ISBN 139781782166580
Paperback 284 pages

Credit_Implementing Samba 4

Pembelian :

Implementing Samba 4 – Google Books Result

Packt Publishing Ltd. 

Juara I LKS SMK Tingkat Nasional XXI 2013

Luar biasa, akhirnya Nasohi Ciptandani siswa SMK Nusantara I Comal menjadi Juara I Information Technology/Networking Support pada LKS SMK Tingkat Nasional XXI 2013 yang diselenggarakan Kementerian Pendidikan dan Kebudayaan Direktorat Jenderal Pedidikan Menengah RI pada tanggal 22-28 September 2013 di Taman Mini Indonesia Indah.

Training seminggu tentang Linux bersama saya ada hasilnya juga.

Selamat yah Nasohi dan juga Pak Indro Raharjo sebagai guru Teknik Jaringan Komputer SMK Nusantara I Comal.

IMG_20130928_223558b

 

Continue reading

Kuberi nama Debian

Terima kasih Tuhan, kami diberi anugerah dengan lahirnya anak perempuan kami, dan kuberi nama Debian.

Debian is a popular and freely-available computer operating system that uses the Linux kernel and other program components obtained from the GNU project. Debian can be downloaded over the Internet or, for a small charge, obtained on CD.

https://en.wikipedia.org/wiki/Debian