type
status
date
slug
summary
tags
category
icon
password
书籍
😀
今回は実際にEKSを通じてKubernetesはどういうものなのかを勉強しましょう!
 

完成図

notion image

1.AWS CloudFormationを使用してVPCを作成する

AWS CloudFormationを使用して、新しいVPCを作成します。このVPCには、2つのパブリックサブネットと2つのプライベートサブネットが含まれます。
notion image

1.1ymlファイルでVPCを構築

2.EC2インスタンスをセットアップする

AWS CloudFormationを使用して、eksctl、kubectlなどのツールがインストールされたEC2インスタンスを起動します。このインスタンスはEKSクラスターを管理するためのものです。
notion image
2.1YUMLファイルでEC2を立ち上げます
EC2が立ち上げたら、git、docker、eksctl、kubectlなどのツールがインストールされたかを確認

3.EKSクラスターを作成する

EC2インスタンスを使用して、EKSクラスターを作成します。これにより、EKSクラスターがVPC内にデプロイされます。
notion image

3.1EKSクラスタを作成

# EKSクラスタを作成する
注意:既存のVPCにEKSクラスタを作るには、少なくとも2*2のサブネットワークが必要です。プライベートネットワークがあるなら、NATも配置する必要があります。
notion image
15分を待ちます。
コンソールで、EKSが作成したことを確認
notion image

4.ノードをデプロイする

EC2インスタンスを介して、EKSクラスターにノードを作成します。これにより、クラスター内のノードが構成されます。
notion image

4.1EKSクラスタ内にノードグループを作成する

ノード数量を変更するコマンドを覚えましょう!
nodeの数を2に変更してみます。
YUMLテンプレートを反映するコマンド

4.2コンソールでノードの数を確認してみます

notion image

5AMロールを構成、CSIを実装

EKSクラスターに適切なIAMロールと権限を設定します。また、ノードにEBS CSIドライバーをインストールします。
notion image

5.1ローカルを作成

下記のコードを管理用EC2に打ちます

5.2CSI ドライバーを実装

notion image
AWS EBS CSI ドライバーは、Kubernetes クラスターで Amazon EBS ボリュームの永続ストレージを提供するための役割を担います。具体的には:
 
  1. ボリュームのプロビジョニング: ユーザーが要求した場合に、EBS ボリュームを自動的に作成します。これにより、Kubernetes のワークロードがデータを保存するためのストレージを簡単に確保できます。
  1. ボリュームのマウント: ノード上のポッドが EBS ボリュームを使用する際に、自動的にボリュームをノードにアタッチし、ポッド内のパスにマウントします。これにより、ポッドがデータにアクセスできるようになります。
  1. ボリュームの削除: ポッドが削除されると、関連する EBS ボリュームが自動的に削除されます。これにより、リソースの効率が向上し、不要なボリュームがクラスターに残ることがなくなります。
簡単に言えば、AWS EBS CSI ドライバーは、Kubernetes クラスターでデータの永続ストレージを管理し、ユーザーがデータに簡単にアクセスできるようにします。

6.wordpressプロジェクトを作成する

管理インスタンス上で、MySQLonEKSプロジェクトを作成します。このプロジェクトでは、YAMLファイルを使用してMySQLデータベースを構成し、プライベートサブネットに展開します。
notion image
wordpressディレクトリを作成し、その配下で、yumlファイルを作成します。

6.1StorageClass

StorageClass を使用してCSIの力で、動的な保存領域を割り当てできます。

6.2ConfigMap

ConfigMap を使用してデータベースの初期化スクリプトを設定します。

6.2Secrets

Secrets を使用して、秘密鍵を保存します。
dbpwdにBase64した暗号を入れます
notion image

6.3Deployment

MySql データベースサーバーの設定を作成します。

7.MySQLデータベースを公開する

MySQLデータベースを内部ネットワークに公開するために、Kubernetes Serviceリソースを作成します。
notion image

7.1Service

Service ClusterIP の内部公開は、同じ Kubernetes クラスター内の他のリソースにサービスを公開することを意味します。つまり、同じクラスター内の他の Pod やサービスは、ClusterIP を使用してそのサービスにアクセスできます。ClusterIP は、Kubernetes でデフォルトの Service タイプであり、Service を表す仮想 IP アドレスを作成し、Kubernetes の内部 DNS サービスを介して解決されます。この仮想 IP はクラスター内部でのみアクセス可能であり、クラスターの外部からは見えません。
そのため、Service ClusterIP の内部公開は、クラスター内のサービス間通信とアクセスを提供するためのものです。サービスをクラスターの外部に公開する必要がある場合は、NodePort、LoadBalancer、または Ingress などの他の Service タイプを使用する必要があります。
もし、一旦、管理用EC2で、MySqlが正常にアクセス出来るかを確認したいなら、一旦ServiceをNodePortに変更し、MySqlNodeのセキュリティグループのインバウンドを0.0.0.0に設定しときます。

7.2apply

先まで作ったMySqlサーバをデプロイします。

7.3管理用EC2でアクセス出来るかを検証

notion image
notion image

8.WordPressをデプロイする

WordPressのYAMLファイルを使用してWordPressを公開します。これにより、WordPressがパブリックサブネットに展開されます。
notion image

8.1wordpressのYUMLテンプレートを用意します。

Deployment

kubectl get nodes --show-labelsで、実際に配置したいノードのタグを調べてnodeSelectorで関連付けます。

9.新たなノードを作成して、WordPressをデプロイする

9.1eksctl create nodegroup

5分待ちます

9.2Service

10.ALBリソースを設定する

ALBリソースを使用してWordPressサービスに接続し、外部ネットワークにサービスを公開します。
notion image

10.1ALB

Kubernetes Serviceリソースを使用して、WordPressサービスを内部ネットワークに公開してから、ALBリソースで、外部に展開する。

10.2デプロイします。

11.HTTPでをアクセスしてみます

kubectl get allでアクセスするALBのDNSを調べて、ブラウザから、アクセス出来るどうかを確認します。
notion image
notion image
notion image

📎 参考文章

  • 一些引用
  • 引用文章
 
💡
有关Notion安装或者使用上的问题,欢迎您在底部评论区留言,一起交流~
相关文章
クラウド技術の共有 | AWS Site-to-Site
Lazy loaded image
Kubernetes徹底解説(KCNA-JP)試験対策(概念編)
Lazy loaded image
Kubernetes、仮想マシンとコンテナの概念を超簡単に解説!
Lazy loaded image
CKS試験問題
Lazy loaded image
初心者向け!コンテナ化WordPressサイト構築ガイド(超詳細版)
Lazy loaded image
EFSを活用!AWS EC2でDockerを使ったWordPressサイト構築
Lazy loaded image
Kubernetes、仮想マシンとコンテナの概念を超簡単に解説!CKS試験問題
Loading...
みなみ
みなみ
一个普通的干饭人🍚
最新发布
保証協会-25問
2025-5-15
TOKYO自習島
2025-5-15
営業保証金-21問
2025-5-6
平成26年秋期 午後問1
2025-5-6
令和5年秋期 午後問1
2025-5-3
令和2年秋期 午後問1
2025-5-2
公告

🎉 欢迎访问我的博客 🎉

🙏 感谢您的支持 🙏

📅 本站自 2024年9月1日 建立,致力于分享在 IT・MBA・不动产中介 等领域的学习与实践,并推动 学习会 的自主开展。
📖 博客语言使用比例
🇯🇵 日语 90% 🇨🇳 中文 8% 🇬🇧 英语 2%

📚 主要内容

💻 IT・系统与开发

  • 系统管理:Red Hat 等
  • 容器与编排:Kubernetes、OpenShift
  • 云计算:AWS、IBM Cloud
  • AI 入门:人工智能基础与实践
  • 技术笔记与考证经验

🏠 不动产 × 宅建士

  • 宅建士考试笔记

🎓 MBA 学习笔记

  • 管理学、经济学、财务分析等

🔍 快速查找内容(标签分类)

由于网站目前没有专门的设计,可能会导致查找信息不便。为了更快找到你感兴趣的内容,推荐使用以下标签功能 进行搜索!
📌 定期更新,欢迎常来看看!
📬 有任何建议或想法,也欢迎留言交流!