# asixcloud - k8s [TOC] ## sessió 00 [imprescindible per aprofitar eks](https://www.youtube.com/watch?v=DCoBcpOA7W4) [fitxers video](https://github.com/pablokbs/peladonerd/tree/master/kubernetes/35) ## sessió 01 posar en marxa un cluster de kubernetes en aws i desplegar un servei (deployment + servei) ## sessió 02 ### instal·la eksctl ``` # for ARM systems, set ARCH to: `arm64`, `armv6` or `armv7` ARCH=amd64 PLATFORM=$(uname -s)_$ARCH curl -sLO "https://github.com/eksctl-io/eksctl/releases/latest/download/eksctl_$PLATFORM.tar.gz" # (Optional) Verify checksum curl -sL "https://github.com/eksctl-io/eksctl/releases/latest/download/eksctl_checksums.txt" | grep $PLATFORM | sha256sum --check tar -xzf eksctl_$PLATFORM.tar.gz -C /tmp && rm eksctl_$PLATFORM.tar.gz sudo mv /tmp/eksctl /usr/local/bin ``` ### recuperació (elegant) de paràmetres ``` export NOM_CLUSTER=demo-cluster-001 export NOM_WORKER_NODE_GROUP=demo-worker-001 export AWS_ACCOUNT_ID=$(aws sts get-caller-identity --query Account --output text) export AWS_SUBNET_1A=`aws ec2 describe-subnets --filter "Name=vpc-id,Values=$(aws ec2 describe-vpcs --filter "Name=is-default,Values=true" --query "Vpcs[].VpcId" --output text )" "Name=availability-zone,Values=[us-east-1a]" --query "Subnets[].SubnetId" --output text` export AWS_SUBNET_1B=`aws ec2 describe-subnets --filter "Name=vpc-id,Values=$(aws ec2 describe-vpcs --filter "Name=is-default,Values=true" --query "Vpcs[].VpcId" --output text )" "Name=availability-zone,Values=[us-east-1b]" --query "Subnets[].SubnetId" --output text` ``` ### demo eksctl ``` cat > demo-eks-eksctl.yaml << EOT apiVersion: eksctl.io/v1alpha5 kind: ClusterConfig metadata: name: ${NOM_CLUSTER} region: us-east-1 # Canvieu per la vostra regió iam: serviceRoleARN: arn:aws:iam::${AWS_ACCOUNT_ID}:role/LabRole #serviceRoleARN: arn:aws:iam::${AWS_ACCOUNT_ID}:role/LabRole # withOIDC: false # serviceRolePermissionsBoundary: "arn:aws:iam::aws:policy/service-role/AWSServiceRoleForAmazonEKS" nodeGroups: - name: ${NOM_WORKER_NODE_GROUP} instanceType: t3.medium desiredCapacity: 1 privateNetworking: false # instanceProfile: LabInstanceProfile iam: instanceRoleARN: arn:aws:iam::${AWS_ACCOUNT_ID}:role/LabRole vpc: subnets: public: us-east-1a: id: "${AWS_SUBNET_1A}" # ID de la subxarxa privada per defecte us-east-1b: id: "${AWS_SUBNET_1B}" # ID de la subxarxa privada per defecte nat: gateway: Disable EOT ``` ### engega cluster ``` cat demo-eks-eksctl.yaml | envsubst | eksctl create cluster -f - ``` ### bye bye cluster ``` cat demo-eks-eksctl.yaml | envsubst | eksctl delete cluster -f - --force --disable-nodegroup-eviction ``` ## links interessants https://k8s.guide/ ## treball final Implementa en diferents arquitectures (ec2/ecs/eks) i amb tot el que pugues demostrar (route53/certmanager/s3....) un repte de cada bloc **IMPORTANT**: CAL DOCUMENTAR la creació i gestió del servei i l'ús del servei (part client) **MÉS IMPORTANT: enviar progrés cada dia** https://forms.gle/XSSQfU3vaPmTHPYP6 ***ULTRA IMPORTANT: implementar les 6 etapes amb diferents elements; RECOMANACIÓ: primer amb els recursos mínims, i després afegir complexitats: dns, certificats, storage...*** ### dates límit - inajornable!! #### 7-9 de Maig >> 4 activitats !!!! #### 21 Maig >> les 2 restants !!!! ### Streaming #### 01 - Audio - Navidrome - Icecast - AmpApache - Subsonic - lyrion #### 02 - Vídeo - Owncast + [ OBS || ffmpeg ] - restreamer - srs ### Serveis de Subscripció #### 03 - Audio - castopod - audiobookself - podcastserver - podcastgenerator #### 04 - Vídeo - MediaCMS - streama - jellyfin ### Serveis Bidireccionals #### 05 - Audio - 3cx - Asterisk/freepbx #### 06 - Vídeo - bigbluebutton - jitsi - openvidu ## link complementari (absolutament voluntari) a alguna de les activitats/serveis anteriors - https://github.com/blakeblackshear/frigate
×
Sign in
Email
Password
Forgot password
or
By clicking below, you agree to our
terms of service
.
Sign in via Facebook
Sign in via Twitter
Sign in via GitHub
Sign in via Dropbox
Sign in with Wallet
Wallet (
)
Connect another wallet
New to HackMD?
Sign up