Provisioning Server Menggunakan Jenkins SSH Plugin


Provisioning Server Menggunakan Jenkins SSH Plugin - Pada artikel sebelumnya www.dimasrio.com sudah menjelaskan bagimana cara untuk setup dan install jenkin menggunakan docker. Jenkins sudah dilengkapi dengan berbagai macam plugin yang dapat digunakan untuk melakukan automation salah satunya menggunakan ssh plugin. 

Baca Juga :
Sebagai contoh kali ini, saya akan mencoba melakukan automate provisioning server untuk dengan kebutuhan java packages.

Step 1 - Install SSH Plugin pada Jenkins

Pada halaman Dashboard Jenkins > Manage Jenkins > Manage Plugins.
Search ssh plugin dan install.





Step 2 -  Tambahkan remote address pada list ssh.

Pilih Dashboard Jenkins > Manage Jenkins > Configure System > Add (Remote SSH Hosts), lalu masukan credentials dari host targets.


Step 3 - Buat Jobs jenkins.

Jobs berfungsi untuk menjalankan perintah yang akan di eksekusi pada remote host.

Pilih Dashboard Jenkins > New Items > Freestyle Project > OK.

Selanjutnya pada tab Build Environtment, masukan remote host dan tambahakan perintah yang akan di executed ketika job dijalankan.



Step 4 -  Jalankan Job Jenkins.

Setelah sebuah proses setup telah selesai, saatnya kita jalankan job. Pada contoh kali ini kita akan menjalankan job secara manual, sobat juga dapat menjalankan jobs dengan menggunakan trigger.


Ketika jobs jenkins berjalan, akan ada progress bar yang menunjukan proses build sedang dijalankan. Jika telah selesai, kita juga dapat melihat hasil provisioning servernya pada history build.



Sampai disini proses provisioning telah selesai dan java packages sudah terinstall pada server.

Output :

Note :
Artikel ini merupakan contoh sederhana bagimana menerapkap jenkins. Pada lingkungan software development, jenkins digunakan untuk automation deployment dan di combined dengan software repository seperti Git sehingga mempermudah perkerjaan Devops.

Demikian tutorial Jenkins kali ini mengenai provisioning server menggunakan jenkins ssh plugins. Semoga dengan tutorial singkat ini bermanfaat bagi kita semua dan membuka wawasan kita untuk lebih dalam lagi mengeksplore jenkins server..!!!

Setup dan Install Jenkins Menggunakan Docker


Setup dan Install Jenkins Menggunakan Docker - Hallo sobat oprekers, pada artikel kali ini www.dimasrio.com akan menjelaskan bagimana cara install jenkins menggunakan docker.

Baca Juga :
Install Docker di CentOS 7
Cara menggunakan docker di CentOS 7

Apa itu Jenkins?

Jenkins sebuah applications open source yang memungkinkan kita untuk menerapkan metode continous integration dan continous deployment (CI / CD) dalam membuat project applications. Jenkins juga sudah dilengkapi dengan berbagai macam plugin yang dapat diterapkan pada platform apapun.

Untuk mempermudah, saya akan menggunakan docker untuk menjalankan service jenkins master.

Install Jenkins

Step 1 - Download images jenkins.
docker pull jenkins
Step 2 - Setup work direktory dan run jenkins sebagai container.
mkdir /docker
docker run -d -it -p 8080:8080 -p 50000:50000 --name jenkins -u root:root -v /docker/jenkins:/var/jenkins_home jenkins
Output :


Step 3 - Setup jenkins.

Setelah jenkins containter run, setup jenkins menggunakan browser. Akses jenkin di http://localhost:8080.

Pada saat pertama kali mengakses jenkins akan meminta password administrator untuk unlock jenkins. Passwordnya ada pada file /docker/jenkins/secrets/initialAdminPassword , kemudian masukan kodenya untuk unlock jenkins.

Output :


Selanjutnya jenkins akan meminta plugin apa saya yang akan di install pada jenkins master.

Output :



Setelah install plugin selesai, sobat akan diminta untuk membuat user.

Output :


Klik save & finish, jenkins sudah siap untuk digunakan.

Output:



Demikian tutorial singkat jenkins kali ini mengenai setup dan install jenkins menggunakan docker. Semoga bermanfaat bagi kita semua dan selamat mencoba..!!!

Run SSH Server pada Docker Container


Run SSH Server pada Docker Container - Hallo sobat oprekers, kali ini www.dimasrio.com akan menjelaskan bagimana cara menjalankan service ssh pada docker container. Pada umumnya docker digunakan untuk build applications yang terisolated pada container, tapi bukan berarti docker tidak bisa dimanfaatkan sebagai virtualisasi os layaknya openvz. Sebenarnya artikel ini tidak lain adalah cara membuat images docker dengan service ssh, sehingga images yang kita build dapat kita manfaatkan seolah-olah virtual mesin.

Baca Juga :
Setup iSCSI pada Vmware ESXi 6.0
$100 Dolar Pertama dari Youtube Adsense

SSH Server pada Docker Container

Step 1 - Donwnload Images.
docker pull centos
Step 2 - Setup file ssh config untuk docker images.
mkdir /docker/
cd /docker/
touch sshd_config
Tambahkan perintah di bawah ini pada file sshd_config.
# What ports, IPs and protocols we listen for
Port 22
Protocol 2

# HostKeys for protocol version 2
HostKey /etc/ssh/ssh_host_rsa_key
HostKey /etc/ssh/ssh_host_dsa_key
HostKey /etc/ssh/ssh_host_ecdsa_key
HostKey /etc/ssh/ssh_host_ed25519_key

# Authentication:
LoginGraceTime 120
PermitRootLogin yes
StrictModes yes

RSAAuthentication yes
PubkeyAuthentication yes
UsePAM yes

Step 3 - Buat dan build Dockerfile.
touch Dockerfile
Tambahkan perintah berikut pada Dockerfile.
FROM centos
RUN yum -y update
RUN yum install -y openssh-server
RUN ssh-keygen -A
ADD ./sshd_config /etc/ssh/sshd_config
RUN echo root:P455w0rd | chpasswd
CMD /usr/sbin/sshd -D
Kemudian build image.
docker build -t dimzrio/centos_ssh .
Output :

Step 4 - Run docker container.
docker run -it -d --name server_01 -p 2201:22 dimzrio/centos_ssh
Output :

Sampai disini sobat sudah membuat sebuah container dengan nama server_01. Sekarang kita coba remote ssh ke dalam container server_01 menggunakan ip internal.

Output : 

Kita juga dapat langsung ssh ke container menggunakan ip private dari interface docker0.

Output :


Demikian tutorial docker indonesia kali ini mengenai Run SSH Server pada Docker Container CentOS. Semoga bermanfaat bagi kita semua dan selamat mencoba..!!!

Setup High Availability Web Service dengan Docker HAProxy


Setup High Availability Web Service - Hallo sobat opreker, pada artikel sebelumnya www.dimasrio.com sudah menjelaskan bagimana cara membuat web service menggunakan docker. Pada kesempatan kali ini, saya akan mencoba sedikit mengembangkan artikel sebelumnya yaitu dengan membuat high availability web service dengan haproxy. Oke sobat, berikut yang sobat harus persiapkan.
  1. Download (pull) docker images nginx dan haproxy.
    docker pull nginx
    Untuk download images haproxy caranya sedikit berbeda. Karena images haproxy memerlukan file haproxy.cfg maka kita perlu membuat Dockerfile saat pull images haproxy.
    touch haproxy.cfg
    touch Dockerfile
    Tambahkan perintah berikut pada Dockerfile.
    FROM haproxy:1.7
    COPY haproxy.cfg /usr/local/etc/haproxy/haproxy.cfg
    Selanjutnya build images haproxy.
    docker build -t haproxy .
    Output :


  2. Install docker compose.
Jika kedua tahap di atas sudah selesai dilakukan maka lanjut pada konfigurasi.

Konfigurasi High Availability Web Service

Step 1 - Buat direktory untuk docker compose.
mkdir /docker
touch /docker/docker-compose.yml
Tambahkan perintah berikut pada docker-compose.yml.
version: '2'

services:

        nginx_01:
          container_name: web01
          image: nginx
          restart: always
          volumes:
               - ./nginx/www01:/usr/share/nginx/html/:rw

        nginx_02:
          container_name: web02
          image: nginx
          restart: always
          volumes:
               - ./nginx/www02:/usr/share/nginx/html/:rw
              
        load_balance:
          container_name: load_balance
          image: haproxy
          restart: always
          ports:
               - 8082:8082
               - 8080:80
          links:
               - nginx_01
               - nginx_02
          volumes:
               - ./haproxy/:/usr/local/etc/haproxy/:rw
Step 2 - Buat direktory untuk konfigurasi haproxy.
mkdir /docker/haproxy
touch /docker/haproxy/haproxy.cfg
Tambahkan perintah berikut pada file /docker/haproxy/haproxy.cfg.
global
    log         127.0.0.1 local2 info
    maxconn     512
    daemon

defaults
    mode http
    log global
    option httplog
    timeout connect 10s
    timeout client 30s
    timeout server  30s

frontend http-in
    bind *:80
    default_backend http_backend
    option forwardfor

backend http_backend
    balance roundrobin
    server www01 web01:80 check
    server www02 web02:80 check
   
frontend stats
    bind *:8082
    stats enable
    stats auth admin:admin
    stats hide-version
    stats show-node
    stats refresh 15s
    stats uri /stats
Step 3 - Jalankan docker compose.
docker-compose up -d
Output :

Sampai di sini sobat sudah bisa menambahkan script html, sebagai contoh buat script index.html sederhana pada folder www01 dan www02 pada direktory /docker/nginx/

Output:


Demikian tutorial docker kali ini mengenai simple setup high availability web service dengan docker haproxy. Semoga bermanfaat bagi kita semua dan selamat mencoba..!!!

Cara menggunakan Docker Compose


Docker Compose adalah sebuah tools yang digunakan untuk mendefinisikan, menggabungkan dan mengkonfigurasi berberapa docker container menjadi satu kesatuan application's services. Karena sebelumnya kita sudah belajar dan mengenal beberapa command docker maka kali ini dimasrio.com akan menjelaskan bagimana cara menggunakan docker compose untuk setup suatu service application's.

Step 1 - Install docker
Step 2 - Install docker compose
yum -y install python-pip
pip install docker-compose
Step 3 - Configure docker compose

Pada contoh kali ini saya akan mengambil contoh membuat suatu service http menggunakan nginx

Download docker image nginx.
docker pull nginx
Buat sebuah directory dan docker compose file.
mkdir /docker
mkdir /docker/nginx
cd /docker/nginx/

touch docker-compose.yml
Edit isi file docker-compose.yml seperti di bawah ini.
version: '2'

services:

 nginx:
  container_name: web01
  image: nginx
  restart: always
  ports:
   - "8081:80"
  volumes:
  - ./www:/usr/share/nginx/html:rw
Perintah diatas akan membuat sebuah container dengan nama web01 dengan listen port 8081 yang di nat ke port 80 (service nginx). Sedangkan volumes digunakan untuk mounting direktory /usr/share/nginx/html pada conteiner ke direktory /docker/nginx/www host. Sehingga jika kita ingin membuat halaman index.html kita hanya perlu meletakannya pada direktory www.

Setelah selesai jalankan docker-compose sebagai daemon.
docker-compose up -d
Output :

Sampai disini sobat sudah bisa membuat halaman web. Sebagai contoh saya sudah membuat index.html yang saya letakan pada direktory www.

Output :


Demikian tutorial docker compose singkat saya saya kali ini. Semoga bermanfaat bagi kita semua dan selamat mencoba.!!!

Internet Marketing

Linux