26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
GoCD açık kaynaklı bir sürekli dağıtım ve otomasyon sistemidir. Paralel ve sıralı yürütmeyi kullanarak karmaşık iş akışlarını modellemenizi sağlar. Değer akışı haritası, karmaşık bir iş akışını kolayca görselleştirmenizi sağlar. GoCD, iki derlemeyi kolayca karşılaştırmanıza ve istediğiniz uygulamanın herhangi bir sürümünü dağıtmanıza olanak tanır. GoCD ekosistemi, GoCD sunucusu ve GoCD aracısından oluşur. GoCD, web tabanlı kullanıcı arabirimini çalıştırmak ve aracıya iş yönetmek ve sağlamak gibi her şeyi kontrol etmekten sorumludur. Go aracıları işleri ve dağıtımları yürütmekten sorumludur.
Bu eğitimde, 192.168.1.1
genel IP adresi ve gocd.example.com
Vultr örneğine işaret eden alan adı olarak kullanacağız. Lütfen örnek alan adının ve IP adresinin tüm tekrarlarını gerçek adla değiştirdiğinizden emin olun.
Ubuntu 16.04 Güncelleme kılavuzunu kullanarak temel sisteminizi güncelleyin . Sisteminiz güncellendiğinde, Java'yı yüklemeye devam edin.
GoCD, Java sürüm 8 gerektirir ve hem Oracle Java hem de OpenJDK'yı destekler. Oracle Java 8 için Ubuntu deposunu ekleyin.
sudo add-apt-repository --yes ppa:webupd8team/java
sudo apt update
Oracle Java'yı yükleyin.
sudo apt -y install oracle-java8-installer
Versiyonu kontrol et.
java -version
Aşağıdaki çıktıyı göreceksiniz.
user@vultr:~$ java -version
java version "1.8.0_161"
Java(TM) SE Runtime Environment (build 1.8.0_161-b12)
Java HotSpot(TM) 64-Bit Server VM (build 25.161-b12, mixed mode)
Aşağıdaki paketi yükleyerek Java için varsayılan yolu ayarlayın.
sudo apt -y install oracle-java8-set-default
Koşarak JAVA_HOME
ayarlanıp ayarlanmadığını doğrulayabilirsiniz .
echo $JAVA_HOME
Göreceksin.
user@vultr:~$ echo $JAVA_HOME
/usr/lib/jvm/java-8-oracle
Hiç çıktı görmüyorsanız, geçerli kabuktan çıkış yapmanız ve tekrar oturum açmanız gerekir.
GoCD'nin resmi deposunu sisteme yükleyin.
echo "deb https://download.gocd.org /" | sudo tee /etc/apt/sources.list.d/gocd.list
curl https://download.gocd.org/GOCD-GPG-KEY.asc | sudo apt-key add -
sudo apt update
GoCD sunucusunu sisteminize kurun.
sudo apt install -y go-server
GoCD'yi başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.
sudo systemctl start go-server
sudo systemctl enable go-server
GoCD kontrol paneline erişmeden önce, eserleri saklamak için yeni bir dizin oluşturalım. Artefaktlar, işletim sisteminin ve uygulamaların kurulu olduğu aynı diskte saklanabilir. Alternatif olarak, yapay nesneleri saklamak için özel bir disk veya blok depolama sürücüsü kullanabilirsiniz.
Artefaktları saklamak için aynı diski kullanmak istiyorsanız, yeni bir dizin oluşturun ve GoCD kullanıcısına sahiplik sağlayın.
sudo mkdir /opt/artifacts
sudo chown -R go:go /opt/artifacts
GoCD yazılımı, nesneleri saklamak için ek bir bölüm veya sürücü kullanmanızı önerir. Sürekli bir entegrasyon ve dağıtım platformunda, artefaktlar çok sık üretilir. Sürekli yeni nesneler üretildiğinde disk alanı zamanla azalır. Bir aşamada, sisteminizde boş disk alanı kalmayacak ve sisteminizde çalışan hizmetler başarısız olacaktır. Bu sorunun üstesinden gelmek için, yapay nesneleri saklamak üzere yeni bir Vultr blok depolama sürücüsü takabilirsiniz . Hala aynı sürücüde artefaktların depolanmasına devam etmek istiyorsanız, "GoCD'yi Yapılandır" bölümüne atlayın.
Yeni bir blok depolama sürücüsü dağıtın ve bu sürücüyü GoCD sunucusu örneğinize ekleyin. Şimdi blok depolama cihazında yeni bir bölüm oluşturun.
sudo parted -s /dev/vdb mklabel gpt
sudo parted -s /dev/vdb unit mib mkpart primary 0% 100%
Dosya sistemini yeni diskte oluşturun.
sudo mkfs.ext4 /dev/vdb1
Blok depolama sürücüsünü takın.
sudo mkdir /mnt/artifacts
sudo cp /etc/fstab /etc/fstab.backup
echo "
/dev/vdb1 /mnt/artifacts ext4 defaults,noatime 0 0" | sudo tee -a /etc/fstab
sudo mount /mnt/artifacts
Şimdi çalıştırın df
ve yeni blok depolama sürücüsünün takılı olduğunu göreceksiniz /mnt/artifacts
.
[user@vultr ~]$ df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/vda1 20616252 6313892 13237464 33% /
...
/dev/vdb1 10188052 36888 9610596 1% /mnt/artifacts
GoCD kullanıcısına dizinin sahipliğini sağlayın.
sudo chown -R go:go /mnt/artifacts
Artık GoCD kontrol paneline erişebilirsiniz http://192.168.1.1:8153
. Güvenli bir bağlantıda GoCD kontrol paneline erişmek için erişin https://192.168.1.1:8154
. Sertifikaların geçerli olmadığını gösteren bir hata mesajı alırsınız. Sertifikalar kendinden imzalı olduğu için hatayı güvenle yok sayabilirsiniz. Güvenlik nedeniyle, kontrol panelini her zaman güvenli bir bağlantı üzerinden kullanmalısınız.
Yeni bir kanal oluşturmadan önce Admin >> Server Configuration
, üst gezinme çubuğundan " " seçeneğine gidin .
URL'yi " Site URL
" alanındaki güvenli olmayan sitenize ve " " alanına güvenli siteye girin Secure Site URL
.
Ardından, GoCD'den e-posta bildirimleri göndermek için SMTP sunucusu ayrıntılarınızı sağlayın.
Son olarak, eserleri saklamak istediğiniz konumun yolunu belirtin. Yapay nesneleri işletim sistemiyle aynı diskte depolamayı seçtiyseniz /opt/artifacts
; bir blok depolama sürücüsü takmayı seçtiyseniz, girebilirsiniz /mnt/artifacts
.
GoCD'yi eski eserleri otomatik olarak silecek şekilde de yapılandırabilirsiniz. Bir sonraki seçeneği disk boyutunuza göre yapılandırın. Ancak, otomatik silme seçeneği eski eserlerinizin yedeğini almaz. Manuel olarak yedek almak ve ardından eski eserleri silmek için, " Never
" seçeneği için " " seçeneğini belirleyerek otomatik silme özelliğini devre dışı bırakın Auto delete old artifacts
.
Yeni değişikliklerin uygulanması için GoCD sunucusunu yeniden başlatmanız gerekir.
sudo systemctl restart go-server
Varsayılan olarak, GoCD kontrol paneli herhangi bir kimlik doğrulama kullanacak şekilde yapılandırılmamıştır, ancak bir şifre dosyası ve LDAP kullanarak kimlik doğrulamayı destekler. Bu öğreticide, parola tabanlı kimlik doğrulaması ayarlayacağız.
Not : Kimlik doğrulamayı ayarlamak isteğe bağlı bir adımdır, ancak Vultr gibi herkese açık sunucular için şiddetle önerilir.
htpasswd
Şifrelenmiş bir şifre dosyası oluşturmak için komutu kullanabilmemiz için Apache araçlarını yükleyin .
sudo apt -y install apache2-utils
htpasswd
Bcrypt şifrelemesini kullanarak komutla bir şifre dosyası oluşturun .
sudo htpasswd -B -c /etc/go/passwd_auth goadmin
Kullanıcı için parolayı iki kez girin. Aşağıdaki çıktıyı göreceksiniz.
[user@vultr ~]$ sudo htpasswd -B -c /etc/go/passwd_auth goadmin
New password:
Re-type new password:
Adding password for user goadmin
Yukarıdaki aynı komutu kullanarak istediğiniz sayıda kullanıcı ekleyebilirsiniz, ancak -c
seçeneği kaldırın . Bu -c
seçenek, eski dosyayı yeni kullanıcıyla değiştirerek mevcut dosyayı değiştirir.
sudo htpasswd -B /etc/go/passwd_auth gouser1
Şimdi şifre dosyasını oluşturduk, GoCD kontrol paneline tekrar erişin. Admin >> Security >> Authorization Configurations
Üst gezinme çubuğundan " " öğesine gidin . Tıklayın Add
düğme ile herhangi bir kimlik sağlar. Password File Authentication Plugin for GoCD
Eklenti kimliği için " " seçin ve yolu şifre dosyasına yönlendirin. Şimdi Check Connection
GoCD'nin kimlik doğrulama için şifre dosyasını kullanabildiğini doğrulamak için " " düğmesini tıklayın.
Son olarak, kimlik doğrulama yöntemini kaydedin. Gösterge tablosunu yeniden yükleyin, otomatik olarak oturumunuzu kapatır. Şimdi bir giriş ekranı göreceksiniz. Daha önce oluşturulan kimlik bilgilerini kullanarak giriş yapın.
Yönetici kullanıcıyı manuel olarak tanıtmanız gerekir, aksi takdirde tüm kullanıcıların yönetici ayrıcalıkları olacaktır. Admin >> User Summary
Üst gezinme çubuğundan " " öğesine gidin .
Şimdi oluşturduğunuz yönetici kullanıcısını seçin ve " Roles
" açılır menüsünü tıklayın . " Go System Administrator
" Onay kutusunu seçerek kullanıcıyı tek yöneticiye tanıtın .
Şifre dosyasında oluşturulan GoCD'deki kullanıcıları eklemek için " ADD
" düğmesine tıklayın ve kullanıcıyı eklemek üzere arayın. Kullanıcılar ayrıca ilk girişlerinde GoCD kontrol paneline otomatik olarak eklenir. Açıkçası, kullanıcıların giriş yapabilmesi için, daha önce oluşturduğumuz şifre dosyasına eklenmesi gerekir.
Varsayılan olarak, GoCD bağlantı noktalarını 8153
ve 8154
güvenli bağlantıları dinler . Bağlantı noktası 8154
uygulamaya güvenli bir bağlantı sağlasa da, kendinden imzalı bir sertifika kullandığından tarayıcı hatalarını da görüntüler. Eğiticinin bu bölümünde Nginx'i Let's Encrypt ücretsiz SSL sertifikası ile kuracağız ve güvence altına alacağız. Nginx web sunucusu, gelen istekleri GoCD'nin HTTP
uç noktasına iletmek için ters proxy olarak çalışacaktır .
Nginx'i yükleyin.
sudo apt -y install nginx
Nginx'i başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.
sudo systemctl start nginx
sudo systemctl enable nginx
Certbot deposunu ekleyin.
sudo add-apt-repository --yes ppa:certbot/certbot
sudo apt-get update
Let's Encrypt CA'nın istemci uygulaması olan Certbot'u yükleyin.
sudo apt -y install certbot
Not : Let's Encrypt CA'dan sertifika almak için, sertifikaların oluşturulacağı etki alanı sunucuya yönlendirilmelidir. Değilse, etki alanının DNS kayıtlarında gerekli değişiklikleri yapın ve sertifika isteğini yeniden yapmadan önce DNS'nin yayılmasını bekleyin. Certbot, sertifikaları vermeden önce etki alanı yetkilisini denetler.
SSL sertifikaları oluşturun.
sudo certbot certonly --webroot -w /var/www/html -d gocd.example.com
Oluşturulan sertifikaların depolanması muhtemeldir /etc/letsencrypt/live/gocd.example.com/
. SSL sertifikası olarak fullchain.pem
ve özel anahtar olarak depolanacaktır privkey.pem
.
Sertifikaların şifrelenmesini 90 gün içinde sona erdirelim, bu nedenle cron işlerini kullanarak sertifikaların otomatik yenilenmesini ayarlamanız önerilir.
Cron iş dosyasını açın.
sudo crontab -e
Aşağıdaki satırı dosyanın sonuna ekleyin.
30 5 * * * /usr/bin/certbot renew --quiet
Yukarıdaki cron işi her gün 05: 30'da çalışacaktır. Sertifikanın geçerlilik süresi dolmuşsa, otomatik olarak yenilenir.
GoCD web arayüzü için yeni bir yapılandırma dosyası oluşturun.
sudo nano /etc/nginx/sites-available/gocd
Dosyayı doldurun.
upstream gocd {
server 127.0.0.1:8153;
}
server {
listen 80;
server_name gocd.example.com;
return 301 https://$host$request_uri;
}
server {
listen 443;
server_name gocd.example.com;
ssl_certificate /etc/letsencrypt/live/gocd.example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/gocd.example.com/privkey.pem;
ssl on;
ssl_session_cache builtin:1000 shared:SSL:10m;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers on;
access_log /var/log/nginx/gocd.access.log;
location / {
proxy_pass http://gocd;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $http_host;
proxy_set_header X-NginX-Proxy true;
proxy_redirect off;
}
location /go {
proxy_pass http://gocd/go;
proxy_http_version 1.1;
proxy_set_header Upgrade websocket;
proxy_set_header Connection upgrade;
proxy_read_timeout 86400;
}
}
Yapılandırma dosyasını etkinleştirin.
sudo ln -s /etc/nginx/sites-available/gocd /etc/nginx/sites-enabled/gocd
Yapılandırma değişikliğini uygulamak için Nginx web sunucusunu yeniden başlatın.
sudo systemctl restart nginx
Artık adresinden GoCD kontrol paneline erişebilirsiniz https://gocd.example.com
. Yönetici kimlik bilgilerini kullanarak kontrol panelinize giriş yapın Admin >> Server Configuration
ve üst gezinme çubuğundan " " seçeneğine gidin .
" Site URL
" Ve " Secure Site URL
" öğelerini ayarlayın https://gocd.example.com
.
GoCD sürekli entegrasyon ortamında, GoCD temsilcileri tüm görevlerin yerine getirilmesinden sorumlu çalışanlardır. Kaynakta bir değişiklik tespit edildiğinde, boru hattı tetiklenir ve işler yürütülmek üzere mevcut işçilere atanır. Aracı daha sonra görevi yürütür ve yürütmeden sonra son durumu bildirir.
Bir boru hattını çalıştırmak için en az bir ajanın yapılandırılması gerekir. GoCD aracısını GoCD sunucusuna kurmaya devam edin.
GoCD deposunu sunucuya zaten içe aktardığımızdan, Go Agent'ı doğrudan yükleyebiliriz.
sudo apt install -y go-agent
Şimdi GoCD sunucusunu başlatın ve önyükleme zamanında otomatik olarak başlamasını sağlayın.
sudo systemctl start go-agent
sudo systemctl enable go-agent
Yerel ana bilgisayarda çalışan GoCD aracısı algılandığında otomatik olarak etkinleştirilir.
26 Büyük Veri Analitik Tekniğine Bir Bakış: 1. Bölüm
Birçoğunuz Switch'in Mart 2017'de çıkacağını ve yeni özelliklerini biliyorsunuz. Bilmeyenler için, 'Switch'i 'olmazsa olmaz bir gadget' yapan özelliklerin bir listesini hazırladık.
Teknoloji devlerinin sözlerini yerine getirmesini mi bekliyorsunuz? teslim edilmeyenleri kontrol edin.
Büyük Veri Mimarisindeki farklı katmanları ve işlevlerini en basit şekilde öğrenmek için blogu okuyun.
Yapay Zekanın küçük ölçekli şirketler arasında nasıl popüler hale geldiğini ve onları büyütme ve rakiplerine üstünlük sağlama olasılıklarını nasıl artırdığını öğrenmek için bunu okuyun.
CAPTCHA, son birkaç yılda kullanıcıların çözmesi oldukça zorlaştı. Gelecekte spam ve bot tespitinde etkili kalabilecek mi?
Bilim hızla gelişip birçok çabamızı üstlendikçe, kendimizi açıklanamaz bir Tekilliğe maruz bırakmanın riskleri de artıyor. Okuyun, tekillik bizim için ne anlama gelebilir.
Teletıp, uzaktan sağlık hizmetleri ve gelecek nesiller üzerindeki etkisi nedir? Pandemi durumunda iyi bir yer mi değil mi? Bir görünüm bulmak için blogu okuyun!
Bilgisayar korsanlarının çok para kazandığını duymuş olabilirsiniz, ancak bu kadar parayı nasıl kazandıklarını hiç merak ettiniz mi? Hadi tartışalım.
Son zamanlarda Apple, sorunları gidermek için macOS Catalina 10.15.4'ü ek bir güncelleme yayınladı, ancak güncelleme, mac makinelerinde tuğla oluşmasına neden olan daha fazla soruna neden oluyor gibi görünüyor. Daha fazla bilgi edinmek için bu makaleyi okuyun