Prasyarat workstation admin

Workstation admin menghosting alat antarmuka command line (CLI) dan file konfigurasi untuk menyediakan cluster selama penginstalan, dan alat CLI untuk berinteraksi dengan cluster yang disediakan pasca-penginstalan.

Anda dapat mendownload dan menjalankan alat seperti bmctl dan Google Cloud CLI, di workstation admin untuk berinteraksi dengan cluster dan resource Google Cloud. Workstation admin menghosting file konfigurasi untuk menyediakan cluster selama penginstalan, upgrade, dan update. Setelah penginstalan, workstation admin akan menghosting file kubeconfig sehingga Anda dapat menggunakan kubectl untuk berinteraksi dengan cluster yang disediakan. Anda juga dapat mengakses log untuk operasi cluster penting di workstation admin. Satu workstation admin dapat digunakan untuk membuat dan mengelola banyak cluster.

Pastikan workstation admin memenuhi prasyarat yang dijelaskan di bagian berikut.

Sistem operasi dan software

Untuk menjalankan bmctl dan berfungsi sebagai node bidang kontrol, workstation admin memiliki persyaratan sistem operasi (OS) yang sama dengan node. Workstation admin memerlukan Docker, tetapi tidak untuk digunakan sebagai runtime container. Saat GKE on Bare Metal membuat cluster, GKE men-deploy Kubernetes di cluster Docker (jenis) di workstation admin. Cluster bootstrap ini menghosting pengontrol Kubernetes yang diperlukan untuk membuat cluster. Kecuali jika Anda menentukan sebaliknya, cluster bootstrap akan dihapus saat pembuatan cluster berhasil diselesaikan. Cluster bootstrap memerlukan Docker untuk menarik image container.

Workstation admin harus memenuhi persyaratan berikut sebelum Anda dapat menginstal cluster:

  • Sistem operasi adalah distribusi Linux yang didukung.

    Untuk mengetahui daftar OS dan versi Linux yang didukung, lihat Memilih sistem operasi Anda. Halaman tersebut memiliki link ke petunjuk konfigurasi, termasuk konfigurasi Docker, untuk setiap OS.

  • Docker versi 19.03 atau yang lebih baru sudah diinstal. Namun, jika sistem Anda menggunakan cgroup v2, penginstalan Docker di workstation admin Anda harus versi 20.10.0 atau yang lebih tinggi. (Anda dapat mengetahui apakah sistem menggunakan cgroup v2 dengan adanya file /sys/fs/cgroup/cgroup.controllers). cgroup v2 hanya didukung sebagai kemampuan Pratinjau. Kami tidak merekomendasikan penggunaan fitur dan kemampuan Pratinjau di lingkungan produksi.

  • Pengguna non-root adalah anggota grup docker (untuk mengetahui petunjuknya, buka Mengelola Docker sebagai pengguna non-root).

  • Google Cloud CLI sudah diinstal.

    Anda dapat menggunakan alat kubectl dan bmctl untuk membuat dan mengelola cluster. Untuk menginstal alat ini, Anda memerlukan alat gcloud dan gsutil. Alat command line gcloud, gsutil, dan kubectl adalah komponen gcloud CLI. Untuk mengetahui petunjuk penginstalan, termasuk petunjuk menginstal komponen, lihat Menginstal gcloud CLI.

  • kubectl telah diinstal. Gunakan gcloud CLI untuk menginstal kubectl dengan perintah berikut:

    gcloud components install kubectl
    
  • bmctl diinstal untuk versi cluster yang Anda buat atau operasikan.

    Penginstalan terdiri dari penggunaan gsutil untuk mendownload biner atau paket gambar bmctl. Untuk mengetahui petunjuknya, lihat Cluster Anthos pada download bare metal.

Persyaratan resource hardware

Workstation admin memerlukan daya komputasi, memori, dan penyimpanan yang signifikan untuk menjalankan alat serta menyimpan resource yang terkait dengan pembuatan dan pengelolaan cluster.

Secara default, upgrade cluster dan operasi pembuatan cluster menggunakan cluster bootstrap. Saat cluster bootstrap digunakan, penggunaan CPU dan memori akan meningkat secara signifikan. Jika Anda ingin menggunakan workstation admin sebagai node bidang kontrol, gunakan setidaknya jumlah CPU dan RAM yang lebih tinggi dan direkomendasikan agar aktivitas workstation admin tidak mengganggu fungsi bidang kontrol cluster.

Bergantung pada ukuran database etcd dan jumlah node bidang kontrol, operasi pencadangan dan pemulihan cluster akan menggunakan RAM yang signifikan. Perkiraan kasar RAM yang diperlukan untuk pencadangan adalah 3-5 GiB per node bidang kontrol. Proses pencadangan gagal karena tidak ada cukup memori. Rencanakan persyaratan RAM Anda dengan tepat.

Tabel berikut memberikan persyaratan hardware minimum dan yang direkomendasikan untuk workstation admin:

Resource Minimum Direkomendasikan
CPU / vCPU* 2 inti 4 inti
RAM Ubuntu: 4 GiB
CentOS/RHEL: 6 GiB
Ubuntu: 8 GiB
CentOS/RHEL: 12 GiB
Penyimpanan 128 GiB 256 GiB

* GKE di Bare Metal hanya mendukung CPU dan vCPU x86-64 pada level mikroarsitektur CPU v3 (x86-64-v3) dan yang lebih tinggi.

Persyaratan jaringan

Workstation admin memerlukan akses ke Google Cloud dan semua node cluster Anda.

Akses ke Google Cloud

Workstation admin mengakses Google Cloud untuk mendownload serta menginstal alat dan image, memproses permintaan otorisasi, membuat akun layanan, mengelola logging dan pemantauan, dan banyak lagi. Anda tidak dapat membuat cluster tanpa akses ke Google Cloud.

Akses ke Google Cloud dapat langsung atau melalui server proxy. Untuk mengetahui informasi tentang berbagai cara untuk terhubung ke Google Cloud, lihat Terhubung ke Google. Untuk mengetahui informasi tentang cara mengonfigurasi server proxy, lihat Menginstal di belakang proxy.

Untuk mengetahui informasi tentang konsekuensi gangguan akses ke Google Cloud, lihat Dampak terputusnya koneksi sementara dari Google Cloud.

Akses ke node

Untuk membuat dan mengelola cluster dari workstation admin, Anda memerlukan akses berikut ke komputer node:

  • Konektivitas Lapisan 3 ke semua mesin node cluster.
  • Akses root tanpa sandi ke semua mesin node cluster melalui SSH. Akses SSH dapat langsung atau melalui sudo.
  • Akses ke bidang kontrol VIP.

Penerusan IP

Penerusan IP harus diaktifkan di workstation admin. Tanpa penerusan IP, cluster bootstrap tidak dapat dibuat, yang akan memblokir pembuatan cluster. Jika penerusan IP dinonaktifkan, Anda akan melihat error seperti berikut saat mencoba membuat cluster:

Error message: E0202 14:53:25.979322 225917 console.go:110] Error creating cluster: create kind cluster failed: error creating bootstrap cluster: failed to init node with kubeadm: command "docker exec --privileged bmctl-control-plane kubeadm init --skip-phases=preflight --config=/kind/kubeadm.conf --skip-token-print --v=6" failed with error: exit status 1

Anda dapat memeriksa setelan penerusan IP dengan perintah berikut:

cat /proc/sys/net/ipv4/ip_forward

Nilai 1 menunjukkan bahwa penerusan IP diaktifkan. Jika penerusan IP dinonaktifkan (0), gunakan perintah berikut untuk mengaktifkannya:

echo '1' | sudo tee /proc/sys/net/ipv4/ip_forward

Menyiapkan akses SSH root ke node

Untuk mengaktifkan koneksi yang aman dan tanpa sandi antara workstation admin dan mesin node cluster, buat kunci SSH di workstation admin Anda dan bagikan kunci publik dengan node cluster.

  1. Aktifkan autentikasi sandi SSH root di setiap mesin node cluster dengan menghapus tanda komentar atau menambahkan baris PermitRootLogin dan PasswordAuthentication di file /etc/ssh/sshd_config, lalu menetapkan nilainya ke yes.

    # $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $
    
    # This is the sshd server system-wide configuration file.  See
    # sshd_config(5) for more information.
    
    ...
    
    # Authentication:
    
    #LoginGraceTime 2m
    PermitRootLogin yes
    #StrictModes yes
    #MaxAuthTries 6
    #MaxSessions 10
    
    ...
    
    PasswordAuthentication yes
    

    Pertama-tama, Anda harus mengaktifkan autentikasi sandi SSH di mesin cluster node jarak jauh untuk berbagi kunci dari workstation admin.

  2. Untuk menerapkan perubahan konfigurasi SSH, mulai ulang layanan SSH:

    sudo systemctl restart ssh.service
    
  3. Membuat pasangan kunci pribadi/publik di workstation admin. Jangan setel frasa sandi untuk kunci. Buat kunci dengan perintah berikut:

    ssh-keygen -t rsa
    

    Anda juga dapat menggunakan akses pengguna sudo ke mesin node cluster untuk menyiapkan SSH. Namun, untuk koneksi pengguna non-root tanpa sandi, Anda harus mengupdate file konfigurasi cluster dengan kolom spec.nodeAccess.loginUser. Kolom ini diberi komentar secara default. Anda dapat menentukan nama pengguna non-root dengan loginUser selama pembuatan cluster atau kapan saja setelahnya. Untuk mengetahui informasi selengkapnya, lihat loginUser.

  4. Tambahkan kunci publik yang dihasilkan ke mesin node cluster:

    ssh-copy-id -i PATH_TO_IDENTITY_FILE root@CLUSTER_NODE_IP
    

    Ganti kode berikut:

    • PATH_TO_IDENTITY_FILE: jalur ke file yang berisi kunci publik SSH. Secara default, jalur ke file identitas yang berisi kunci publik adalah /home/USERNAME/.ssh/id_rsa.pub.
    • CLUSTER_NODE_IP: alamat IP mesin node tempat Anda menambahkan kunci publik SSH.
  5. Nonaktifkan autentikasi sandi SSH pada mesin node cluster dengan menetapkan PasswordAuthentication ke no dalam file sshd_config dan memulai ulang layanan SSH.

  6. Gunakan perintah berikut di workstation admin untuk memastikan autentikasi kunci publik berfungsi antara workstation dan mesin node.

    ssh -o IdentitiesOnly=yes -i PATH_TO_IDENTITY_FILE root@CLUSTER_NODE_IP
    

    Jika SSH dikonfigurasi dengan benar, Anda dapat login ke mesin node dari workstation admin (sebagai root) tanpa harus memasukkan sandi.

Langkah selanjutnya