‫Ini akan menjadi kuliah pertama di mana kita akan menggunakan banyak host atau node, atau instance, atau apa
‫pun yang Anda inginkan ... beberapa OS. Kita akan mengatur kawanan 3-node
‫di ketiga node tersebut.
‫Sayangnya kami tidak dapat melakukan bagian ini dengan Docker bawaan di mesin Anda
‫karena itu hanya akan memberi kami satu OS. Kami membutuhkan tiga OS Linux untuk bermain dengan serangkaian fitur berikutnya.
‫Opsi pertama yang akan Anda miliki adalah menggunakan play-with-docker. com.
‫Ini benar-benar cara termudah untuk memulai.
‫Muncul dengan Docker pra-instal. Anda memerlukan waktu beberapa detik untuk menyediakan
‫tiga mesin yang berbeda, dan tidak memerlukan investasi untuk Anda. Tetapi itu berarti bahwa setiap empat jam itu akan menghapus semua pekerjaan yang telah Anda lakukan.
‫Jadi jika Anda pikir Anda akan melakukan sisa bagian ini selama beberapa hari, maka
‫ini mungkin bukan pilihan terbaik untuk Anda. Tetapi jika Anda akan fokus selama beberapa
‫jam, Anda pasti dapat melewati sebagian besar, jika tidak semua, hal-hal berkerumun multi node menggunakan Play With Docker dalam satu duduk.
‫Opsi lain yang Anda miliki adalah Anda dapat menggunakan mesin docker, yang bukan sesuatu yang telah
‫kita bicarakan, tetapi ini adalah alat baris perintah yang sebenarnya diinstal dengan Docker untuk Windows dan Docker untuk Mac.
‫Anda dapat mengunduhnya untuk Linux, dan ini pada dasarnya adalah alat otomatisasi untuk menyediakan mesin virtual secara lokal,
‫dan di Internet, dan kemudian secara otomatis mengatur Docker untuk Anda.
‫Cara standar kerjanya adalah dengan VirtualBox, yang dapat Anda instal secara gratis. Tetapi itu berarti bahwa jika Anda akan
‫menjalankan tiga mesin virtual secara lokal, masing-masing dari mereka mungkin membutuhkan pertunjukan RAM atau lebih untuk
‫menjalankan banyak contoh ini. Jadi Anda akan membutuhkan mesin dengan jumlah RAM yang baik di dalamnya. Pilihan lain, dan
‫yang akan saya default untuk banyak demo ini dan berjalan melalui, adalah DigitalOcean.
‫Saya hanya merekomendasikan DigitalOcean hanya karena mereka memiliki layanan termurah dan termudah untuk memulai, dan
‫mereka menjalankan semuanya pada SSD sehingga bagus dan cepat. Anda benar-benar dapat menggunakan ini dalam pengaturan yang
‫sangat, sangat mirip dengan produksi yang akan terjadi karena Anda menggunakan tiga mesin virtual yang sebenarnya, di
‫cloud, dan dibutuhkan sekitar satu menit untuk meluncurkan setiap mesin virtual.
‫Jika Anda berpikir bahwa itu mungkin suatu opsi, Anda dapat menggunakan kode referensi saya dan
‫referensi ke bagian ini untuk mendapatkan $ 10 pertama Anda secara gratis.
‫Jika Anda hanya akan membutuhkan beberapa hari untuk melewati hal-hal yang berkerumun ini, Anda dapat menyediakan tiga, $
‫10 per bulan node dan memilikinya selama berhari-hari atau seminggu.
‫Dan itu mungkin sesuai dengan anggaran $ 10 jadi secara teknis tidak akan dikenakan biaya apa pun.
‫Dan yang terakhir, ada begitu banyak cara untuk memasang Docker, dan yang benar-benar Anda butuhkan hanyalah
‫tiga mesin dengan Docker diinstal pada mereka. Anda dapat menggunakan Mesin Docker.
‫Ini memiliki driver bawaan yang memungkinkan Anda menggunakannya untuk menyediakan instance Amazon, atau instance Azure, atau Tetesan DigitalOcean, atau simpul
‫Google Compute atau tempat mana pun Anda bisa mendapatkan mesin virtual Linux, Anda sebenarnya dapat menginstal Docker dengan skrip
‫otomatis dari mendapatkan. buruh pelabuhan. com.
‫Terus terang, saya lebih suka mendapatkannya. buruh pelabuhan. versi com hanya karena Mesin Docker dapat
‫menyelamatkan Anda beberapa langkah, terutama untuk lokasi seperti Amazon dan Azure yang mengharuskan Anda untuk menyediakan banyak hal
‫yang berbeda sebelum Anda bisa hanya menyediakan mesin virtual. Tetapi Anda mungkin tidak akan menggunakan
‫Docker Machine dalam produksi.
‫Ini adalah alat untuk mengotomatisasi lingkungan dev dan pengujian. Itu tidak pernah benar-benar dirancang untuk
‫mengatur semua pengaturan produksi yang Anda butuhkan untuk multi-node swarm.
‫Tidak ada yang salah dengan itu, tetapi biasanya terjadi. buruh pelabuhan. com bekerja pada semua distribusi
‫Linux utama dan tidak memakan waktu lebih lama daripada benar-benar menggunakan Mesin Docker sendiri.
‫Saya akan memberi Anda contoh yang sangat cepat hanya mendapatkan salah satu skenario ini ke
‫titik di mana Docker diinstal. Kemudian mereka semua akan sangat mirip dengan cara kita
‫benar-benar membuat kawanan dan melakukan layanan kami
‫Jadi jangan berpikir bahwa Anda harus melakukannya dengan cara saya melakukannya.
‫Sebenarnya kami hanya mencoba untuk mendapatkan informasi Docker untuk benar-benar membawa kembali informasi, dan kemudian hanya untuk
‫memastikan bahwa ketiga node memiliki akses jaringan satu sama lain dan mereka berada di jaringan yang terhubung dengan baik.
‫Jadi idealnya mereka berada di jaringan yang sama.
‫Jika Anda akan menggunakan Play With Docker, Anda sebenarnya hanya pergi ke play-with-docker. com dan centang kotak untuk
‫aku bukan robot.
‫Dan jika itu memberi Anda layar CAPTCHA, cukup ikuti.
‫Baiklah. Anda akan melihat bahwa menghitung mundur empat jam.
‫Tetapi jika saya hanya mengklik contoh pembuatan, dan kemudian saya klik dua kali lagi, itu akan membuat tiga lingkungan
‫virtual dengan sangat cepat.
‫Sebagai catatan, ini sebenarnya menggunakan Docker di Docker, yang merupakan teknologi yang cukup rapi
‫di mana kami menjalankan Docker di dalam wadah Docker.
‫Tetapi dalam pengaturan ini dengan Play With Docker, yang dibuat oleh kapten Docker lain dan tim Docker,
‫sangat sulit untuk membedakannya.
‫Jika saya pergi ke node1, saya sudah dapat melihat bahwa informasi Docker memberi saya versi terbaru. Dan jika saya bahkan mencoba melakukan ping node2, itu
‫benar-benar mengenali nama-nama yang ramah, sehingga akan membuatnya lebih mudah untuk berkomunikasi di antara
‫mereka.
‫Jadi jika ini adalah sesuatu yang ingin Anda coba, ini adalah cara yang hebat dan mudah baik pada mesin bertenaga rendah atau
‫jika Anda tidak ingin meluangkan waktu untuk mengatur lingkungan selama empat jam ke depan.
‫Opsi kedua adalah menggunakan mesin buruh pelabuhan. Jika Anda telah menginstalnya, itu harus setidaknya versi 10 jika
‫tidak lebih baru.
‫Anda akan tahu apakah itu diinstal karena Anda akan mengetikkan perintah docker-machine dari baris perintah
‫Anda dan itu akan berhasil atau tidak.
‫Jika Anda perlu mengunduhnya untuk OS Linux khusus Anda, maka Anda dapat melompat ke Dok Dok, yang
‫sebenarnya akan memberi Anda garis ikal cepat untuk mengunduhnya.
‫Jika Anda menggunakan ToolBox di Windows 7 dan 8, atau Docker untuk Windows di Windows 10, atau Docker untuk Mac di
‫Mac OS, itu sudah akan menjadi yang terbaru di OS tersebut untuk Anda.
‫Jika Anda ingin menggunakan opsi VirtualBox, yang merupakan default, Anda hanya perlu
‫melompat ke virtualbox. org dan unduh versi terbaru untuk OS Anda. Dan Anda bahkan tidak perlu melakukan apa pun dengan
‫VirtualBox.
‫Itu hanya perlu diinstal. Dan dari baris perintah Anda, Anda cukup mengetik
‫docker-machine create node1, dan ini akan benar-benar dijalankan melalui pembuatan mesin virtual dengan BusyBox, yang
‫merupakan distribusi Linux yang sangat ringan.
‫Ini sebenarnya akan dijalankan melalui pembuatan mesin Linux yang sangat ringan, dan Anda hanya akan
‫mengulangi kedua perintah untuk node2 dan 3.
‫Jika Anda memerlukan informasi lebih lanjut tentang Mesin Docker, Anda sebenarnya dapat
‫melihat bagian referensi saya untuk tautan tutorial.
‫Setelah mesin Anda dibuat, Anda benar-benar memiliki dua opsi untuk bagaimana Anda dapat mengakses mesin-mesin itu.
‫Anda bisa menggunakan buruh pelabuhan-mesin ssh, dan kemudian nama simpul yang Anda buat dan itu akan melompat Anda langsung ke
‫mesin itu.
‫Atau Anda dapat menggunakan perintah lingkungan.
‫Jadi perintah docker-machine env, dan kemudian nama mesin yang Anda inginkan, akan memberikan Anda beberapa output, dan Anda dapat memotong dan menempelkan opsi ini ke
‫baris perintah Anda atau Anda dapat menyalin dan menempelkan opsi bawah, dan itu akan sebenarnya membuat variabel
‫environment sehingga ketika saya menjalankan perintah docker saya, karena sekali lagi, Docker CLI hanya perlu tahu
‫host Docker mana yang harus diajak bicara. Dan secara default, itu berbicara ke mesin
‫lokal Anda.
‫Tapi itu baru diprogram ulang untuk berbicara dengan
‫node1 Mesin Docker.
‫Jika saya melakukan info buruh pelabuhan, Anda akan melihat bahwa namanya adalah node1 karena itulah yang sekarang saya
‫operasikan.
‫Untuk contoh terakhir, saya akan menggunakan DigitalOcean, tempat saya membuat akun.
‫Di sini, mereka menyebut server Tetesan. Saya sarankan jika Anda tidak memiliki alasan
‫khusus untuk menjalankan OS lain, untuk memulai dengan Ubuntu 16. 04 karena itu cenderung menjadi distribusi Linux pertama yang mendukung fitur
‫Docker yang lebih baru.
‫Jadi itu default di sana.
‫Maka saya akan merekomendasikan untuk sisa kursus ini bagi kita untuk menggunakan server $ 10 per bulan. Anda mungkin bisa lolos dengan
‫server $ 5 sebulan, tetapi mungkin agak lambat selama beberapa
‫demo nanti ketika kami melakukan pemantauan dan masuk kontainer di atas aplikasi kami.
‫Kemudian Anda dapat memilih pusat data yang terdekat dengan Anda. Maka satu-satunya pilihan lain adalah menambahkan kunci SSH.
‫Jika Anda tidak terbiasa dengan cara membuat kunci SSH Anda sendiri secara lokal dan kemudian mengunggah publik ke DigitalOcean,
‫ada tutorial bagus
‫yang mereka miliki untuk itu yang dapat Anda temukan di sumber daya bagian ini.
‫Di bagian bawah saya akan membuat tiga mesin, dan saya akan memanggil mereka node1, 2 dan 3.
‫Maka saya perlu menunggu mungkin sekitar 60 detik dan mereka akan siap untuk saya.
‫Anda bisa menggunakan alamat IP di sini ... lompati mesin ini.
‫Mengklik tombol salin dan kemudian ssh root @ alamat IP.
‫Dan jika kunci SSH Anda diatur dengan benar di mesin Anda, maka secara otomatis akan masuk dengan kunci
‫itu.
‫Tetapi di bagian sumber daya, saya telah memberi Anda sebuah contoh tentang cara mengatur a. ssh config file yang akan memungkinkan Anda untuk
‫memiliki tiga node dalam konfigurasi sehingga Anda cukup memanggil mereka node1, node2,
‫node3, daripada harus mengingat alamat IP mereka, jika Anda akan
‫melakukan ini selama beberapa hari . Itu benar-benar cara mudah untuk masuk dan keluar dari server ini.
‫Jika Anda telah menggunakan Mesin Docker, atau jika Anda menggunakan Play With Docker, maka Docker sudah diinstal dan
‫Anda bersiap untuk membuat kawanan Anda.
‫Tetapi jika Anda menggunakan DigitalOcean, atau Anda memutar VM Anda sendiri, maka Anda harus menginstal Docker.
‫Cara termudah untuk melakukan itu, yang saya suka gunakan, adalah dengan menggunakan script di get. buruh pelabuhan. com.
‫Anda dapat melihat contoh di sini tentang cara menggunakan skrip ini untuk mendapatkan rilis produksi Docker saat
‫ini di mesin Anda.
‫Sekarang, ketiga server saya sudah menginstal Docker versi terbaru dan kami siap untuk
‫menyiapkan gerombolan kami.
‫Sekali lagi, yang diperlukan hanyalah bahwa ketiga node ini memiliki jaringan solid satu sama lain dan port
‫spesifik terbuka.
‫Jika Anda ingin tahu tentang port swarm, lihat sumber daya bagian ini di mana
‫saya sebenarnya memiliki tautan ke daftar port firewall saya sendiri yang diperlukan agar Swarm dapat bekerja.
‫Jika Anda ingat sebelumnya, kami melakukan buruh pelabuhan init. Sekarang, dalam hal ini, yang sangat umum
‫di server cloud, ia ingin kami menentukan alamat IP untuk mengiklankan layanan Swarm.
‫Anda ingin menggunakan alamat IP yang dapat diakses dari server lain.
‫Dalam hal ini, saya akan menggunakan alamat IP publik untuk host DigitalOcean
‫saya.
‫Dan kita mulai.
‫Sejauh ini, ini seperti pada mesin lokal kami.
‫Kali ini, saya akan menyalin perintah swarm join dan pergi ke node2 dan menambahkannya.
‫Dan kita mulai.
‫Node ini sekarang menjadi bagian dari kawanan.
‫Jadi kita kembali ke node1, docker node ls, dan sekarang kita punya dua.
‫Anda akan melihat bahwa simpul kedua hanya pekerja. Karena seperti yang dikatakan, jika kita menginginkannya menjadi manajer, kita
‫seharusnya mendapatkan token manajer ini. Tapi jangan khawatir. Kami benar-benar dapat memperbarui pekerja ini untuk
‫mempromosikannya menjadi manajer.
‫Tetapi jika kita berakhir di node2, perhatikan bahwa saya tidak dapat menggunakan perintah Swarm. Karena pekerja tidak benar-benar istimewa.
‫Mereka tidak memiliki akses untuk mengendalikan gerombolan.
‫Jadi mereka tidak akan dapat menggunakan perintah Swarm yang biasa digunakan pada manajer.
‫Kembali pada node1 dan manajer, saya akan melakukan pembaruan node docker ...
‫Apa yang saya lakukan di sana adalah menekan Tab untuk penyelesaian tab, yang selalu merupakan fitur
‫fantastis di Docker, terutama dengan begitu banyak fitur. Itu berjalan saya melalui setiap langkah bagaimana menggunakan perintah
‫pembaruan itu.
‫Sekarang saya mendapatkan pembaruan akhir ini dan telah mengubah node2.
‫Sekarang jika saya melakukan simpul docker saya, Anda akan melihat bahwa sekarang itu dianggap terjangkau.
‫Tetapi simpul asli masih pemimpin. Omong-omong, tanda bintang kecil itu? Itu hanya berarti itulah
‫simpul yang sedang Anda ajak bicara.
‫Untuk node3, mari kita tambahkan sebagai manajer secara default.
‫Kita harus kembali ke perintah awal dari docker swarm, dan kemudian kita perlu mendapatkan
‫manajer join-token.
‫Anda bisa mendapatkan token ini kapan saja.
‫Anda tidak harus menuliskannya atau menyimpannya.
‫Mereka adalah bagian dari konfigurasi segerombolan dan disimpan terenkripsi pada disk, jadi jangan khawatir tentang itu.
‫Anda juga dapat mengubah ini jika mereka mungkin terkena atau Anda mungkin mendapatkan server yang mungkin memiliki kerentanan di
‫atasnya, dan Anda ingin memastikan bahwa tidak ada node dapat bergabung dengan kawanan dari kunci lama, Anda
‫benar-benar dapat memutar kunci ini .
‫Saya akan menyalin ini, rekatkan ke node3.
‫Dan kita mulai. Kembali pada node1.
‫Jika saya melakukan simpul buruh pelabuhan lagi, Anda akan melihat saya punya tiga simpul. Dan mereka semua memiliki status manajer yang
‫menunjukkan bahwa mereka adalah manajer.
‫Jadi sekarang kita memiliki kawanan 3-simpul, redundan, dengan tiga manajer. Mari kita lakukan hal yang sama seperti
‫yang kita lakukan sebelumnya, layanan buruh pelabuhan membuat alpine ping
‫8. 8. 8. 8
‫Hanya kali ini,
‫mari kita berikan tiga replika.
‫Dan kemudian lakukan layanan buruh
‫pelabuhan, dan kita akan melihat bahwa kita
‫sudah tiga dari tiga sudah berjalan.
‫Jika saya melakukan ps buruh pelabuhan, saya benar-benar dapat melihat simpul lokal saya benar-benar menjalankan tugas atau wadah ini.
‫Saya benar-benar dapat menentukan node, node2, dan itu akan memberi saya hanya kontainer yang berjalan pada node2.
‫Jika saya ingin mendapatkan daftar lengkap, saya bisa melakukan layanan buruh pelabuhan ps, dan kemudian coklat mengantuk adalah nama
‫yang memberikan layanan kami. Dan Anda akan lihat di sini .. biarkan saya memperluas layar sedikit.
‫Anda dapat melihat di sini bahwa daftar ketiga tugas kami.
‫Setelah kawanan ini dibuat, biasanya Anda tidak perlu mengetikkan perintah ke
‫semua simpul yang berbeda. Anda benar-benar dapat mengoperasikan seluruh kawanan, untuk sebagian besar hal, dari node1.
‫Jadi kita akan melakukan banyak pekerjaan kami dari node1 dalam kuliah mendatang, tetapi untuk sekarang, tepuk diri Anda sendiri
‫karena Anda memiliki cluster kawanan yang beroperasi penuh.