Prasyarat workstation admin

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

Halaman ini ditujukan untuk Admin, arsitek, dan Operator yang menyiapkan, memantau, dan mengelola siklus proses infrastruktur teknologi yang mendasarinya. Untuk mempelajari lebih lanjut peran umum dan contoh tugas yang kami referensikan dalam konten Google Cloud, lihat Peran dan tugas pengguna GKE Enterprise umum.

Anda 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 menghosting file kubeconfig sehingga Anda dapat menggunakan kubectl untuk berinteraksi dengan cluster yang disediakan. Anda juga 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 membuat cluster, Google Distributed Cloud akan men-deploy cluster Kubernetes di Docker (jenis) di workstation admin. Cluster bootstrap ini menghosting pengontrol Kubernetes yang diperlukan untuk membuat cluster. Kecuali jika Anda menentukan lain, 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 daftar versi dan OS Linux yang didukung, lihat Memilih sistem operasi. Halaman tersebut memiliki link ke petunjuk konfigurasi, termasuk konfigurasi Docker, untuk setiap OS.

  • Docker versi 19.03 atau yang lebih baru telah diinstal. Namun, jika sistem Anda menggunakan cgroup v2, penginstalan Docker di workstation admin harus versi 20.10.0 atau yang lebih tinggi. (Anda dapat mengetahui apakah sistem Anda menggunakan cgroup v2 dengan adanya file /sys/fs/cgroup/cgroup.controllers).

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

  • Google Cloud CLI telah diinstal.

    Anda menggunakan alat kubectl dan bmctl untuk membuat dan mengelola cluster. Untuk menginstal alat ini, Anda memerlukan alat gcloud. Alat command line gcloud dan kubectl adalah komponen gcloud CLI. Untuk petunjuk penginstalan, termasuk petunjuk untuk 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 gcloud untuk mendownload paket biner atau gambar bmctl. Untuk mengetahui petunjuknya, lihat Google Distributed Cloud untuk download bare metal.

Persyaratan resource hardware

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

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

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

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

Resource Minimum Disarankan
CPU / vCPU* 2 core 4 core
RAM Ubuntu: 4 GiB

RHEL: 6 GiB

Ubuntu: 8 GiB

RHEL: 12 GiB

Penyimpanan 128 GiB 256 GiB

* Google Distributed Cloud hanya mendukung CPU dan vCPU x86-64 di 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 dan menginstal alat dan image, memproses permintaan otorisasi, membuat akun layanan, mengelola logging dan pemantauan, dan lainnya. Anda tidak dapat membuat cluster tanpa akses ke Google Cloud.

Akses ke Google Cloud dapat dilakukan secara langsung atau melalui server proxy. Untuk informasi tentang berbagai cara untuk terhubung ke Google Cloud, lihat Menghubungkan ke Google. Untuk informasi cara mengonfigurasi server proxy, lihat Menginstal di balik proxy.

Untuk informasi tentang konsekuensi dari akses yang terganggu ke Google Cloud, lihat Dampak pemutusan koneksi sementara dari Google Cloud.

Akses ke node

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

  • Konektivitas Lapisan 3 ke semua mesin node cluster.
  • Akses SSH tanpa sandi ke semua mesin node cluster sebagai root atau sebagai pengguna non-root dengan hak istimewa sudo tanpa sandi. Izin tingkat tinggi ini diperlukan oleh alat otomatisasi untuk melakukan tugas tingkat node yang menyediakan node selama penginstalan cluster.

  • Akses ke VIP bidang kontrol.

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 dan bagikan kunci publik dengan node cluster.

  1. Aktifkan autentikasi sandi SSH root di setiap mesin node cluster dengan menghapus komentar atau menambahkan baris PermitRootLogin dan PasswordAuthentication dalam file /etc/ssh/sshd_config dan menetapkan nilai 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
    

    Awalnya, Anda perlu mengaktifkan autentikasi sandi SSH di mesin node cluster jarak jauh untuk berbagi kunci dari workstation admin.

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

    sudo systemctl restart ssh.service
    
  3. Buat pasangan kunci pribadi dan publik di workstation admin. Jangan tetapkan 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 memperbarui file konfigurasi cluster dengan kolom spec.nodeAccess.loginUser. Kolom ini dikomentari 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 di 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 memverifikasi 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