Edycja:
Po prostu przeszedłem przez to jeszcze raz i mam łatwiejszy sposób.
Kiedy próbujesz użyć istniejącej bazy danych RDS z Django na EC2 lub EB, będziesz musiał dostosować grupy bezpieczeństwa, a następnie uzyskać odpowiednie parametry i ustawić je jako zmienne środowiskowe (RDS_*)
1) Utwórz RDS i dopasuj je:
Environment variables - RDS console label
RDS_HOSTNAME - Endpoint (this is the hostname)
RDS_PORT - Port
RDS_DB_NAME – DB Name
RDS_USERNAME – Username
RDS_PASSWORD – Password you set for your DB
2) Ustaw te używając na przykład eb setenv
3) Przejdź do swojej instancji EC2/EB i zdobądź dla niej grupę bezpieczeństwa, np. awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf
4) Przejdź do panelu swojego wystąpienia RDS, przewiń w dół do Grupy zabezpieczeń i zanotuj, którą grupę zabezpieczeń ma. np. rds-launch-wizard-1 (ab-sdjfalkajsdf39)
5) Wybierz grupę zabezpieczeń RDS i dodaj regułę Inbound z typem:PostgreSQL (lub inną bazą danych, której używasz) i używając instancji EC2 lub EB, którą otrzymałeś w kroku 2 jako źródło (awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf
). Protokół i zakres portów powinny być automatycznie wypełniane.
6) Zapisz to
To wszystko.
Oryginał:
Dla każdego, kto natknie się na to pytanie:
Kiedy próbujesz użyć istniejącej bazy danych RDS z Django na EC2 lub EB, będziesz musiał dostosować grupy bezpieczeństwa, a następnie uzyskać odpowiednie parametry i ustawić je jako zmienne środowiskowe (RDS_*)
1) Utwórz RDS i dopasuj je:
Environment variables - RDS console label
RDS_HOSTNAME - Endpoint (this is the hostname)
RDS_PORT - Port
RDS_DB_NAME – DB Name
RDS_USERNAME – Username
RDS_PASSWORD – Password you set for your DB
2) Ustaw te używając na przykład eb setenv
3) Przejdź do swojej instancji EC2/EB i zdobądź dla niej grupę bezpieczeństwa, np. awseb-z-afsafdsaf-stack-AWSEBSecurityGroup-asfdsadfasdf
a dla load balancera:awseb-e-adsfadsf-stack-AWSEBLoadBalancerSecurityGroup-asdfadsf
4) Przejdź do panelu swojego wystąpienia RDS, przewiń w dół do Grupy zabezpieczeń i zanotuj, którą grupę zabezpieczeń ma. np. rds-launch-wizard-1 (ab-sdjfalkajsdf39)
5) Kliknij zmodyfikuj dla wystąpienia RDS i w środkowym ustawieniu Grupy zabezpieczeń dodaj grupę zabezpieczeń modułu równoważenia obciążenia, którą znalazłeś powyżej. Powinien zawierać sugestie.
6) Przejdź do panelu EC2 i wybierz grupy bezpieczeństwa z menu po lewej stronie.
7) Wybierz grupę zabezpieczeń modułu równoważenia obciążenia i dodaj regułę ruchu wychodzącego. Typ powinien być typem RDS (PostgreSQL), a miejsce docelowe powinno być niestandardowe i grupa zabezpieczeń instancji RDS. Zapisz.
8) Zrób to samo dla ruchu przychodzącego, użyj tego samego typu RDS i miejsca docelowego
9) Wybierz grupę zabezpieczeń RDS i dodaj regułę Inbound, podobną do 8, ale używając instancji EC2 lub EB, którą otrzymałeś w kroku 2.
10) Zapisz, gotowe. Powinni być teraz w stanie ze sobą współpracować.
Nie jestem w 100% pewien, że wszystkie te kroki są konieczne, jeden lub dwa może nie być, ale to załatwiło mi zadanie.