Hej alla !
hoppas ni alla mår bra.
idag ska jag diskutera om crsctl-kommandot.
jag valde crsctl eftersom vi interagerar med kluster med det här kommandot.
om vi tittar på olika kommandon finner vi att det har många alternativ.
användning: crsctl add – Lägg till en resurs, typ eller annan enhet
crsctl check – Kontrollera status eller driftstatus för en tjänst, resurs eller annan enhet
crsctl config – visa automatisk startkonfiguration
crsctl debug – visa eller ändra felsökningstillstånd
crsctl delete – Ta bort en resurs, typ eller annan enhet
crsctl inaktivera – inaktivera automatisk start
crsctl discover – upptäck DHCP – server
crsctl aktivera – Aktivera automatisk start
crsctl eval-utvärdera operationer på resurs eller annan enhet utan att utföra dem
crsctl get – få ett entitetsvärde
crsctl getperm – få entitetsbehörigheter
crsctl lsmodules – lista felsökningsmoduler
crsctl modify – ändra en resurs, typ eller annan enhet
crsctl query – query service state
crsctl pin – gör leasing av angivna noder oföränderliga
crsctl flytta – flytta en resurs, server eller annan enhet
crsctl ersätt – ändra platsen för röstfiler
crsctl release – släpp ett DHCP-leasingavtal
crsctl-begäran – begär en DHCP – leasing eller en åtgärdsinmatningspunkt
crsctl setperm – ange entitetsbehörigheter
crsctl set – ange ett entitetsvärde
crsctl start – starta en resurs, server eller annan enhet
crsctl status – få status för en resurs eller annan enhet
crsctl stop – stop en resurs, server eller annan enhet
crsctl unpin – gör leasing av tidigare fästa noder muterbara
crsctl unset-unset ett entitetsvärde, återställer dess standard
jag har delat in dem i följande kategorier.
- crsctl för att starta / stoppa / aktivera / inaktivera
- crsctl start
- crsctl stopp
- crsctl aktivera
- crsctl inaktivera
- crsctl för att visa information om en resurs
- crsctl check
- crsctl config
- crsctl get
- crsctl getperm
- crsctl lsmodules
- crsctl query
- Crsctl status
- crsctl eval
- crsctl för att ändra en resouce
- crsctl Lägg till
- crsctl radera
- crsctl debug
- crsctl ändra
- crsctl set
- crsctl flytta
- crsctl ersätt
- crsctl setperm
- crsctl unset
- crsctl pin
- crsctl unpin
- crsctl release
- crsctl begäran
- crsctl upptäcka
Låt oss förstå en efter en
crsctl start Ger många alternativ
-
crsctl starta crs
crsctl start crs är inte klustermedveten. Vilket innebär att detta kommando kan användas för att starta clusterware stack på lokal nod endast.
hur man startar crs stack på lokal nod?
#crsctl starta crs
hur man startar crs i exklusivt läge?
#crsctl starta crs-exkl
du måste starta crs i exklusivt läge i följande situationer
- när klustret är nere och inte kan starta på grund av förlorade röstfiler.
- när röstfiler är skadade
- för att röstfilen ska återställas måste CRS-demonen köras.
Hur startar man crs i exklusivt läge och utan crs?
#crsctl start crs-exkl-nocrs #(introducerad från 11.2.0.2)
ovanstående kommando är roligt, starta crs med nocrs alternativ J
du måste starta i exklusivt läge utan crs i följande situationer
- när ocr är skadad och den är på ASM.
du kan inte återställa en manuell eller automatisk OCR-säkerhetskopia om OCR finns på en ASM-diskgrupp. Detta beror på att kommandot ’ocrconfig-restore’ kräver att ASM körs & för att återställa en OCR-säkerhetskopia till en ASM-diskgrupp. För att ASM ska vara tillgängligt måste dock CRS-stacken ha startats framgångsrikt. För att återställningen ska lyckas får OCR inte heller användas (r/w), dvs ingen CRS-Demon måste köras medan OCR återställs.
- alternativet-nocrs säkerställer att crsd-processerna och ocr inte börjar med resten av clusterware-stacken.
så här startar du bara ohasd utan att starta crs.
använd-noautostart
#crsctl starta crs-noautostart
följande alternativ används av grid internt under patchning/Uppgradering/Nedgradering
hur man startar crs i exklusivt läge och med cssonly?
#crsctl start crs-exkl-cssonly
-vänta alternativ
#crsctl starta crs-vänta
använd det här alternativet för att starta crs för att visa alla framsteg och statusmeddelanden. Det här alternativet används efter patching grid.
– nowait alternativ
#crsctl starta crs-nowait
crs väntar inte på att OHASD startar crs
-
crsctl start cluster
det är cluster aware. Vilket innebär att detta kommando kan starta resursen på andra noder också.
för alla cluster aware-kommandon som ska köras på lokal eller fjärrnod måste OHASD-demonen köras på den specifika noden.
så här startar du alla tjänster i ett kluster på alla noder
#crsctl start cluster-all
så här startar du endast tjänster på en viss nod
#crsctl start cluster – n node2, node3
följande kommando startar cluster ware stack endast på lokal nod. Så det liknar crsctl start crs
#crsctl start cluster
-
crsctl start resurs
vanligtvis används detta när du har egna applikationsspecifika resurser. Oracle varnar för att inte använda detta för resurser som börjar med ora.* Men du kan använda dem om det behövs.
hur man startar en viss resurs
#crsctl startresurs myAppVIP
#crsctl startresurs myApache
#crsctl startresurs ora.asm
hur man startar en viss resurstyp. Följande kommando startar alla resurser som tillhör scan_listener-typen
#crsctl start resource-w ”TYPE = ora.scan_listener.typ”
-
crsctl start rollingpatch
övergång Oracle Clusterware och Oracle ASM till rullande patch-läge
-
crsctl börja rollingupgrade <version>
övergång Oracle Clusterware och Oracle ASM till rullande uppgraderingsläge
crsctl stopp
-
crsctl stoppa crs
använd det här kommandot för att stoppa klusterstacken på lokal nod.
hur man stoppar clusterware stack?
#crsctl stop crs
observera ovanstående kommando stop databasresurs i Avbryt läge, vilket inte rekommenderas för PROD-databaser. Innan du kör det här kommandot försök stoppa databaser med srvctl stop kör sedan crsctl stop crs
detta kommando flyttar också vissa tjänster (vip, scan lyssnare etc) till tillgängliga noder.
hur man stoppar clusterware stack forecefully?
om du har svårt att stoppa resurser kan du använda –F-alternativet. Detta kommando kommer inte att kontrollera beroende mellan resurser. Rekommenderas att köra när du inte kan stoppa clusterware.
#crsctl stoppa crs-f
-
crsctl stop cluster
för att alla cluster aware-kommandon ska kunna köras på lokal eller fjärrnod måste OHASD-demonen köras på den specifika noden.
använd det här kommandot för att stoppa klusterstacken på valfri nod eller alla noder.
#crsctl stop cluster –all # detta kommer att stoppa cluster stack på alla noder
#crsctl stop cluster –n node2 # detta kommer att stoppa cluster stack endast på node2
crsctl stop crs vs crsctl stop cluster
- Skillnad en
crsctl stop crs -> kan stoppa endast lokala resurser
crsctl Stop cluster -> kan stoppa både lokala och fjärrnodtjänster
- skillnad två
tänk på ett fall där du har 4 nod Rac-inställning. På nod 1 och nod 2 har du underhåll så du måste starta om servrarna. När du kör crsctl stop crs på node1 kommer dess vip-och db-tjänster att övergå till node2. Sedan när du kör crsctl stop crs på node2 igen både node1 och node2 VIP kommer att misslyckas över till node3 eller node4
men om du använder crsctl stop cluster-n node1,node2 då misslyckas över tjänster kommer att vara på node3 och node4
- skillnad tre
crsctl stop crs stoppar alla tjänster inklusive ohas
crsctl Stop Cluster Stop allt utom ohas
crsctl Stop CRS vs crsctl Stop has
crsctl start/stop has används huvudsakligen för Oracle clusterware-resurser med en enda nod. (Oracle omstart)
crsctl start / stop crs används för enda nod av vanlig clusterware resurs (Oracle RAC)
-
crsctl stoppa resurs
vanligtvis används detta när du har egna applikationsspecifika resurser. Oracle varnar för att inte använda detta för att stoppa resurs vars namn börjar med ora.* Men du kan använda dem om det behövs.
hur man stoppar en viss resurs
#crsctl stoppa resurs myAppVIP
#crsctl stoppa resurs myApache
#crsctl stoppa resurs ora.asm
hur man stoppar en viss resurstyp. Följande kommando stoppar alla resurser som tillhör scan_listener-typen
#crsctl stoppa resurs-w ” TYPE = ora.scan_listener.typ”
-
crsctl stop rollingpatch
övergång Oracle Clusterware och Oracle ASM ur rullande patch läge
crsctl aktivera
innan vi diskuterar om kommandona, låt oss ha förståelse för kluster startar eller inte startar resurser automatiskt vid uppstart.
först när boot server i Oracle Linux 6 finns det ett koncept som heter upstart. Upstart (en funktion från EL6) är en händelsebaserad ersättning för /sbin/init-demonen som hanterar start av uppgifter och tjänster.
# initctl list # kommer att lista alla tjänster som kommer att startas när servern startar.
# initctl lista / grep ohasd
oracle-ohasd start / körning, process 4977
# ps-ef / grep 4977 / grep-v grep
rot 4977 1 0 Jan03 ? 00: 00: 00/bin /sh/etc / init.d / init.ohasd kör
vi vet alla att ohasd daemon (init.ohasd) startar / stoppar / övervakar crs-stacken. Så den här demonen övervakar för en fil på följande plats
/etc/oracle/scls_scr/<nodnamn>/root / ohasdrun
när vi kör crsctl aktivera crs, kommer detta kommando faktiskt skriva omstart i ovanstående fil. Som init.ohasd kontrollerar den här filen vid starttid, om den hittar omstart kommer den att starta resurser automatiskt.
när vi kör crsctl inaktivera crs, kommer detta kommando faktiskt skriva stopp i ovanstående fil. Som init.ohasd kontrollerar den här filen vid starttid, om den hittar stopp startar den inte resurser automatiskt när servern startar.
- så här aktiverar du automatisk start av OHAS på Oracle cluster
kommandot nedan möjliggör automatisk start av OHAS när servern startar.
#crsctl aktivera crs
- så här inaktiverar du automatisk start av OHAS på Oracle cluster
kommandot nedan inaktiverar automatisk start av OHAS när servern startar.
#crsctl inaktivera crs
detta är användbart när du använder firmware patchar, eller OS underhållsuppgifter som kräver många server omstart. Vi vill inte ofta starta / stoppa crs stack automatiskt under detta underhåll.