[KEDUIT] 클라우드 컴퓨팅과 보안솔루션을 활용한 DC 엔지니어 양성교육 - Day87
1. 서론
오늘은 AWS EKS를 사용하는 법을 배워보았다.
2. 본론
1. EKS
// EKS(Amazon Elastic Kubernetes Service)
1. 준비사항
- aws cli
- git bash
- 명령줄 도구 저장 폴더 생성 (C:\Users\사용자명\k8s\bin)
- eksctl
- kubectl
- docker desktop
- IAM(AdministratorAccess)
2. Pod 생성
$ aws configure
access key + secret key + ap-northeast-2 + json
- Cloud Formation(스택 생성)
$ eksctl create cluster --vpc-public-subnets [스택-출력] --name eks-work-cluster --region ap-northeast-2 --version 1.27 --nodegroup-name eks-work-nodegroup --node-type t2.small --nodes 2 --nodes-min 2 --nodes-max 5
$ cd k8s/k8s-aws-eks/eks-env
$ k apply -f 02_nginx_k8s.yaml
$ k get pods
$ k port-forward nginx-pod 8080:80
3. Secret 생성
$ cd k8s_code2/wordpress
$ k create secret generic mysql-pass --from-file=./password.txt
$ k get secret
$ k describe secrets mysql-pass
4. Volume 생성
$ k create -f local-volume.yaml
$ k get pv
5. AWS URI(Uniform Resource Identifier) / ECR(Elastic Container Registry)
$ docker login
$ docker push <aws_account_id>.dkr.ecr.<region>.amazonaws.com/<imagename:tag> //pull
ECR을 위한 IAM 설정(AdministratorAccess, AmazonEC2Container~FullAccess)
$ aws ecr get-login-password --region <region> | docker login --username AWS --password-stdin <aws_account_id>.dkr.ecr.<region>.amazonaws.com
$ docker pull wordpress:latest
$ docker image prune --all --force //image 전체 삭제
$ docker tag wordpress:latest <aws_account_id>.dkr.ecr.<region>.amazonaws.com/keduittestuser:wordpress
$ docker push <aws_account_id>.dkr.ecr.<region>.amazonaws.com/keduittestuser:wordpress
$ docker pull mysql:5.6
$ docker tag mysql:5.6 <aws_account_id>.dkr.ecr.<region>.amazonaws.com/keduittestuser:mysql
3. 결론
Kubernetes를 Ubuntu에서 사용하다 AWS EKS 기반으로 사용해보니 장단점이 있는 것 같다.
4. 참고자료
Cisco
- ARP
- CDP / VLAN
- Frame Relay
- Static Routing
- VLAN
- VTP
- Routed Port
- AD
- Route Selection
- HSRP
- DHCP
- DNS
- FHRP
- STP
- NAT
- EtherChannel
- RIP
- DTP
- NTP
- Offset List
- Password Encryption
- ACL
- Car Attack
- Broadcast
- Port Assignments
- IPv6 Static Routing
- HSRP for IPv6
- Clock Rate
- DHCPv6 Guard
- EIGRP
- Express Forwarding
- Routing and Switching
- Load Balancing
- Ping, Traceroute
- Load Balancing
- Fast Switching
- CEF
- DNS
- SSH
- Regular Expression
- OSPF
- EIGRP's SIA
- NSSA
- AAA
- Understand the Zone-Based Policy Firewall Design
- The Cisco SD-WAN Solution
- Understand the Zone-Based Policy Firewall Design
- ASA cli
- Defining Strategies to Protect Against TCP SYN Denial of Service Attacks
- Configuring Firewall TCP SYN Cookie
- ASA 방화벽에서 NAT 및 ACL 구성
- Configuring Network Object NAT
- Configuring Twice NAT
- 모든 라우터의 컨피그레이션 레지스터 사용 이해
- Storing Data In USB
Linux
- rhel9's docs
- Linux Directory Structure
- File Types in Linux
- fstab
- Vim Cheat Sheet
- Protecting GRUB with a password
- SELinux
- DNS
- Samba as a server
- DHCP
- NFS
- SSH
- VNC
- heredoc
- docker vs podman + buildqh + skopeo
- Docker란?
- Linux 컨테이너란?
- Container vs VM
- 컨테이너화란?
- container
- 컨테이너 오케스트레이션이란?
- 쿠버네티스란?
- 쿠버네티스 아키텍처 소개
- 쿠버네티스 기본 사항 학습
- 쿠버네티스 클러스터란?
- Ansible과 Puppet: 알아야 할 사항
Docker / k8s
- rhel9's docs
- Linux Directory Structure
- File Types in Linux
- fstab
- Vim Cheat Sheet
- Protecting GRUB with a password
- SELinux
- DNS
- Samba as a server
- DHCP
- NFS
- SSH
- VNC
- heredoc
- docker vs podman + buildqh + skopeo
- Docker란?
- Linux 컨테이너란?
- Container vs VM
- 컨테이너화란?
- container
- 컨테이너 오케스트레이션이란?
- 쿠버네티스란?
- 쿠버네티스 아키텍처 소개
- 쿠버네티스 기본 사항 학습
- 쿠버네티스 클러스터란?
- Ansible과 Puppet: 알아야 할 사항
Web
DB
클라우드 엔지니어를 꿈꾸며 공부를 시작한 초보 엔지니어입니다. 틀린점 또는 조언해주실 부분이 있으시면 친절하게 댓글 부탁드립니다. 방문해 주셔서 감사합니다 :)
댓글남기기