ウィンドウズマックソフトウェア設定セキュリティ生産性リナックスAndroidパフォーマンス設定Apple すべて

FedoraにKubernetesをインストールする方法

編集済み 4 数か月前 によって ExtremeHow 編集チーム

フェドラクバネティスコンテナオーケストレーションインストールソフトウェア開発コマンドラインターミナルシステム管理コンピュータ

FedoraにKubernetesをインストールする方法

翻訳が更新されました 4 数か月前

Kubernetes(よくK8sと略されます)は、コンテナ化されたワークロードとサービスを管理するためのオープンソースのプラットフォームです。ホストのクラスター全体にわたるアプリケーションコンテナのデプロイ、スケーリング、および操作を自動化するのに役立ちます。FedoraにKubernetesをインストールすることは、特にローカルシステムでコンテナオーケストレーションを試したいと考える開発者にとって、有意義な経験となるでしょう。以下では、スムーズなセットアップを確保するため、例と説明を交えてFedoraシステムにKubernetesをインストールするためのステップバイステップの詳細なプロセスを案内します。

事前条件

インストールプロセスに入る前に、いくつかの事前条件と検討事項があります。

ステップ1:システムを更新する

最初のステップは、すべてのパッケージと依存関係が最新であることを確認するために、Fedoraシステムを更新することです。以下のコマンドを使用してください。

sudo dnf update -y

このコマンドは最新の更新をダウンロードしてインストールし、システムがKubernetesに準備が整います。

ステップ2:Dockerをインストールする

Kubernetesにはコンテナランタイムが必要で、Dockerは最も一般的に使用されているオプションの1つです。FedoraにDockerをインストールするには、次の手順に従います。

  1. Dockerリポジトリを有効にする:
    sudo dnf config-manager --add-repo=https://download.docker.com/linux/fedora/docker-ce.repo
  2. Dockerをインストールする:
    sudo dnf install docker-ce docker-ce-cli containerd.io
  3. Dockerを開始し有効化する: Dockerを開始し、ブート時に自動的に開始するようにするには、次のコマンドを使用します。
    sudo systemctl start docker sudo systemctl enable docker

Dockerがインストールされたら、sudo systemctl status dockerでそのステータスを確認することでインストールを確認してください。

ステップ3:SELinuxを無効にする

セキュリティ強化Linux(SELinux)は、アクセス制御セキュリティポリシーをサポートするメカニズムを提供するLinuxカーネルのセキュリティ機能です。KubernetesやコンテナランタイムがSELinuxに問題があることがあるので、緩和モードに設定することをお勧めします。

sudo setenforce 0

SELinux設定ファイルを編集して、この変更を恒久的にする:

sudo vi /etc/selinux/config

SELINUX=enforcing行をSELINUX=permissiveに変更します。エディタを保存して終了します。

ステップ4:Kubernetesパッケージをインストールする

次に、必要なパッケージをインストールするためにKubernetesリポジトリを追加する必要があります。次の手順を実行してください:

  1. リポジトリを追加する:
    cat <<EOF | sudo tee /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/rpm-package-key.gpg https://packages.cloud.google.com/yum/doc/yum-key.gpg EOF
  2. kubectl、kubelet、kubeadmをインストールする:
    sudo dnf install -y kubelet kubeadm kubectl --disableexcludes=kubernetes
  3. kubeletサービスを有効にする: kubeletサービスをブート時に開始するように設定します。
    sudo systemctl enable kubelet

これらは主要なKubernetesコンポーネントです。kubeletは各ノードで動作するエージェントです。kubeadmはクラスターをブートストラップするためのツールです。kubectlはクラスターと対話するためのコマンドラインツールです。

ステップ5:Sysctlを構成する

Kubernetesのネットワーク設定のためにシステム設定を変更します。sysctl設定ファイルを開いて設定を調整します:

sudo vi /etc/sysctl.d/k8s.conf

ブリッジトラフィックのネットワークパケットが正しく処理されるようにするには、次の行を追加します:

net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1

これらの変更を適用します:

sudo sysctl --system

ステップ6:スワップを無効にする

Kubernetesが最適に機能するためには、スワップメモリを無効にする必要があります。一時的および恒久的に次のコマンドでスワップを無効にします:

スワップを一時的に無効にする:

sudo swapoff -a

スワップを恒久的に無効にする: /etc/fstabファイルを編集し、スワップパーティションを参照する行をコメントアウトします。次を使用:

sudo vi /etc/fstab

スワップエントリを含む行を見つけ、その前に#を追加してコメントアウトします。

ステップ7:Kubernetesクラスターを初期化する

kubeadmを使用してKubernetesマスターノードを初期化します。このステップでは必要な制御プレーンも設定されます。以下のコマンドを使用して初期化を行います:

sudo kubeadm init --pod-network-cidr=192.168.0.0/16

--pod-network-cidr引数は、ポッドネットワークのIP範囲を指定します。これは使用するネットワークソリューションに応じて異なる場合があります。

初期化が成功すると、コマンドはkubeadm "join" コマンドを返します。これを保存しておくと、後でクラスターに追加するノードがあります。

ステップ8:環境を構成する

非rootユーザーとしてkubectlツールを正しく動作させるには、ローカルkubeconfigファイルを設定します:

mkdir -p $HOME/.kube sudo cp -i /etc/kubernetes/admin.conf $HOME/.kube/config sudo chown $(id -u):$(id -g) $HOME/.kube/config

これらのコマンドは、構成ディレクトリを作成し、管理資格情報をコピーして、毎回sudoすることなくkubectlを使用できるようにします。

ステップ9:Podネットワークアドオンをインストールする

KubernetesにはPodネットワークアドオンが必要です。最も人気のあるオプションはFlannelです。Flannelをクラスターにデプロイするには、次を使用:

kubectl apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml

これにより、KubernetesノードがFlannelの仮想ネットワークを介して互いに通信できるようになります。

ステップ10:インストールを確認する

すべてが設定されたら、次のコマンドを使用してクラスターのノードの状態を確認します:

kubectl get nodes

システムが"Ready" 状態でリストされているはずです。さらに、すべてのシステムポッドを次のコマンドで確認します:

kubectl get pods --all-namespaces

結論

おめでとうございます、FedoraにKubernetesを正常にインストールしました。クラスターが起動して実行されると、アプリケーションのデプロイを開始し、コンテナ化されたワークロードを効果的に管理できます。このインストールプロセスは詳細ではありますが、学習と開発目的で環境を設定するために必要な手順をすべてカバーしています。今後の管理には、権限の管理、スケーリング、およびクラスターの健全性の維持が含まれる可能性があり、Fedoraシステム上のKubernetesに関する強力な理解を構築できます。

Kubernetesは強力なシステムであり、習得には多くの時間を要することを覚えておいてください。ただし、上記のようにインストールと構成を手動で進めることにより、実際のシナリオでのコンテナオーケストレーションに関する貴重な実践経験と理解を深めることができます。

記事の内容に誤りがある場合, あなたは


コメント