The Rise of Machines: Real World Applications of AI
Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.
Den här artikeln är tänkt att hjälpa dig att få igång ett Kubernetes-kluster med kubeadm på nolltid. Den här guiden kommer att distribuera två servrar, en master och en arbetare, men du kan distribuera så många servrar du vill.
Kubeadm är ett verktyg utvecklat av Kubernetes som låter dig få ett minimum av livskraftiga kluster igång genom att följa bästa praxis. Det kommer bara att starta upp ditt kluster, inte tillhandahållande av maskiner. Saker som tillägg, Kubernetes instrumentpanel, övervakningslösningar och så vidare är inget kubeadm kommer att göra för dig.
Det finns några krav för de servrar vi kommer att distribuera. En eller flera maskiner som kör ett deb/rpm-kompatibelt OS. Vi kommer att använda CentOS.
Full nätverksanslutning mellan alla maskiner i klustret
De två servrarna som används i den här guiden är följande: - 1 CPU 2GB RAM med CentOS 7 (arbetarnod) - 2 CPU 4GB RAM med CentOS 7 (Masternod)
Med denna mängd RAM-minne på båda servrarna kommer Kubernetes att ha gott om utrymme att andas.
Här är stegen vi måste ta på både huvud- och arbetarnoden:
Vi kommer att använda versionen 1.14av Kubernetes i denna handledning. För den här versionen rekommenderar Kubernetes att köra Docker-versionen 18.06.2. Se till att kontrollera den rekommenderade Docker-versionen för din version av Kuberenetes
Vi kommer att lägga till Docker-förrådet till yum och specifikt installera 18.06.2. När Docker är installerat måste vi konfigurera docker-demonen till de inställningar som rekommenderas av Kubernetes.
###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
Eftersom vi använder CentOS måste vi inaktivera SELinux. Detta är nödvändigt för att ge behållare åtkomst till värdfilsystemet.
setenforce 0
sed -i 's/^SELINUX=enforcing$/SELINUX=disable/' /etc/selinux/config
Swap måste inaktiveras för att kubelet ska fungera korrekt.
sed -i '/swap/d' /etc/fstab
swapoff -a
Kubernetes använder IPTables för att hantera inkommande och utgående trafik - så för att undvika problem inaktiverar vi brandvägg.
systemctl disable firewalld
systemctl stop firewalld
Kubernetes rekommenderar att vi ser till att den net.bridge.bridge-nf-call-iptablesär inställd på 1. Detta beror på problem där REHL/CentOS 7 har haft problem med att trafiken omdirigeras felaktigt på grund av att iptables förbigå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
Vi kommer att behöva lägga till kubernetes repo till yum. När vi väl gör det behöver vi bara köra installationskommandot och aktivera kubelet.
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
Nu har vi konfigurerat både vår huvud- och arbetarnod. Vi kan nu initiera vår huvudnod och ansluta våra arbetarnoder till mastern!
Notera Om du vill lägga till fler arbetarnoder måste processen ovan också göras på alla dessa noder.
Vi vill initiera vår masternod genom att köra följande kommando. Du vill byta ut din masternods IP-adress i kommandot nedan. Dessutom skickar vi in pod-network-cidr för att göra det lättare för oss senare när vi installerar Flannel-nätverksöverlägget.
kubeadm init --apiserver-advertise-address=YOUR_IP_HERE --pod-network-cidr=10.244.0.0/16
Detta kan ta ett tag att slutföra men när det är klart kommer du att se något liknande i slutet av utdata som följande.
kubeadm join YOUR_IP:6443 --token 4if8c2.pbqh82zxcg8rswui \
--discovery-token-ca-cert-hash sha256:a0b2bb2b31bf7b06bb5058540f02724240fc9447b0e457e049e59d2ce19fcba2
Det här kommandot är vad dina arbetarnoder behöver utföra för att gå med i klustret, så notera det.
Nästa upp är Flanell. Flanell är det som tillåter pod till pod kommunikation. Det finns olika andra typer av nätverksöverlägg som du kan installera men för enkelhetens skull kommer denna guide att använda Flannel.
Kopiera kube/configfilen till din $Homeså att du kan utföra kubectlkommandon.
mkdir $HOME/.kube
cp /etc/kubernetes/admin.conf $HOME/.kube/config
Ett sista steg på masternoden är att installera Flannel. Kör följande kommando.
kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml
Med den här konfigurationen kopierad kommer du att kunna köra kubectl get csoch få ett svar.
NAME STATUS MESSAGE ERROR
scheduler Healthy ok
controller-manager Healthy ok
etcd-0 Healthy {"health":"true"}
Din huvudnod är inställd och redo att gå. Till arbetarnoden!
Vid denna tidpunkt är det inget extra arbete som är nödvändigt på arbetarnoden. Allt vi behöver göra är att köra kubeadm joinkommandot som vi fick från vår kubeadm initutdata.
Om du av en slump tappade kubeadm join-kommandot kan du generera ett annat på masternoden genom att köra
kubeadm token create --print-join-command
När du väl kör kommandot kubeadm join, om du kör kubectl get nodespå master kommer du att se en liknande utdata som följande.
NAME STATUS ROLES AGE VERSION
k8-master Ready master 107m v1.14.2
k8-worker Ready <none> 45m v1.14.2
Precis så har du stövlat ett Kubernetes-kluster med kubeadm. Du kan också göra detta med privata nätverk. Vultr, liksom andra molnleverantörer, tillåter privata nätverk. Dessutom, om du vill köra kubectl-kommandon från din lokala dator mot ditt kluster, kan du åstadkomma detta genom att ha kubectl installerat lokalt och dra ner .kube/configfilen från klustret till din lokala dator i $HOME/.kube/config.
Förhoppningsvis hjälper den här guiden dig att korsa kubeadm och få dig att spela med kubernetes på nolltid!
Användbara länkar:
Artificiell intelligens är inte i framtiden, det är här i nuet I den här bloggen Läs hur Artificiell intelligens-applikationer har påverkat olika sektorer.
Är du också ett offer för DDOS-attacker och förvirrad över de förebyggande metoderna? Läs den här artikeln för att lösa dina frågor.
Du kanske har hört att hackare tjänar mycket pengar, men har du någonsin undrat hur de tjänar den typen av pengar? låt oss diskutera.
Vill du se revolutionerande uppfinningar av Google och hur dessa uppfinningar förändrade livet för varje människa idag? Läs sedan till bloggen för att se uppfinningar av Google.
Konceptet med att självkörande bilar ska ut på vägarna med hjälp av artificiell intelligens är en dröm vi har ett tag nu. Men trots flera löften finns de ingenstans att se. Läs den här bloggen för att lära dig mer...
När vetenskapen utvecklas i snabb takt och tar över en hel del av våra ansträngningar, ökar också riskerna för att utsätta oss för en oförklarlig singularitet. Läs, vad singularitet kan betyda för oss.
Läs bloggen för att känna till olika lager i Big Data Architecture och deras funktionaliteter på enklaste sätt.
Lagringsmetoderna för data har utvecklats kan vara sedan födelsen av data. Den här bloggen tar upp utvecklingen av datalagring på basis av en infografik.
I denna digitala värld har smarta hemenheter blivit en avgörande del av livet. Här är några fantastiska fördelar med smarta hemenheter om hur de gör vårt liv värt att leva och enklare.
Nyligen släppte Apple macOS Catalina 10.15.4, en tilläggsuppdatering för att åtgärda problem, men det verkar som om uppdateringen orsakar fler problem som leder till att mac-datorer blir murade. Läs den här artikeln för att lära dig mer