Menyebarkan Kubernet Dengan Kubeadm di CentOS 7
Ikhtisar Artikel ini dimaksudkan untuk membantu Anda mendapatkan kluster Kubernet dan menjalankan dengan kubeadm dalam waktu singkat. Panduan ini akan menggunakan dua server, pada
Panduan ini akan menunjukkan kepada Anda cara membuat dan mengkonfigurasi gerombolan Docker menggunakan beberapa server dan Portainer Alpine Linux 3.9.0. Perlu diketahui bahwa Vultr menawarkan Aplikasi Docker Satu-Klik yang saat ini mendukung CentOS 7 x64 dan Ubuntu 16.04 x64.
Untuk memulai, Anda memerlukan setidaknya dua server VC2 yang menjalankan Alpine Linux 3.9.0. Dalam kerumunan Docker Anda, salah satu server ini akan bertindak sebagai manager node
- interfacing dengan jaringan eksternal dan mendelegasikan pekerjaan ke node pekerja. Server lain kemudian akan bertindak sebagai worker node
- pekerjaan pelaksana yang didelegasikan kepadanya oleh simpul manajer.
Perhatikan bahwa Anda dapat meluncurkan lebih dari dua server jika aplikasi Anda memerlukan redundansi dan / atau lebih banyak daya komputasi, dan langkah-langkah yang disediakan dalam panduan ini akan tetap berlaku.
Kunjungi antarmuka penyebaran server Vultr .
Pastikan Vultr Cloud (VC2)
tab dipilih di bagian atas halaman.
Anda dapat memilih lokasi mana pun dari Server Location
bagian ini, namun semua server harus berada di lokasi yang sama , jika tidak, maka tidak akan mungkin untuk mengerahkan segerombolan Docker ke sana.
Pilih ISO Library
tab Server Type
bagian dan pilih Alpine Linux 3.9.0 x86_64
gambar.
Pilih opsi yang sesuai dari Server Size
bagian. Panduan ini akan menggunakan ukuran server SSD 25 GB, tetapi ini mungkin tidak cukup untuk memenuhi persyaratan sumber daya aplikasi Anda. Walaupun Vultr memudahkan untuk meningkatkan ukuran server setelah diluncurkan, Anda harus tetap mempertimbangkan dengan hati-hati ukuran server mana yang perlu dilakukan aplikasi Anda secara optimal.
Di Additional Features
bagian ini, Anda harus memilih Enable Private Networking
opsi. Meskipun opsi lain tidak diperlukan untuk mengikuti panduan ini, Anda harus mempertimbangkan apakah masing-masing masuk akal atau tidak dalam konteks aplikasi Anda.
Jika sebelumnya Anda telah mengaktifkan Multiple Private Networks
opsi pada akun Anda, Anda harus memilih jaringan yang sudah ada atau membuat jaringan pribadi baru untuk server Anda. Jika Anda belum mengaktifkannya, maka Anda dapat mengabaikan bagian ini. Untuk informasi tentang mengkonfigurasi jaringan pribadi secara manual, lihat panduan ini .
Lewati Firewall Group
bagian untuk saat ini. Hanya server yang bertindak sebagai simpul manajer di kumpulan Docker yang akan memerlukan port terbuka, dan ini harus dikonfigurasikan setelah penyebaran server.
Di bagian paling bawah halaman, Anda harus memasukkan Server Qty
setidaknya dua. Seperti disebutkan sebelumnya, Anda mungkin perlu lebih dari dua server, tetapi dua sudah cukup untuk mengikuti panduan ini.
Terakhir, di Server Hostname & Label
bagian ini, masukkan nama host dan label yang bermakna dan mudah diingat untuk setiap server. Untuk tujuan panduan ini, nama host dan label dari server pertama akan docker-manager
dan Docker Manager
, respectively- dan docker-worker
dan Docker Worker
untuk yang kedua, masing-masing.
Setelah memeriksa ulang semua konfigurasi Anda, Anda kemudian dapat mengklik Deploy Now
tombol di bagian bawah halaman untuk meluncurkan server Anda.
Karena Anda memilih OS dari pustaka ISO Vultr, Anda harus menginstal dan mengkonfigurasi Alpine Linux 3.9.0 secara manual di setiap server.
Setelah memberi Vultr satu atau dua menit untuk mengalokasikan server Anda, klik more options
ikon triple dot untuk Docker Manager
server pada antarmuka manajemen server , dan kemudian pilih View Console
opsi.
Anda harus diarahkan ke konsol dengan prompt masuk. Jika tidak, harap tunggu sebentar Vultr menyelesaikan penyebaran server Anda.
Pada prompt masuk itu, masukkan root
sebagai nama pengguna. Versi langsung dari Alpine Linux 3.9.0 (yang sedang dijalankan oleh server Anda) tidak memerlukan superuser untuk memasukkan kata sandi saat masuk.
Setelah berhasil masuk ke akun root, Anda akan melihat pesan sambutan diikuti oleh prompt shell yang terlihat seperti berikut:
localhost:~#
Untuk memulai pemasang Alpine Linux, masukkan perintah berikut:
# setup-alpine
Pertama, pilih tata letak keyboard yang sesuai. Panduan ini akan menggunakan us
tata letak dan varian.
Saat mengatur nama host, pilih nama host yang sama yang Anda tetapkan untuk server ini selama penerapan. Jika Anda telah mengikuti panduan ini dengan tepat, nama host seharusnya docker-manager
.
Dua antarmuka jaringan harus tersedia: eth0
dan eth1
. Jika Anda hanya melihat eth0
, itu berarti Anda tidak mengkonfigurasi jaringan pribadi server Anda dengan benar. Inisialisasi eth0
menggunakan dhcp
, dan menginisialisasi eth1
menggunakan alamat IP pribadi, netmask, dan gateway server ini ditugaskan selama penyebaran. Anda dapat mengakses detail ini dari antarmuka pengaturan server Anda. Saat diminta, jangan lakukan konfigurasi jaringan manual.
Masukkan kata sandi baru untuk akun root, lalu pilih zona waktu yang sesuai untuk lokasi yang Anda pilih untuk menggunakan server ini.
Jika Anda bermaksud menggunakan proxy HTTP / FTP, masukkan URL-nya, jika tidak jangan setel URL proxy.
Pilih klien NTP untuk mengelola sinkronisasi jam sistem. Panduan ini akan digunakan busybox
.
Ketika diminta menggunakan mirror repositori paket, pilih salah satu secara eksplisit dengan memasukkan nomornya; secara otomatis mendeteksi dan memilih yang tercepat dengan memasukkan f
; atau secara manual mengedit file konfigurasi repositori dengan memasukkan e
, yang tidak dianjurkan kecuali Anda terbiasa dengan Alpine Linux. Panduan ini akan menggunakan cermin pertama.
Jika Anda berencana untuk menggunakan SSH untuk mengakses server Anda atau meng-host sistem file berbasis SSH, pilih server SSH untuk digunakan. Panduan ini akan digunakan openssh
.
Saat diminta menggunakan disk, pilih disk vda
sebagai sys
jenis.
Alpine Linux 3.9.0 sekarang harus diinstal di server Anda. Ulangi proses ini untuk semua server lain yang Anda gunakan sebelumnya, memastikan Anda mengganti nilai yang benar untuk nama host dan eth1
antarmuka jaringan.
Pada titik ini, server Anda masih menjalankan versi ISO langsung dari Alpine Linux 3.9.0. Untuk mem-boot dari instalasi SSD, kunjungi antarmuka pengaturan server Anda, navigasikan ke Custom ISO
entri menu samping, dan klik Remove ISO
tombol. Ini harus me-reboot server. Jika tidak, maka reboot secara manual.
Setelah server selesai reboot, navigasikan kembali ke konsol web untuk server Docker Manager
.
Masuk ke akun root menggunakan kata sandi yang Anda atur sebelumnya selama proses instalasi.
Aktifkan repositori paket komunitas dengan membatalkan komentar pada baris ketiga /etc/apk/repositories
penggunaan vi
. Anda dapat mengaktifkan edge dan repositori pengujian dengan cara yang serupa, tetapi mereka tidak diharuskan untuk mengikuti panduan ini.
Sinkronisasi indeks paket lokal server dengan repositori jarak jauh yang Anda pilih sebelumnya dengan memasukkan perintah shell berikut:
# apk update
Kemudian tingkatkan paket yang sudah usang:
# apk upgrade
Seperti sebelumnya, ulangi proses konfigurasi ini untuk setiap server yang Anda gunakan sebelumnya.
Sebelum menginstal paket Docker itu sendiri, Anda mungkin ingin membuat docker
pengguna terpisah . Anda dapat melakukan ini menggunakan perintah berikut:
# adduser docker
Catatan: Pengguna baru ini dan setiap pengguna yang ditambahkan ke docker
grup baru akan memiliki hak akses root setelah paket Docker diinstal. Lihat masalah berikut dari repositori Moby Github:
Karena
--privileged
in docker, siapa pun yang ditambahkan ke grup 'buruh pelabuhan' adalah setara dengan root. Siapa pun dalam kelompok buruh pelabuhan memiliki pintu belakang di sekitar semua kebijakan eskalasi hak istimewa dan audit pada sistem.Ini berbeda dari seseorang yang dapat menjalankan menjalankan sudo ke root, di mana mereka memiliki kebijakan, dan audit diterapkan padanya.
Jika Anda ingin memberikan sudo izin kepada docker
pengguna, instal sudo
paket terlebih dahulu :
# apk add sudo
Kemudian buat sudo
grup:
# addgroup sudo
Akhirnya, tambahkan docker
pengguna ke sudo
grup:
# adduser docker sudo
Sekarang Anda dapat mengikuti langkah 4 panduan ini untuk menyelesaikan konfigurasi sudo.
Pada titik ini, Anda siap menginstal paket Docker. Perhatikan bahwa tidak sepenuhnya diperlukan untuk memiliki docker
pengguna sudo yang mampu dan terpisah untuk menginstal dan mengkonfigurasi Docker, tetapi panduan ini mengikuti konvensi itu.
Instal paket Docker dengan perintah berikut:
# apk add docker
Kemudian aktifkan skrip init Docker:
# rc-update add docker
Akhirnya, mulai daemon Docker:
# rc-service docker start
Anda dapat memverifikasi bahwa Docker berjalan dengan perintah ini:
# docker info
Seperti yang terakhir kali, ulangi proses instalasi Docker ini untuk setiap server yang Anda gunakan di awal.
Dengan semua pengaturan yang ditangani, Anda akhirnya siap untuk membuat gerombolan Docker.
Arahkan kembali ke konsol web Docker Manager
server Anda . Anda akan mengonfigurasi server ini sebagai simpul pengelola di swarm Anda. Jika Anda memilih untuk membuat docker
pengguna lebih awal, login menggunakan akun itu daripada superuser.
Masukkan perintah berikut, tetapi ganti 192.0.2.1
dengan alamat IP privat (bukan publik) Docker Manager
yang ditetapkan server Anda :
$ docker swarm init --advertise-addr 192.0.2.1
Docker akan menampilkan perintah yang dapat Anda jalankan di server lain di jaringan pribadi untuk menambahkannya sebagai node pekerja ke gerombolan baru ini. Simpan perintah ini.
Sekarang navigasikan ke konsol web Docker Worker
server Anda , masuk dengan docker
pengguna jika Anda membuatnya.
Untuk menambahkan server ini sebagai simpul pekerja ke gerombolan yang baru saja Anda buat, jalankan perintah yang Anda simpan dari output dari perintah pembuatan gerombolan. Ini akan terlihat mirip dengan yang berikut:
$ docker swarm join --token SWMTKN-1-XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX-XXXXXXXXXXXXXXXXXXXXXXXXX 192.0.2.1:2377
Docker akan menampilkan apakah node dapat bergabung dengan swarm. Jika Anda mengalami masalah saat menambahkan node pekerja ke swarm, periksa kembali konfigurasi jaringan pribadi Anda dan lihat panduan ini untuk pemecahan masalah.
Jika Anda menggunakan lebih dari dua server di awal, Anda dapat menambahkan sisanya sebagai node pekerja ke gerombolan Anda menggunakan perintah di atas, meningkatkan jumlah sumber daya yang tersedia untuk aplikasi Anda. Atau, Anda dapat menambahkan node manajer tambahan, tapi itu di luar cakupan panduan ini.
Pada titik ini gerombolan Docker Anda siap digunakan. Anda dapat, bagaimanapun, secara opsional meluncurkan tumpukan Portainer pada node manajer di swarm Anda. Portainer menawarkan antarmuka web yang nyaman untuk mengelola gerombolan Anda dan node di dalamnya.
Sekarang saatnya untuk membuat grup firewall untuk kerumunan Anda. Kecuali jika aplikasi Anda secara khusus membutuhkannya, hanya memaparkan port pada node manajer Anda . Mengekspos port pada node pekerja Anda tanpa pertimbangan yang cermat dapat menimbulkan kerentanan.
Arahkan ke antarmuka manajemen firewall dan buat grup firewall baru. Aplikasi Anda harus menentukan port mana yang akan diekspos, tetapi Anda harus, paling tidak, mengekspos port 9000
untuk Portainer. Terapkan grup firewall ini ke Docker Manager
server.
Meskipun tidak diperlukan, mengamankan Portainer dengan SSL sangat disarankan. Demi panduan ini, Anda hanya akan menggunakan sertifikat OpenSSL yang ditandatangani sendiri, tetapi Anda harus mempertimbangkan untuk menggunakan Let's Encrypt dalam produksi.
Arahkan ke konsol web Docker Manager
server, masuk menggunakan docker
pengguna, dan gunakan perintah berikut untuk menghasilkan sertifikat OpenSSL yang ditandatangani sendiri:
$ mkdir ~/certs
$ openssl genrsa -out ~/certs/portainer.key 2048
$ openssl req -new -x509 -sha256 -key ~/certs/portainer.key -out ~/certs/portainer.pem -days 3650
Buat file baru ~/portainer-agent-stack.yml
,, dengan konten berikut:
version: '3.2'
services:
agent:
image: portainer/agent
environment:
AGENT_CLUSTER_ADDR: tasks.agent
CAP_HOST_MANAGEMENT: 1
volumes:
- /var/run/docker.sock:/var/run/docker.sock
- /var/lib/docker/volumes:/var/lib/docker/volumes
- /:/host
networks:
- agent_network
deploy:
mode: global
portainer:
image: portainer/portainer
command: -H tcp://tasks.agent:9001 --tlsskipverify --ssl --sslcert /certs/portainer.pem --sslkey /certs/portainer.key
ports:
- target: 9000
published: 9000
protocol: tcp
mode: host
volumes:
- portainer_data:/data
- /home/docker/certs:/certs
networks:
- agent_network
deploy:
mode: replicated
replicas: 1
placement:
constraints: [node.role == manager]
networks:
agent_network:
driver: overlay
attachable: true
volumes:
portainer_data:
Setelah memodifikasi file konfigurasi Docker stack ini agar sesuai dengan kebutuhan Anda, Anda dapat menggunakannya:
$ docker stack deploy --compose-file ~/portainer-agent-stack.yml portainer
Untuk memverifikasi bahwa Portainer berfungsi, jalankan perintah berikut setelah memberi Docker satu atau dua menit untuk menggunakan tumpukan:
$ docker ps
Anda akan melihat dua wadah berisi gambar portainer/portainer:latest
dan portainer/agent:latest
, memverifikasi bahwa Portainer dimulai dengan benar.
Anda sekarang dapat mengkonfigurasi dan mengelola gerombolan Docker Anda dengan mengunjungi alamat IP publik Docker Manager
server Anda pada port 9000
menggunakan HTTPS.
Ikhtisar Artikel ini dimaksudkan untuk membantu Anda mendapatkan kluster Kubernet dan menjalankan dengan kubeadm dalam waktu singkat. Panduan ini akan menggunakan dua server, pada
Rancher OS adalah distribusi Linux yang sangat ringan yang dibangun di sekitar Docker. OS itu sendiri berbobot sekitar 20MB. Tutorial ini akan membantu Anda menjalankan dan menjalankannya
Pendahuluan Docker adalah aplikasi yang memungkinkan kita untuk menyebarkan program yang dijalankan sebagai wadah. Itu ditulis dalam bahasa pemrograman Go populer
Menggunakan Sistem yang Berbeda? Docker adalah aplikasi yang memungkinkan untuk penyebaran perangkat lunak dalam wadah virtual. Itu ditulis dalam programmin Go
Harbor adalah server registri sumber terbuka kelas perusahaan yang menyimpan dan mendistribusikan gambar Docker. Harbor memperluas distribusi Docker sumber terbuka b
Artikel ini menjelaskan cara menginstal docker-compose di CoreOS. Di CoreOS, folder / usr / tidak dapat diubah sehingga jalur standar / usr / local / bin tidak tersedia untuk
Menggunakan Sistem yang Berbeda? Pendahuluan Rancher adalah platform sumber terbuka untuk menjalankan kontainer dan membangun layanan kontainer pribadi. Peternak adalah pangkalan
Menggunakan Sistem yang Berbeda? Pendahuluan Rancher adalah platform sumber terbuka untuk menjalankan kontainer dan membangun layanan kontainer pribadi. Peternak adalah pangkalan
Aplikasi PHP biasanya disusun oleh server web, sistem basis data relasional dan juru bahasa itu sendiri. Dalam tutorial ini kita akan menjadi leveragin
Menggunakan Sistem yang Berbeda? Pendahuluan Docker Swarm mengubah masing-masing server Anda menjadi sekelompok komputer; memfasilitasi penskalaan, ketersediaan tinggi an
Dengan bantuan aplikasi Vultr Docker, Anda dapat dengan mudah menggunakan Docker pada instance server Vultr Anda. Sementara itu, Anda dapat memfasilitasi tugas mengelola Docker
Kita semua tahu dan cinta Docker, sebuah platform untuk membuat, mengelola, dan mendistribusikan kontainer aplikasi di beberapa mesin. Docker Inc. menyediakan layanan t
Menggunakan Sistem yang Berbeda? Pendahuluan Sentry adalah solusi open source untuk pelacakan kesalahan. Sentry melacak pengecualian dan pesan berguna lainnya
Ikhtisar RancherOS adalah sistem operasi yang sangat ringan (hanya sekitar 60 MB) yang menjalankan daemon Docker sistem sebagai PID 0 untuk menjalankan layanan sistem
Kubernetes adalah platform sumber terbuka yang dikembangkan oleh Google untuk mengelola aplikasi kemas di sekelompok server. Itu dibangun di atas satu dekade dan
Menggunakan Sistem yang Berbeda? Pendahuluan Docker Swarm mengubah masing-masing server Anda menjadi sekelompok komputer, memfasilitasi penskalaan, ketersediaan tinggi dan
Tutorial ini menjelaskan dasar-dasar memulai Docker. Saya berasumsi bahwa Anda sudah menginstal Docker. Langkah-langkah dalam tutorial ini akan bekerja pada sebuah
Saat menjalankan aplikasi web, Anda biasanya ingin memaksimalkan sumber daya Anda tanpa harus mengonversi perangkat lunak Anda untuk menggunakan multithreading.
Prasyarat Mesin Docker 1.8+. Minimal 4GB ruang disk. Minimal RAM 4GB. Langkah 1. Instal Docker Untuk menginstal SQL-Server, Docker mus
Artikel ini akan menunjukkan kepada Anda bagaimana menyebarkan aplikasi Node Anda dalam wadah Docker. Catatan: Tutorial ini mengasumsikan bahwa Anda telah menginstal dan membaca Docker
Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1
Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.
Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.
Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.
Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.
CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?
Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.
Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!
Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.
Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut