CentOS 7de Tavşan Kümesini Kümeleme
RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir
Bu makale, bir Kubernetes kümesini hemen kurup kubeadm ile çalıştırmanıza yardımcı olmayı amaçlamaktadır. Bu kılavuz, bir ana sunucu ve bir çalışan olmak üzere iki sunucu dağıtacaktır, ancak istediğiniz sayıda sunucuyu dağıtabilirsiniz.
Kubeadm, Kubernetes tarafından geliştirilen ve en iyi uygulamaları izleyerek minimum uygulanabilir küme kurmanıza ve çalıştırmanıza olanak tanıyan bir araçtır. Yalnızca küme önyükleme yapar, sağlama makineleri değil. Eklentiler, Kubernetes panosu, izleme çözümleri ve benzeri şeyler kubeadm'in sizin için yapacağı bir şey değildir.
Dağıtacağımız sunucular için birkaç gereksinim vardır. Deb / rpm uyumlu bir işletim sistemi çalıştıran bir veya daha fazla makine. CentOS kullanacağız.
Kümedeki tüm makineler arasında tam ağ bağlantısı
Bu kılavuzda konuşlandırılan iki sunucu şunlardır: - CentOS 7 (Çalışan düğümü) ile 1 CPU 2GB RAM - CentOS 7 ile 2 CPU 4GB RAM (Ana düğüm)
Her iki sunucudaki bu RAM miktarı ile Kubernetes'in nefes alması için bolca alan olacaktır.
Hem ana hem de çalışan düğümü üzerinde atmamız gereken adımlar şunlardır:
1.14
Bu derste Kubernetes sürümünü kullanacağız. Bu sürüm için Kubernetes, Docker sürümünü çalıştırmanızı önerir 18.06.2
. Kuberenetes sürümünüz için önerilen Docker sürümünü kontrol ettiğinizden emin olun.
Yum'a Docker deposunu ekleyeceğiz ve özellikle kuracağız 18.06.2
. Docker kurulduktan sonra, docker arka plan programını Kubernetes tarafından önerilen ayarlara yapılandırmamız gerekir.
###Add yum-utils, if not installed already
yum install yum-utils
###Add Docker repository.
yum-config-manager --add-repo https://download.docker.com/linux/centos/docker-ce.repo
###Install Docker CE.
yum update && yum install docker-ce-18.06.2.ce
###Create /etc/docker directory.
mkdir /etc/docker
###Setup daemon.
cat > /etc/docker/daemon.json <<EOF
{
"exec-opts": ["native.cgroupdriver=systemd"],
"log-driver": "json-file",
"log-opts": {
"max-size": "100m"
},
"storage-driver": "overlay2",
"storage-opts": [
"overlay2.override_kernel_check=true"
]
}
EOF
mkdir -p /etc/systemd/system/docker.service.d
###Restart Docker
systemctl daemon-reload
systemctl enable docker.service
systemctl restart docker
CentOS kullandığımız için SELinux'u devre dışı bırakmamız gerekiyor. Kapsayıcıların ana bilgisayar dosya sistemine erişmesine izin vermek için bu gereklidir.
setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=disable/' /etc/selinux/config
Kubelet'in düzgün çalışabilmesi için değiştirmenin devre dışı bırakılması gerekir.
sed -i '/swap/d' /etc/fstab
swapoff -a
Kubernetes, gelen ve giden trafiği işlemek için IPTable'ları kullanır; böylece herhangi bir sorunu önlemek için firewalld'i devre dışı bırakırız.
systemctl disable firewalld
systemctl stop firewalld
Kubernetes net.bridge.bridge-nf-call-iptables
, 1 olarak ayarlandığımızdan emin olmanızı önerir . Bu, REHL / CentOS 7'nin iptables'ları atlaması nedeniyle trafiğin yanlış yönlendirilmesi ile ilgili sorunlardan kaynaklanmaktadır.
cat <<EOF > /etc/sysctl.d/k8s.conf
net.bridge.bridge-nf-call-ip6tables = 1
net.bridge.bridge-nf-call-iptables = 1
EOF
sysctl --system
Yum için kubernetes repo eklememiz gerekecek. Bunu yaptıktan sonra sadece install komutunu çalıştırmalı ve kubelet'i etkinleştirmeliyiz.
cat <<EOF > /etc/yum.repos.d/kubernetes.repo
[kubernetes]
name=Kubernetes
baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
enabled=1
gpgcheck=1
repo_gpgcheck=1
gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm-package-key.gpg
exclude=kube*
EOF
yum install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
systemctl enable --now kubelet
Şimdi hem ana hem de çalışan düğümümüzü tamamen yapılandırdık. Artık ana düğümümüzü başlatabilir ve çalışan düğümlerimize ana verilere katılabiliriz!
Not Daha fazla çalışan düğüm eklemek istiyorsanız, yukarıdaki işlemin tüm bu düğümlerde de yapılması gerekir.
Aşağıdaki komutu çalıştırarak ana düğümümüzü başlatmak istiyoruz. Aşağıdaki komutta ana düğümünüzün IP adresini değiştirmek isteyeceksiniz. Ayrıca, daha sonra Flannel ağ kaplamasını yüklediğimizde bizim için daha kolay hale getirmek için pod-network-cidr'yi geçireceğiz.
kubeadm init --apiserver-advertise-address=YOUR_IP_HERE --pod-network-cidr=10.244.0.0/16
Bu işlemin tamamlanması biraz zaman alabilir, ancak tamamlandığında, çıktının sonunda aşağıdaki gibi benzer bir şey görürsünüz.
kubeadm join YOUR_IP:6443 --token 4if8c2.pbqh82zxcg8rswui \
--discovery-token-ca-cert-hash sha256:a0b2bb2b31bf7b06bb5058540f02724240fc9447b0e457e049e59d2ce19fcba2
Bu komut, çalışan düğümlerin kümeye katılmak için yürütmesi gereken şeydir, bu nedenle not alın.
Sırada Flannel var. Pazen, kapsülün kapsülü iletişimine izin veren şeydir. Yükleyebileceğiniz çeşitli ağ yerleşimi türleri vardır, ancak basit olması için bu kılavuz Flannel'i kullanacaktır.
Komutları yürütebilmeniz için kube/config
dosyayı üzerine kopyalayın .$Home
kubectl
mkdir $HOME/.kube
cp /etc/kubernetes/admin.conf $HOME/.kube/config
Ana düğüm üzerindeki son bir adım Flannel'i kurmaktır. Aşağıdaki komutu çalıştırın.
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Kopyalanan bu yapılandırma ile çalıştırabilir kubectl get cs
ve bir yanıt alabilirsiniz.
NAME STATUS MESSAGE ERROR
scheduler Healthy ok
controller-manager Healthy ok
etcd-0 Healthy {"health":"true"}
Ana düğümünüz ayarlandı ve kullanıma hazır. İşçi düğümü üzerine!
Bu noktada, işçi düğümünde gerekli olan ek bir çalışma yoktur. Tek yapmamız gereken çıktılarımızdan kubeadm join
aldığımız komutu çalıştırmak kubeadm init
.
Eğer şans eseri kubeadm join komutunu yanlış yerleştirmişseniz, ana düğümde çalıştırarak başka bir tane oluşturabilirsiniz. kubeadm token create --print-join-command
Kubeadm join komutunu çalıştırdığınızda kubectl get nodes
, master üzerinde çalışırsanız aşağıdakine benzer bir çıktı görürsünüz.
NAME STATUS ROLES AGE VERSION
k8-master Ready master 107m v1.14.2
k8-worker Ready <none> 45m v1.14.2
Tıpkı kubeadm kullanarak bir Kubernetes kümesini önyüklemiş olduğunuz gibi. Bunu özel ağlarla da yapabilirsiniz. Vultr ve diğer bulut sağlayıcıları özel ağlara izin verir. Ayrıca, yerel makinenizden kümenize karşı kubectl komutlarını yürütmek istiyorsanız, bunu kubectl'i yerel olarak yükleyerek ve .kube/config
dosyayı kümeden yerel makinenize çekerek yapabilirsiniz $HOME/.kube/config
.
Umarım bu rehber kubeadm'den geçmenize yardımcı olur ve hiçbir zaman kubernet'lerle oynamanızı sağlar!
Kullanışlı bağlantılar:
RabbitMQ, AMQP, STOMP ve diğer iletişim teknolojilerini destekleyen açık kaynaklı bir mesaj aracısıdır. Kurumsal uygulamalarda yaygın olarak kullanılan bir
Farklı Bir Sistem mi Kullanıyorsunuz? Pagekit PHP ile yazılmış açık kaynaklı bir CMSdir. Pagekit kaynak kodu GitHubda herkese açık olarak barındırılıyor. Bu kılavuz size
Çok Güvenli FTP arka plan programı, ya da sadece vsFTPd, özelleştirme yeteneği olan hafif bir yazılım parçasıdır. Bu derste bir müttefikimiz olacak
Belirli durumlarda, Sistem Yöneticisinin bir kullanıcı hesabı oluşturması ve yalnızca kendi dosyalarını sFTP yoluyla yönetmek için erişimini kısıtlaması gerekebilir, ancak b
Bu makalede, ModSecurity tarafından korunan bir LEMP yığını oluşturmayı açıklayacağım. ModSecurity faydalı bir açık kaynaklı web uygulaması güvenlik duvarıdır.
Giriş LAMP, Linux, Apache, MySQL ve PHPnin kısaltmasıdır. Bu yazılım yığını, kurulum için en popüler açık kaynaklı çözümdür.
Farklı Bir Sistem mi Kullanıyorsunuz? Chamilo, çevrimiçi eğitim ve takım işbirliği için yaygın olarak kullanılan ücretsiz ve açık kaynaklı bir öğrenme yönetim sistemidir (LMS).
Eskiden OpenERP olarak bilinen Odoo, iyi bilinen bir açık kaynaklı ERP iş platformudur. Her büyüklükteki işletme, bol miktarda lis sayesinde Odoodan yararlanabilir
Icinga2 güçlü bir izleme sistemidir ve bir ana istemci modelinde kullanıldığında, NRPE tabanlı izleme kontrollerine olan ihtiyacın yerini alabilir. Master-Clien
Farklı Bir Sistem mi Kullanıyorsunuz? Couch CMS, web tasarımcılarının tasarlamalarını sağlayan basit ve esnek, ücretsiz ve açık kaynaklı bir İçerik Yönetim Sistemidir (CMS)
Farklı Bir Sistem mi Kullanıyorsunuz? Netdata, gerçek zamanlı sistem ölçümleri izleme alanında yükselen bir yıldızdır. Aynı türdeki diğer araçlarla karşılaştırıldığında, Netdata:
Farklı Bir Sistem mi Kullanıyorsunuz? ERP veya Kurumsal Kaynak Planlaması, temel iş süreçlerini yönetmek için kullanılan bir kurumsal uygulama paketidir. ERPNext ücretsizdir
Başka bir Vultr eğitimine hoş geldiniz. Burada, bir SAMP sunucusunun nasıl kurulacağını ve çalıştırılacağını öğreneceksiniz. Bu kılavuz CentOS 6 için yazılmıştır. Önkoşullar
Farklı Bir Sistem mi Kullanıyorsunuz? Giriş Sails.js, Ruby on Railse benzer şekilde Node.js için bir MVC çerçevesidir. Modern uygulamalar geliştirmek için yapar
Bu eğitimde, CentOS 6 Sistemine Half Life 2 oyun sunucusu kurma süreci ele alınacaktır. 1. Adım: Önkoşulları kurma
PrestaShop popüler bir açık kaynaklı e-ticaret çözümüdür. Kendi çevrimiçi mağazanızı ücretsiz oluşturmak için kullanabilirsiniz. Bu eğitimde, size
Farklı Bir Sistem mi Kullanıyorsunuz? MODX Revolution hızlı, esnek, ölçeklenebilir, ücretsiz ve açık kaynaklı, kurumsal düzeyde bir İçerik Yönetim Sistemi (CMS)
Giriş Linux sistemleri, süreçleri ve disk alanını izlemeye yardımcı olan varsayılan olarak top, df ve du gibi izleme araçlarıyla birlikte gelir. Çoğu zaman, onlar ar
Farklı Bir Sistem mi Kullanıyorsunuz? Kolab Groupware, ücretsiz ve açık kaynaklı bir web tabanlı grup yazılımı uygulamasıdır. Özellikleri e-posta iletişiminden, olaylardan oluşur
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